专栏名称: CloudMan
云计算深度实践者;定期发布《每天5分钟玩转OpenStack》教程;让 OpenStack 不再难学!
目录
相关文章推荐
中国基金报  ·  海通证券,告别A股! ·  17 小时前  
银行螺丝钉  ·  每日钉一下(A股的股票资产,波动风险有多大?) ·  19 小时前  
中国基金报  ·  王宝强回应:已经踩好点了,但不能说 ·  4 天前  
中国基金报  ·  突发!刚刚宣布:华为+DeepSeek来了! ·  4 天前  
51好读  ›  专栏  ›  CloudMan

用 Deployment 运行应用 - 每天5分钟玩转 Docker 容器技术(123)

CloudMan  · 公众号  ·  · 2018-01-24 06:19

正文

第123篇

用 Deployment 运行应用

从本章开始,我们将通过实践深入学习 Kubernetes 的各种特性。作为容器编排引擎,最重要也是最基本的功能当然是运行容器化应用,这就是本章的内容。

Deployment

前面我们已经了解到,Kubernetes 通过各种 Controller 来管理 Pod 的生命周期。为了满足不同业务场景,Kubernetes 开发了 Deployment、ReplicaSet、DaemonSet、StatefuleSet、Job 等多种 Controller。我们首先学习最常用的 Deployment。

先从例子开始,运行一个 Deployment:

kubectl run nginx-deployment --image=nginx:1.7.9 --replicas=2

上面的命令将部署包含两个副本的 Deployment nginx-deployment,容器的 image 为 nginx:1.7.9

下面详细分析 Kubernetes 都做了些什么工作。

kubectl get deployment 命令可以查看 nginx-deployment 的状态,输出显示两个副本正常运行。

接下来我们用 kubectl describe deployment 了解更详细的信息。

大部分内容都是自解释的,我们重点看最下面部分。这里告诉我们创建了一个 ReplicaSet nginx-deployment-1260880958Events 是 Deployment 的日志,记录了 ReplicaSet 的启动过程。

通过上面的分析,也验证了 Deployment 通过 ReplicaSet 来管理 Pod 的事实。接着我们将注意力切换到 nginx-deployment-1260880958,执行 kubectl describe replicaset

两个副本已经就绪,用 kubectl describe replicaset 查看详细信息:

Controlled By 指明此 ReplicaSet 是由 Deployment nginx-deployment 创建。Events 记录了两个副本 Pod 的创建。接着我们来看 Pod,执行 kubectl get pod

两个副本 Pod 都处于 Running 状态,用 kubectl describe pod 查看更详细的信息:

Controlled By 指明此 Pod 是由 ReplicaSet nginx-deployment-1260880958 创建。Events 记录了 Pod 的启动过程。如果操作失败(比如 image 不存在),也能在这里查看到原因。





请到「今天看啥」查看全文