【发布时间】:2018-06-15 09:26:51
【问题描述】:
在我的设置中,有一组最初构建为使用docker-compose 运行的容器。迁移到 Kubernetes 后,我面临以下挑战:
-
docker-compose设法提供某种类型的内部 DNS,允许容器通过其名称进行寻址。如何在 Kubernetes 中创建这样的网络?到目前为止我发现了什么:- 它们都可以是一个 pod 的一部分,因此通过 localhost 进行通信
- 它们都可以有一个带有匹配键值对和服务的通用标签,但是如何处理端口?
-
我需要向某个 NodePort 公开一个内部端口,因为它必须公开可用。这样的服务配置如何?到目前为止我发现了什么:
-
类似这样的:
apiVersion: v1 kind: Service metadata: labels: app: frontend name: frontend-nodeport spec: type: NodePort ports: - name: "3000-30001" port: 3000 nodePort: 30001 selector: app: frontend status: loadBalancer: {}`
-
【问题讨论】:
-
1- pod 的想法是运行多个相互依赖的容器,如果其中一个容器失败,则整个应用程序将失败,如果您的容器是这样的,则包含它们在同一个吊舱中。通信可以是本地主机或共享卷。 2-您可以创建 nodeport 服务,并且您将能够访问其中一个 Pod(带有标签),其中一个存在于您使用 clusterIP 与之通信的节点中,否则请求将被丢弃。将您的问题分开,并更具体地说明您需要什么
标签: kubernetes