19. WebOTX Operator for Kubernetes

WebOTX Operator for Kubernetesに関する設定について説明します。 以降、WebOTX Operator for Kubernetes を Operator と表記します。

19.1. Operator 設定項目・設定方法

Operator の設定項目一覧を以下の表に示します。

Operator 設定項目一覧
設定項目名 説明 設定値の範囲 既定値
LOG_LEVEL Operator で出力するログのレベルを設定します。 ERROR、WARN、INFO、DEBUG INFO
LOG_ROTATION ログローテーション数を設定します。0 を設定した場合は、ローテーションは行われません。 整数値(0~999) 5
LOG_FILESIZE ログのファイルサイズを設定します。単位は、MB です。 整数値(1~10) 1
PPROF_ENABLED Operator のプロファイル情報を採取するための HTTP サーバを起動するかどうかを設定します。 既定値(FALSE)では、起動しません。 TRUE, FALSE FALSE
PPROF_INTERVAL Operator のプロファイル情報を採取する間隔(分)を設定します。 整数値(1~60) 10
PPROF_ROTATION 採取したプロファイルのローテーション数を設定します。 整数値(1~1440) 144
(1 日分)

Caution
LOG_LEVEL と PPROF_ENABLED の設定値は大文字に変換されて処理されます。 このため、誤った設定値を入力した場合にはログに設定値が大文字で出力されます。

19.2. カスタムリソース設定項目・設定方法

カスタムリソースの設定一覧について、以下の表に示します。

