这个有点理论性,但请耐心等待。
目前我有一个服务器运行几个 Docker 容器(4 个或 5 个,取决于日期和时间)。我计划添加另一个,就像第一个一样,甚至可能是第三个。
现在,我的问题是:我应该管理 15 个容器而不是 5 个,使用 Google Kubernetes 有什么好处吗?
此外,是否有“官方”或至少“确定性”的工作流程可以从 Docker 容器迁移到 Kubernetes 的本机单元“pods”。在你问之前,我确实知道 pod 是由容器组成的(有时甚至是一个)。我的主要问题是“dockerfiles”与 pod 配置完全不同。
有任何想法吗?
是时候我要管理 15 个容器而不是 5 个,使用 Google Kubernetes 有什么好处吗?
如果您使用Docker 守护程序在单个服务器上运行容器,它的远程 API听起来很合适。
如果您需要在多台服务器上运行容器,那么Kubernetes、Docker swarm、Fleet、Mesos和Geard等编排解决方案就会变得有用。
我的主要问题是“dockerfiles”与 pod 配置完全不同。
因为他们有不同的目的:
Dockerfile 指定如何从源树构建容器映像pod.yaml 定义如何在集群的一个节点上调度(图像、命令行、卷、端口)一组共存的容器(共享网络命名空间和卷)。您可以将 pod 视为声明性地指定一组docker run --net=container:... -v ... -p ...命令的一种方式。
此外,是否有“官方”或至少“确定性”的工作流程可以从 Docker 容器迁移到 Kubernetes 的本机单元“pods”。
kubernetes/contrib 中有一个名为podex的小工具,它允许您从存储在公共注册表中的图像元数据生成 pod 清单。
$ go get github.com/GoogleCloudPlatform/kubernetes/contrib/podex
$ podex google/nodejs-hello
id: nodejs-hello
kind: Pod
apiVersion: v1beta1
desiredState:
manifest:
version: v1beta2
containers:
- name: nodejs-hello
image: google/nodejs-hello
ports:
- name: nodejs-hello-tcp-8080
containerPort: 8080
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1135 次 |
| 最近记录: |