Kubernetes試食-3ReplicationController

3621 ワード

1.配置ファイルの作成


配置ファイルを作成します.
重要なのは、セレクタのapp値がlabelのapp値と一致しなければならないことです.
apiVersion: v1
kind: ReplicationController
metadata:
  name: http-go
spec:
  replicas: 3
  selector:
    app: http-go
  template:
    metadata:
      name: http-go
      labels:
        app: http-go
    spec:
      containers:
      - name: http-go
        image: gasbugs/http-go
        ports:
        - containerPort: 8080

2.導入と検証


配布後、ファイルの内容を確認します.
kubectl create-f<ファイル名>
kubectl get pod

3.ReplicationControlの検証


以下のコマンドでrcを確認できます.
kubectl get rc

4.pod削除時のrc動作


podを任意に削除すると、コピー数に基づいてpodが自動的に生成されます.
以下、podを任意に削除した場合、podの自動生成を確認できます.
kubectl get pod
kubectl delete pod
kubectl get pod

5.applabel変更時の動作


前述したように、selectとlabelのapp値は同じである必要があります.
すなわち,レプリカの個数をlabelのapp値と判断する.
app名を勝手に変更すると、新しいpodを追加した内容を以下のように確認できます.
kubectl label pod app=new-value --overwrite
kubectl get pod --show-labels

6. pod scale-out


以下のscaleコマンドでpodを簡単に追加できます.
kubectl scale rc --replicas=7

次のコマンドでyamlファイルを変更することもできます.
個人的にはあまりお勧めしたくない方法です.
kubectl edit rc
最後に、最初に配置したyamlファイルを変更する方法です.
kubectl apply -f