サンプル YAML ファイルを使用して、パーシステント データとともに Guestbook アプリケーションをデプロイします。
Redis リーダーの PVC
ファイル
redis-leader-pvc.yaml
は、指定したストレージ クラスを参照するパーシステント ボリュームの要求の例です。この例を使用するには、ストレージ クラスの名前を入力します。
kind: PersistentVolumeClaim apiVersion: v1 metadata: name: redis-leader-pvc spec: accessModes: - ReadWriteOnce storageClassName: tkgs-storage-class-name resources: requests: storage: 2Gi
Redis フォロワーの PVC
ファイル
redis-follower-pvc.yaml
は、指定したストレージ クラスを参照するパーシステント ボリュームの要求の例です。この例を使用するには、ストレージ クラスの名前を入力します。
kind: PersistentVolumeClaim apiVersion: v1 metadata: name: redis-follower-pvc spec: accessModes: - ReadWriteOnce storageClassName: tkgs-storage-class-name resources: requests: storage: 2Gi
Redis リーダーのデプロイ
ファイル
redis-leader-deployment.yaml
は、パーシステント ボリュームを使用した Redis リーダーのデプロイ例です。
apiVersion: apps/v1 kind: Deployment metadata: name: redis-leader-deployment spec: selector: matchLabels: app: redis role: leader tier: backend replicas: 1 template: metadata: labels: app: redis role: leader tier: backend spec: containers: - name: leader image: redis:6.0.5 resources: requests: cpu: 100m memory: 100Mi ports: - containerPort: 6379 volumeMounts: - name: redis-leader-data mountPath: /data volumes: - name: redis-leader-data persistentVolumeClaim: claimName: redis-leader-pvc
Redis フォロワーのデプロイ
ファイル
redis-follower-deployment.yaml
は、パーシステント ボリュームを使用した Redis フォロワーのデプロイ例です。
apiVersion: apps/v1 kind: Deployment metadata: name: redis-follower-deployment labels: app: redis spec: selector: matchLabels: app: redis role: follower tier: backend replicas: 1 template: metadata: labels: app: redis role: follower tier: backend spec: containers: - name: follower image: gcr.io/google_samples/gb-redis-follower:v2 resources: requests: cpu: 100m memory: 100Mi env: - name: GET_HOSTS_FROM value: dns ports: - containerPort: 6379 volumeMounts: - name: redis-follower-data mountPath: /data volumes: - name: redis-follower-data persistentVolumeClaim: claimName: redis-follower-pvc
Redis リーダーのサービス
ファイル
redis-leader-service.yaml
は、Redis リーダーのサービス例です。
apiVersion: v1 kind: Service metadata: name: redis-leader labels: app: redis role: leader tier: backend spec: ports: - port: 6379 targetPort: 6379 selector: app: redis role: leader tier: backend
Redis フォロワー サービス
ファイル
redis-follower-service.yaml
は、Redis フォロワーのサービス例です。
apiVersion: v1 kind: Service metadata: name: redis-follower labels: app: redis role: follower tier: backend spec: ports: - port: 6379 selector: app: redis role: follower tier: backend
Guestbook フロントエンドのデプロイ
ファイル
guestbook-frontend-deployment.yaml
は、Guestbook フロントエンドのデプロイ例です。
apiVersion: apps/v1 kind: Deployment metadata: name: guestbook-frontend-deployment spec: selector: matchLabels: app: guestbook tier: frontend replicas: 3 template: metadata: labels: app: guestbook tier: frontend spec: containers: - name: php-redis image: gcr.io/google_samples/gb-frontend:v5 resources: requests: cpu: 100m memory: 100Mi env: - name: GET_HOSTS_FROM value: dns ports: - containerPort: 80
Guestbook フロントエンド サービス
ファイル
guestbook-frontend-service.yaml
は、Guestbook フロントエンド ロード バランサ サービスの例です。
apiVersion: v1 kind: Service metadata: name: guestbook-frontend labels: app: guestbook tier: frontend spec: type: LoadBalancer ports: - port: 80 selector: app: guestbook tier: frontend