Black lives matter.
We stand in solidarity with the Black community.
Racism is unacceptable.
It conflicts with the core values of the Kubernetes project and our community does not tolerate it.
We stand in solidarity with the Black community.
Racism is unacceptable.
It conflicts with the core values of the Kubernetes project and our community does not tolerate it.
Kubernetes 应用程序通常由多个独立的服务组成,每个服务都在自己的容器中运行。 在远端的 Kubernetes 集群上开发和调试这些服务可能很麻烦,需要在运行的容器上打开 shell,然后在远端 shell 中运行您所需的工具。
telepresence
是一种工具,用于在本地轻松开发和调试服务,同时将服务代理到远程 Kubernetes 集群。
使用 telepresence
可以为本地服务使用自定义工具(如调试器和 IDE),并提供对 Configmap、Secrets 和远程集群上运行的服务的完全访问。
kubectl
与集群交互打开终端,不带参数运行 telepresence
,以打开 telepresence
shell。这个 shell 在本地运行,使您可以完全访问本地文件系统。
telepresence
shell 的使用方式多种多样。
例如,在你的笔记本电脑上写一个 shell 脚本,然后直接在 shell 中实时运行它。
您也可以在远端 shell 上执行此操作,但这样可能无法使用首选的代码编辑器,并且在容器终止时脚本将被删除。
在 Kubernetes 上开发应用程序时,通常对单个服务进行编程或调试。 服务可能需要访问其他服务以进行测试和调试。 一种选择是使用连续部署管道,但即使最快的部署管道也会在程序或调试周期中引入延迟。
使用 --swap-deployment
选项将现有部署与 Telepresence 代理交换。交换允许您在本地运行服务并能够连接到远端的 Kubernetes 集群。远端的集群中的服务现在就可以访问本地运行的实例。
到运行 telepresence 并带有 --swap-deployment
选项,请输入:
telepresence --swap-deployment $DEPLOYMENT_NAME
这里的 $DEPLOYMENT_NAME 是您现有的部署名称。
运行此命令将生成 shell。在 shell 中,启动您的服务。 然后,您就可以在本地对源代码进行编辑、保存并能看到更改立即生效。您还可以在调试器或任何其他本地开发工具中运行服务。
如果您对实践教程感兴趣,请查看本教程,其中介绍了在 Google Kubernetes Engine 上本地开发 Guestbook 应用程序。
Telepresence 有多种代理选项,以满足您的各种情况。
要了解更多信息,请访问 Telepresence 网站。