实际上,Kubernetes 扮演着编排器的角色,为在集群中的容器之间建立通信通道提供了足够的方式,并且默认使用 Docker 作为容器运行时。
容器代表映像的运行时环境,但是映像包含操作系统层和应用程序二进制文件,您可以在此处找到一个很好的解释。为了构建自己的映像,您可能会考虑两种方法来负担这一点:从Docker Hub中的现有映像创建映像或从Dockerfile组合映像。存储自定义映像可能是将其推送到 Docker Hub 存储库或代表一些选项通过部署注册服务器的私有隔离仓库。
当您准备好映像并计划在 Kubernetes 集群中实现应用程序时,是创建第一个微服务的好时机。尽管全球有大量关于 Kubernetes 集群及其运行时引擎架构的资料,但我将重点关注应用程序部署生命周期。
部署是定义如何在集群中实现 Pod 并为进一步的应用程序运行时工作流提供特定配置的主要机制。
Service描述了特定 Pod 如何与集群内的其他资源通信的方式,提供应用程序将响应的端点 IP 地址和端口。
在使用 Kubernetes Dashboard的一般场景中,使用的方法kubectl proxy
将通过主机和 Kubernetes API 之间的代理网关来暴露应用程序,这更像是出于测试目的而不是安全的,而Nodeport类型则带来了更方便的方式使应用程序可以在外部访问集群,如本堆栈线程中所述。
我鼓励您在 Kubernetes 官方文档中获得更多学习内容。