カスタムリソース設定項目一覧
設定項目名 説明 設定範囲 必須 既定値
spec
webotx WebOTX AS に関する項目を設定します。
sessionReplication セッションレプリケーションに関する項目を設定します。 - - -
enabled セッションレプリケーション機能の有効・無効を設定します。 true, false false
useJmxAgent データグリッドをエージェントプロセスでロードするかどうかを設定します。 true, false false
useAllProcessGroups データグリッドをすべてのプロセスグループでロードするかどうかを設定します。 true, false false
common マニフェスト定義に関する共通項目を設定します。 - - -
labels Deployment、Pod、Service に付与する Label、LabelSelector を設定します。 - - -
<key>:<value> 付加するラベルを Key-Value 形式で設定します。 
※複数設定が可能
- - -
deployment Deployment マニフェスト定義に関する項目を設定します。 - - -
replicas 配備する WebOTX Server の Pod の多重度を設定します。 1~2147483647 -
image WebOTX Server のコンテナイメージ名を指定します。 - -
imagePullPolicy WebOTX Server のコンテナイメージ取得に関するポリシーを設定します。 Always, Never, IfNotPresent - IfNotPresent
imagePullSecrets Docker プライベートレジストリからイメージ取得する場合に必要な認証情報を設定します。 - - -
name Secret 名を設定します。 - - -
hostName Pod のホスト名を設定します。 - - -
subDomain Pod のサブドメイン名を設定します。 - - -
annotations Pod に付与する annotation を設定します。 - - -
<key>:<value> 付加するアノテーションを Key-Value 形式で設定します。
※複数設定が可能
- - -
restartPolicy コンテナのプロセス停止時の動作を設定します。 Always, OnFailure, Never - Always
terminationGracePeriodSeconds Pod のシャットダウンプロセスが始まってから SIGKILL が送られるまでの時間(秒)を設定します。 0~2147483647 - 1800
serviceAccountName Pod を実行するサービスアカウント名をしますを設定します。 - - default
automountServiceAccountToken コンテナ内にサービスアカウントトークンをマウントするかどうかを設定します。 - - false
dns Pod の DNS を設定します。 - - -
dnsPolicy Pod の DNS 設定に関するポリシーを設定します。 ClusterFirst, ClusterFirstWithHostNet, Default, None - ClusterFirst
dnsConfig ユーザ-独自に定義した DNS を設定します。 ※dnsPolicy に None を設定した場合のみ - - -
nameservers DNS サーバに関する設定をします。 - - -
<IP アドレス> IPアドレスを設定します。 ※複数設定が可能 - - -
searches ドメイン名の補完に関する設定をします。 - - -
<ドメイン名を補完する名前> ドメイン名の省略時に補完する名前を設定します。
※複数設定が可能
- - -
options DNS 全体に影響するオプションを設定します。
※複数設定が可能
- - -
name オプションの項目名を設定します。 - - -
value オプションの設定値を設定します。 - - -
logstash Logstash の出力設定に関する項目を設定します。 - - -
elasticsearch 送信先の Elasticsearch に関する項目を設定します。 - - -
host Elasticsearch の IP アドレスを設定します。 - - -
port Elasticsearch のポート番号を設定します。 1~65535 - -
prometheus Prometheus のサービスディスカバリ用の Annotations に関する項目を設定します。 - - -
scrape Prometheus の監視対象とするかを設定します。 true, false - -
path Prometheus で監視する URL のパスを設定します。 - - -
port Prometheus で監視するポート番号を設定します。 1~65535 - -
resources リソース制限に関する項目を設定します。 - - -
webotx WebOTX AS コンテナのリソース要求・制限を設定します。 - - -
requests Pod の起動に要求するリソースを設定します。 - - -
cpu Pod が要求する CPU リソースの下限を設定します。 - - -
memory Pod が要求する メモリ リソースの下限を設定します。 - - -
limits Pod の起動に使用するリソースの制限を設定します。 - - -
cpu Pod が要求する CPU リソースの上限を設定します。 - - -
memory Pod が要求する メモリ リソースの上限を設定します。 - - -
logstash Logstash コンテナのリソース要求・制限を設定します。 - - -
requests Pod の起動に要求するリソースを設定します。 - - -
cpu Pod が要求する CPU リソースの下限を設定します。 - - -
memory Pod が要求する メモリ リソースの下限を設定します。 - - -
limits Pod の起動に使用するリソースの制限を設定します。 - - -
cpu Pod が要求する CPU リソースの上限を設定します。 - - -
memory Pod が要求する メモリ リソースの上限を設定します。 - - -
readinessProbe ReadinessProbe に関する項目を設定します。 - - -
webotx WebOTX AS コンテナの ReadinessProbe に関する項目を設定します。 - - -
initialDelaySeconds ヘルスチェック開始までの遅延秒数を設定します。 0~2147483647 - 30
periodSeconds ヘルスチェックの間隔を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 10 に変換されて登録されます。
- 60
timeoutSeconds タイムアウトまでの秒数を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 1 に変換されて登録されます。
- 5
successThreshold 成功と判断するまでのチェック回数を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 1 に変換されて登録されます。
- 1
failureThreshold 失敗と判断するまでのチェック回数を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 3 に変換されて登録されます。
- 6
exec コンテナ内で実行したコマンドの終了コードで判定する場合に設定します。 - - -
command 実行するコマンドを設定します。 - - -
<コマンド> コマンド文字列を設定します。 - - -
httpGet HTTP Get リクエストのステータスコードで判定する場合に設定します。 - - -
host 接続先のホスト名を設定します。 - - Pod の IP アドレス
path 接続先のリクエストのパスを設定します。 - - -
port 接続先のポート番号を設定します。 1~65535 - -
scheme 接続する際のスキームを指定します。 HTTP, HTTPS - HTTP
httpHeaders リクエストのHTTPヘッダを設定します。
※複数設定が可能
- - -
name HTTPヘッダの項目名を設定します。 - - -
value HTTPヘッダの値を設定します。 - - -
tcpSocket TCP のコネクションをオープンできるかどうかで判定する場合に設定します。 - - -
host 接続先のホスト名を設定します。 - - Pod の IP アドレス
port 接続先のポート番号を設定します。 - - -
livenessProbe LiveinessProbe に関する項目を設定します。 - - -
webotx WebOTX AS コンテナの LiveinessProbe に関する項目を設定します。 - - -
initialDelaySeconds ヘルスチェック開始までの遅延秒数を設定します。 0~2147483647 - -
periodSeconds ヘルスチェックの間隔を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 10 に変換されて登録されます。
- 60
timeoutSeconds タイムアウトまでの秒数を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 1 に変換されて登録されます。
- 5
successThreshold 成功と判断するまでのチェック回数を設定します。 1 - 1
failureThreshold 失敗と判断するまでのチェック回数を設定します。 0~2147483647
但し、0 を設定した場合、Kubernetes にて自動で 3 に変換されて登録されます。
- 6
exec コンテナ内で実行したコマンドの終了コードで判定する場合に設定します。 - - -
command 実行するコマンドを設定します。 - - -
<コマンド> コマンド文字列を設定します。 - - -
httpGet HTTP Get リクエストのステータスコードで判定する場合に設定します。 - - -
host 接続先のホスト名を設定します。 - - Pod の IP アドレス
path 接続先のリクエストのパスを設定します。 - - -
port 接続先のポート番号を設定します。 1~65535 - -
scheme 接続する際のスキームを指定します。 HTTP, HTTPS - HTTP
httpHeaders リクエストのHTTPヘッダを設定します。
※複数設定が可能
- - -
name HTTPヘッダの項目名を設定します。 - - -
value HTTPヘッダの値を設定します。 - - -
tcpSocket TCP のコネクションをオープンできるかどうかで判定する場合に設定します。 - - -
host 接続先のホスト名を設定します。 - - Pod の IP アドレス
port 接続先のポート番号を設定します。 - - -
envFrom ユーザー任意の環境変数を使用したい場合に設定します。 - - -
configMapName 環境変数を定義した ConfigMap 名を設定します。 - - -
nodeSelector Pod のスケジュールするノードを選択する条件を設定します。
※複数設定が可能
- - -
<key>:<value> 条件とするラベルを Key-Value 形式で設定します。 - - -
hostAliases コンテナ内の hosts ファイルに追加して、静的な名前解決を行う場合に設定します。
※複数設定が可能
- - -
ip IP アドレスを設定します。 - - -
hostname ホスト名のリストを設定します。 - - -
<ホスト名> - - -
strategy 配備中の Pod の更新に関する項目を設定します。 - - -
type Pod の更新方法を設定します。 Recreate, RollingUpdate - RollingUpdate
progressDeadlineSeconds Deployment の処理の最大処理時間を設定します。 1~2147483647 - 600
timeZone 配備するコンテナ内のタイムゾーンを設定します。 - - -
service Service マニフェスト定義に関する項目を設定します。 - - -
type 作成する Service のタイプを設定します。 ClusterIP, NodePort, LoadBalancer -
ports 公開するポートに関する項目を設定します。
※複数設定が可能
- -
name ポートの名前を設定します。 - - -
protocol ポートのプロトコルを設定します。 TCP, UDP, SCTP - -
targetPort 転送先のコンテナのポート番号を設定します。 0~65535
但し、0 を設定した場合、Kubernetes にて自動で port に設定された値に変換されて登録されます。
- -
port ClusterIP で待ち受けるポート番号を設定します。 1~65535 - -
nodePort CluserIP で待ち受けるポートにフォワードする Kubernetes ノードのポート番号を設定します。
※Type NodePort の場合のみ有効
30000~32767
※kubernetes の制限により 30000~32767 の範囲で設定する。
- -
sessionAffinity セッションアフィニティを維持するか設定します。 ClientIP, None - ClientIP
sessionAffinityConfig セッションアフィニティについて設定します。 - - -
clientIP クライアント IP ベースのセッションアフィニティについて設定します。
※sessionAffinity に ClientIP を設定した場合のみ
- - -
timeoutSeconds スティッキーセッションのタイムアウト時間を設定します。 1~86400 - -
externalIPs サービスのトラフィックを受け付ける Kubernetes ノードの IP アドレスのリストを設定します。
設定したノードで受信したトラフィックが ClusteerIP へ転送されます。
※type に ClusterIP を設定した場合のみ
- - -
<Kubernetes ノードの IP アドレス> Kubernetes ノードの IP アドレスを設定します。 - - -
loadBalancerIP Kubernetes クラスター外部からアクセスを受け付ける IP アドレスを設定します。
※type に LoadBalancer を設定した場合のみ
- - -
loadBalancerSourceRanges サービスへのアクセスを許可する接続元の IP アドレスのリストを設定します。
※type に LoadBalancer を設定した場合のみ
- - -
<アクセス元の IP ドレスの範囲> アクセスを許可する接続元の IP アドレスを設定します。
※複数設定が可能
- - -
externalTrafficPolicy ノードに到達したトラフィックを更に別のノードにロードバランシングするかどうかのポリシーを設定します。
※type に NodePort / LoadBalancer を設定した場合のみ
Cluster, Local - -