Kubernetes上にLog Managementをセットアップします。セットアップするために、事前にNFSサーバー上で共有フォルダの設定や、Kubernetesに必要なリソースを作成しておく必要があります。
NFSサーバーの共有フォルダ設定を行います。
NFSサーバーに作成する共有フォルダは以下の通りです。フォルダのパーミッションは“777”に設定します。
本製品により構築されるNFSサーバは、開発用途に使用が限定されますが、Log Managementの一時的な動作確認のために使用することができます。
本製品のNFSサーバーを使用する場合、「A.2 本製品のNFSサーバーでのLog Managementの利用」を参照してください。
Ansibleサーバにログインし、Kubernetesの設定(namespace、PersistentVolume、StorageClass)を行います。
ログイン方法は、「運用ガイド」の「共通の操作」-「SSL-VPNの接続による各サーバへのログイン」を参照してください。
namespaceを作成します。
Kubernetesに“fj-esdp-system”のnamespaceを作成します。(既に作成済みの場合は作成不要です)
# kubectl create namespace fj-esdp-system
StorageClassを作成します。
Kubernetesに以下のStorageClassを作成します。
設定項目の詳細については、Kubernetesの公式ドキュメントを参照してください。
「https://kubernetes.io/docs/concepts/storage/storage-classes/」
# cat << EOF > elasticsearch_sc.yml --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: namespace: fj-esdp-system name: fj-esdp-system-elasticsearch-sc annotations: storageclass.kubernetes.io/is-default-class: "false" labels: kubernetes.io/cluster-service: "true" provisioner: kubernetes.io/nfs --- apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: namespace: fj-esdp-system name: fj-esdp-system-elasticsnapshot-sc annotations: storageclass.kubernetes.io/is-default-class: "false" labels: kubernetes.io/cluster-service: "true" provisioner: kubernetes.io/nfs EOF # kubectl apply -f ./elasticsearch_sc.yml
PersistentVolumeを作成します。
Kubernetesに以下のPersistentVolumeを作成します。
<NFSサーバーのIPアドレス>には使用するNFSサーバーのIPアドレスを指定します。(本製品のNFSサーバーを使用する場合、172.16.2.30を指定します)
設定項目の詳細については、Kubernetesの公式ドキュメントを参照してください。
「https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistent-volumes」
# cat << EOF > elasticsearch_pv.yml --- apiVersion: v1 kind: PersistentVolume metadata: name: fj-esdp-system-elasticsearch-pv-0 annotations: volume.beta.kubernetes.io/storage-class: "fj-esdp-system-elasticsearch-sc" spec: capacity: storage: 30Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain mountOptions: - hard - nfsvers=4 nfs: server: <NFSサーバーのIPアドレス> path: /var/FJSGHD/fj-esdp-system-elasticsearch-volume-0/ --- apiVersion: v1 kind: PersistentVolume metadata: name: fj-esdp-system-elasticsearch-pv-1 annotations: volume.beta.kubernetes.io/storage-class: "fj-esdp-system-elasticsearch-sc" spec: capacity: storage: 30Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain mountOptions: - hard - nfsvers=4 nfs: server: <NFSサーバーのIPアドレス> path: /var/FJSGHD/fj-esdp-system-elasticsearch-volume-1/ --- apiVersion: v1 kind: PersistentVolume metadata: name: fj-esdp-system-elasticsearch-pv-2 annotations: volume.beta.kubernetes.io/storage-class: "fj-esdp-system-elasticsearch-sc" spec: capacity: storage: 30Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain mountOptions: - hard - nfsvers=4 nfs: server: <NFSサーバーのIPアドレス> path: /var/FJSGHD/fj-esdp-system-elasticsearch-volume-2/ --- apiVersion: v1 kind: PersistentVolume metadata: name: fj-esdp-system-elasticsnapshot-pv annotations: volume.beta.kubernetes.io/storage-class: "fj-esdp-system-elasticsnapshot-sc" spec: capacity: storage: 30Gi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Retain mountOptions: - hard - nfsvers=4 nfs: server: <NFSサーバーのIPアドレス> path: /var/FJSGHD/fj-esdp-system-elasticsnapshot-volume/ EOF # kubectl apply -f ./elasticsearch_pv.yml
Automation Managerコンテナにログインし、以下のコマンドでLog Managementをインストールします。
ログイン方法は、「2.1.3 Automation Managerコンテナへのログイン」を参照してください。
# cd /data/playbook # ansible-playbook -i ./inventories/<環境識別子>/hosts play_log_mng_k5_r3.yml # ansible-playbook -i ./inventories/<環境識別子>/hosts play_log_mng.yml
正常終了時は下記のようにunreachable=0, failed=0となります。ただし、XX、YYには任意の整数が記載されています。
********************************************************************* 127.0.0.1 : ok=XX changed=YY unreachable=0 failed=0