#分析
ポッド
まず、我々は、スケジューリングポッドの最小単位で始まります。
私K8Sがクラスタ現在、ポッドを持っている、その名はadmin-mysqlの-1d29997-5db458497c-h6rrsです
[root@k8s-master ~]# kubectl get pod admin-mysql-1d29997-5db458497c-h6rrs
NAME READY STATUS RESTARTS AGE
admin-mysql-1d29997-5db458497c-h6rrs 1/1 Running 0 5d23h
ポッドの詳細を見てください:
[root@k8s-master ~]# kubectl describe pod admin-mysql-1d29997-5db458497c-h6rrs
Name: admin-mysql-1d29997-5db458497c-h6rrs
Namespace: default
Priority: 0
PriorityClassName: <none>
Node: k8s-node1/192.168.0.247
Start Time: Fri, 01 Nov 2019 10:57:47 +0800
Labels: name=mysql
pod-template-hash=5db458497c
Annotations: <none>
Status: Running
IP: 10.244.1.72
Controlled By: ReplicaSet/admin-mysql-1d29997-5db458497c
Containers:
mysql57-container:
Container ID: docker://7e68cae8d4e9840ed908965252ae7aff8281ca81954ab0b5d58e053f5371bb5d
Image: mysql57:5.7
Image ID: docker://sha256:f6509bac49801f48628167728aba66d64533aaa7d384e03b75a8fe4e6c0f6599
Port: 3306/TCP
Host Port: 0/TCP
State: Running
Started: Fri, 01 Nov 2019 10:57:48 +0800
Ready: True
Restart Count: 0
Environment:
MYSQL_ROOT_PASSWORD: welcome1
Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from default-token-9rfpv (ro)
Conditions:
Type Status
Initialized True
Ready True
ContainersReady True
PodScheduled True
Volumes:
default-token-9rfpv:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-9rfpv
Optional: false
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events: <none>
[root@k8s-master ~]#
ここではあなたがそれを見ることができ、ポッドは、私たちは信じて、さらにreplicaSet管理の管理者-mysqlの-1d29997-5db458497cの名前であるRSは、1つの高いレベルのポッドを管理するために使用されるポッド成分よりもあります。RSはポッドのグループを管理します。
Controlled By: ReplicaSet/admin-mysql-1d29997-5db458497c
ReplicateSet(RS)
次に、我々はこのRSの詳細を見てみましょう
[root@k8s-master ~]# kubectl describe rs admin-mysql-1d29997-5db458497c
Name: admin-mysql-1d29997-5db458497c
Namespace: default
Selector: name=mysql,pod-template-hash=5db458497c
Labels: name=mysql
pod-template-hash=5db458497c
Annotations: deployment.kubernetes.io/desired-replicas: 1
deployment.kubernetes.io/max-replicas: 2
deployment.kubernetes.io/revision: 1
Controlled By: Deployment/admin-mysql-1d29997
Replicas: 1 current / 1 desired
Pods Status: 1 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
Labels: name=mysql
pod-template-hash=5db458497c
Containers:
mysql57-container:
Image: mysql57:5.7
Port: 3306/TCP
Host Port: 0/TCP
Environment:
MYSQL_ROOT_PASSWORD: welcome1
Mounts: <none>
Volumes: <none>
Events: <none>
[root@k8s-master ~]#
キー情報をつかめControlled By: Deployment/admin-mysql-1d29997
RSは、展開制御管理-のMySQL-1d29997このビューのための名前であり、展開RSは、RSを管理するための成分のレベルよりも高いです。
RSレベルでのイベントは、ポッド、作成するために、ポッド、削除ポッド上で動作しています
展開
次に、我々はDelpoymentを見てみましょう
[root@k8s-master ~]# kubectl describe deploy admin-mysql-1d29997
Name: admin-mysql-1d29997
Namespace: default
CreationTimestamp: Fri, 01 Nov 2019 10:57:46 +0800
Labels: name=mysql
Annotations: deployment.kubernetes.io/revision: 1
Selector: name=mysql
Replicas: 1 desired | 1 updated | 1 total | 1 available | 0 unavailable
StrategyType: RollingUpdate
MinReadySeconds: 0
RollingUpdateStrategy: 25% max unavailable, 25% max surge
Pod Template:
Labels: name=mysql
Containers:
mysql57-container:
Image: mysql57:5.7
Port: 3306/TCP
Host Port: 0/TCP
Environment:
MYSQL_ROOT_PASSWORD: welcome1
Mounts: <none>
Volumes: <none>
Conditions:
Type Status Reason
---- ------ ------
Available True MinimumReplicasAvailable
Progressing True NewReplicaSetAvailable
OldReplicaSets: <none>
NewReplicaSet: admin-mysql-1d29997-5db458497c (1/1 replicas created)
Events: <none>
[root@k8s-master ~]#
それはもはや、他の構成要素の制御下に、展開のレベルに見られない、と彼のステータスがAPIとして生成呼び出される変更することができます。私たちは、展開レベルでのイベントは、一般的に伸縮ポッドクラスターRSのサービス、ローリング・アップグレードサービス、または操作の作成を参照してください。
サービスは
最後に、ここにも量を理解し、実際には、それがこのセットでの安定した外部サービスの基盤にサービスを提供することです。