CentOS 7
Sponsored Link

Kubernetes : 永続ストレージを利用する
2015/12/21
 
Docker コンテナー単体利用時と同様、データの永続化には外部ストレージが必要になります。
 
例として、ホスト側の任意のディレクトリをマウントしてデータ保管領域とするシングルコンテナーの Pod を作成します。
前提となる環境や利用するコンテナイメージはこちらと同様です
[1] 管理ノード上で Pod を作成します。
[root@dlp ~]#
vi pod-webserver.yaml
apiVersion: v1
kind: Pod
metadata:
  name: httpd
spec:
  containers:
  - name: httpd
    image: web_server
    ports:
    - containerPort: 80
    volumeMounts:
    # 利用するボリューム (volumes で指定した名前)
    - name: httpd-storage
      # コンテナー内でのマウントポイント
      mountPath: /var/www/html
  volumes:
  # 任意の名前
  - name: httpd-storage
    hostPath:
      # ホスト側のデータ保管に利用するディレクトリ
      path: /var/docker/disk01

[root@dlp ~]#
kubectl create -f pod-webserver.yaml

pods/httpd
[root@dlp ~]#
kubectl get pods -o wide

NAME      READY     STATUS    RESTARTS   AGE       NODE
httpd     0/1       Running   0          8s        node01

[root@dlp ~]#
kubectl get pod httpd -o yaml | grep "podIP"

podIP: 172.16.89.7
[2] Pod が稼働するノードに移動して、指定したパスにテストファイルを作成し、動作確認します。
[root@node01 ~]#
echo "Persistent Storage" > /var/docker/disk01/index.html

[root@node01 ~]#
curl http://172.16.89.7/

Persistent Storage
 
Tweet