从 Docker 容器到 Google Kubernetes

dly*_*988 7 docker kubernetes

这个有点理论性,但请耐心等待。

目前我有一个服务器运行几个 Docker 容器(4 个或 5 个,取决于日期和时间)。我计划添加另一个,就像第一个一样,甚至可能是第三个。

现在,我的问题是:我应该管理 15 个容器而不是 5 个,使用 Google Kubernetes 有什么好处吗?

此外,是否有“官方”或至少“确定性”的工作流程可以从 Docker 容器迁移到 Kubernetes 的本机单元“pods”。在你问之前,我确实知道 pod 是由容器组成的(有时甚至是一个)。我的主要问题是“dockerfiles”与 pod 配置完全不同。

有任何想法吗?

pro*_*ppy 7

是时候我要管理 15 个容器而不是 5 个,使用 Google Kubernetes 有什么好处吗?

如果您使用Docker 守护程序在单个服务器上运行容器,它的远程 API听起来很合适。

如果您需要在多台服务器上运行容器,那么KubernetesDocker swarmFleetMesosGeard等编排解决方案就会变得有用。

我的主要问题是“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 次

最近记录:

10 年,6 月 前