6.4.15 Logstashの要件
このKubernetesアプリケーションは、HMP-PCTOとして提供します。次の表に示す要件を満たすように作成します。
|
項目 |
要件 |
|---|---|
|
ワークロードリソース |
Deploymentリソースとしてください。 |
|
ネームスペース |
任意の名称を指定できます。ただし、「6.4.9 Filebeatの要件」〜「6.4.15 Logstashの要件」では同一のネームスペースを指定してください。 |
|
ラベル |
|
|
アノテーション |
規定しません。 |
|
初期化コンテナ構成 |
Dependency-Checkerコンテナ(「5.3.9 Dependency-Checkerコンテナイメージ」を参照してください) |
|
コンテナ構成 |
Logstashコンテナ |
|
レプリカ数 |
規定しません。 |
|
再起動ポリシー |
コンテナ障害時は必ず再起動(オートヒーリング)してください(Kubernetesのデフォルト設定)。 |
|
アップデートストラテジー |
ローリングアップデートとしてください(Kubernetesのデフォルト設定)。 |
|
Podセキュリティコンテキスト |
規定しません。 |
|
アクセス制御 |
Podに対するロールベースアクセス制御(RBAC)で、次に示すとおり対象リソースへのアクセス許可を定義してください。 <デプロイ依存関係チェック機能用ロール>
上記アクセス許可を定義するためのKubernetesリソースはRoleリソース、RoleBindingリソース、ServiceAccountリソースを使用してください。 |
|
ServiceAccountリソースのトークンの自動マウント(automountServiceAccountTokenフィールド)を「有効(true)」にしてください(Kubernetesのデフォルト設定)。 |
|
|
Podの割り当てノードの制御 |
1つのノードに割り当てられるPod数は1つまでです(例として、ワーカーノード数「5」に対してレプリカ数「5」のとき、各ノードにPodが1つ起動します)。 |
|
永続化ボリューム |
規定しません。 |
|
Podライフサイクル設定 |
terminationGracePeriodSecondsを次のとおり設定してください。
|
- 注※1
-
V.R.Sは使用するLogstashのバージョンに合わせて読み替えてください。
- 注※2
-
V.R.Sは使用するHMP-PCTOのバージョンに合わせて読み替えてください。
コンテナごとの要件を次に示します。
|
項目 |
要件 |
|---|---|
|
コマンド |
次に示すコマンド引数(args)を設定します。
(エントリポイントはDependency-Checkerコンテナイメージで「HMP-PCTOのデプロイ依存関係チェックスクリプト(dependency_check.sh)」を設定済みです) |
|
ネットワーク設定 |
設定しません(デフォルト)。 |
|
コンフィグ設定 |
設定しません(デフォルト)。 |
|
コンテナセキュリティコンテキスト |
設定しません(デフォルト)。 |
|
コンテナライフサイクル設定 |
設定しません(デフォルト)。 |
|
CPU/メモリリソース制限 |
設定しません(デフォルト)。 |
|
項目 |
要件 |
|---|---|
|
コマンド |
設定しません(デフォルト)。 |
|
ネットワーク設定 |
デプロイしたノードのIPによるポートの公開は不要です。 Kubernetesクラスタ内で次のポートを公開してください(Serviceリソース)。
|
|
コンフィグ設定 |
規定しません。 |
|
コンテナセキュリティコンテキスト |
次のとおり設定します。
|
|
コンテナライフサイクル設定 |
|
|
CPU/メモリリソース制限 |
実稼働を通して、環境に合わせた設定を実施してください。 |
Helmチャートのディレクトリ/ファイル構成を次の表に示します。
|
ディレクトリ/ファイル |
説明 |
|
|---|---|---|
|
templates/ |
Helmチャートのtemplate配置用ディレクトリ |
|
|
configmap-config.yaml |
Logstashの起動と制御設定を定義したConfigMapオブジェクトのマニフェスト |
|
|
configmap-pipeline.yaml |
Logstashで受け付けるデータの入力・出力先に関する設定を定義したConfigMapオブジェクトのマニフェスト |
|
|
deployment.yaml |
Deploymentオブジェクトのマニフェスト |
|
|
service.yaml |
Serviceオブジェクトのマニフェスト |
|
|
serviceaccount.yaml |
ServiceAccountオブジェクトのマニフェスト |
|
|
Chart.yaml |
Chart.yaml |
|
|
values.yaml |
values.yaml |
|
|
values.schema.json |
values.yamlの設定値のバリデーション用ファイル |
|