BenjaminYang In solitude, where we are least alone

k8s的deployment应用

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

 

运行一个deployment

[root@k8s-master k8s]# kubectl run nginx-deployment --image=nginx:1.79 --replicas=2
kubectl run --generator=deployment/apps.v1beta1 is DEPRECATED and will be removed in a future version. Use kubectl create instead.
deployment.apps/nginx-deployment created

[root@k8s-master k8s]# kubectl get deployment
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
nginx-deployment 2 2 2 2 3m17s

[root@k8s-master k8s]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
nginx-deployment-5fd98dbf5f-w94g4 1/1 Running 0 3m55s 10.244.2.7 k8s-node1 <none>
nginx-deployment-5fd98dbf5f-x5jt5 1/1 Running 0 3m55s 10.244.1.7 k8s-node2 <none>

部署一个deployment名称叫 nginx-deployment    镜像是nginx:1.79  2个副本

 查看详细信息

通过kubectl describe  deployment   查看该deployment详细信息

这个对象  nginx-deployment-5fd98dbf5f   2个副本被创建了  来自deployment-controller

 

查看pod

发觉这两个pod的前缀都是 nginx-deployment-5fd98dbf5f  不同的是后面的5位随机数

 

查看pod的详细信息

 

 

 

通过查看pod的详细信息,可以看到 控制管理器是 replicasset,事件(Events)记录了 pod的创建过程,如果创建失败可以从事件中查找原因

 

创建过程

1、kubectl创建deployment

2、deployment创建Replcasset

3、根据Replicaset创建pod

命名方式

 

replicas的命名方式 :deployment名称+随机数

pod的命名方式:replicas名称+随机数

 

posted @ 2018-11-03 12:16  benjamin杨  阅读(9435)  评论(1编辑  收藏  举报