初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)StatfulSet編 パート2
背景
個人的にインフラの知識以上にこれからのアプリケーションが動く環境を作ってデプロイしたりしてこれからの知識を身に着けたい。そしてより一層、自分の知識のアップデートをしたいと思いました。
その中でこの本に出会い、これから少しずつやったことを残し、未来の自分への手紙としてもあり、見つめ直せればと思いました。
引用や参考と今回の自分の勉強用の書籍の紹介
技術評論社『Kubernetes実践入門』のサンプルコード
Kubernetes実践入門 プロダクションレディなコンテナ&アプリケーションの作り方
実際の学びについて
書籍を読みながら、章ごとに少しずつ進めていきたいと思います。
GitHub のソースコードも使いながら学んで行きたいと思います。
この章の勉強は本当に書籍の写経が主になるかもしれません・・・
勉強開始
- StatufulSet を使った MySQL を定義
- MySQL のデータ格納用に内部ストレージを割り当て ※いまここ
- 設定ファイルを Master、Slave 用に設定し配置
- バックアップ用に外部ストレージを割り当て
- Master-Slave 間でデータを同期
StatefulSet を使った MySQL を定義
mysql-sts.yaml
volumeMounts: # (a)
- name: data
mountPath: /var/lib/mysql
volumeClaimTemplates: # (b)
- metadata:
name: data # (c)
spec: # (d)
accessModes: ["ReadWriteOnce"]
resources:
requests:
storage: 1Gi
- a について
- Pod 内のマウント先として /var/lib/mysql ディレクトリを指定し、マウント先に data という名前を設定します
- b について
- Pod が作成されるたびに呼び出される設定定義
- c について
-
volumeMounts.name と metadata.name を指定することでマウントが設定される
- d について
- PersistentVolumeClaim に定義する要求仕様を定義します
マニュフェスト適用確認
$ kubectl get persistentvolumeclaims
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
backup-mysql Bound backup 10Gi RWX nfs 15h
data-mysql-0 Bound pvc-1fd52e17-ac26-486f-86b0-839a6e941e9d 1Gi RWO hostpath 22h
data-mysql-1 Bound pvc-9588fc93-4147-4eda-aafa-2ba890e7776b 1Gi RWO hostpath 15h
$ kubectl get persistentvolume
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
backup 10Gi RWX Retain Bound default/backup-mysql nfs 15h
pvc-1fd52e17-ac26-486f-86b0-839a6e941e9d 1Gi RWO Delete Bound default/data-mysql-0 hostpath 22h
pvc-9588fc93-4147-4eda-aafa-2ba890e7776b 1Gi RWO Delete Bound default/data-mysql-1 hostpath 15h
$ kubectl get storageclasses
NAME PROVISIONER AGE
hostpath (default) docker.io/hostpath 36h
次は 3.7.5 章をやっていきます。
- StatufulSet を使った MySQL を定義
- MySQL のデータ格納用に内部ストレージを割り当て
- 設定ファイルを Master、Slave 用に設定し配置 ※次回
- バックアップ用に外部ストレージを割り当て
- Master-Slave 間でデータを同期
最後に
volumeMounts: # (a)
- name: data
mountPath: /var/lib/mysql
volumeClaimTemplates: # (b)
- metadata:
name: data # (c)
spec: # (d)
accessModes: ["ReadWriteOnce"]
resources:
requests:
storage: 1Gi
- Pod 内のマウント先として /var/lib/mysql ディレクトリを指定し、マウント先に data という名前を設定します
- Pod が作成されるたびに呼び出される設定定義
- volumeMounts.name と metadata.name を指定することでマウントが設定される
- PersistentVolumeClaim に定義する要求仕様を定義します
$ kubectl get persistentvolumeclaims
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
backup-mysql Bound backup 10Gi RWX nfs 15h
data-mysql-0 Bound pvc-1fd52e17-ac26-486f-86b0-839a6e941e9d 1Gi RWO hostpath 22h
data-mysql-1 Bound pvc-9588fc93-4147-4eda-aafa-2ba890e7776b 1Gi RWO hostpath 15h
$ kubectl get persistentvolume
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
backup 10Gi RWX Retain Bound default/backup-mysql nfs 15h
pvc-1fd52e17-ac26-486f-86b0-839a6e941e9d 1Gi RWO Delete Bound default/data-mysql-0 hostpath 22h
pvc-9588fc93-4147-4eda-aafa-2ba890e7776b 1Gi RWO Delete Bound default/data-mysql-1 hostpath 15h
$ kubectl get storageclasses
NAME PROVISIONER AGE
hostpath (default) docker.io/hostpath 36h
今回はコマンド自体もうまく通って結果を見ることができたと思います。
今までの投稿
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)Pod編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)NameSpace 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)Label 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)ReplicaSet 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)Deployment 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)Service 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)ConfigMap 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)Secret 編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)操作編
-
初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)体感編
-
初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)体感編パート2
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)体感編パート3(Label操作)
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)体感編パート3(OwnerReference 操作)
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)マニュフェスト編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)マニュフェスト(ConfigMap)編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)通信編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)通信編 パート2
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)通信編 パート3
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)通信編 パート4
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)公開編パート1(NodePort)
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)公開編パート2(LoadBalancer)
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)公開編パート3(Ingress)
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)外部ストレージ編
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)外部ストレージ編パート2
- 初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)StatefulSet編
Author And Source
この問題について(初心者のKubernetes入門(書籍 Kubernetes 実践入門の写経から学ぶ)StatfulSet編 パート2), 我々は、より多くの情報をここで見つけました https://qiita.com/nodokaodayaka/items/bac0fa82f390b315f411著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .