19. WebOTX Operator for Kubernetes

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

19.1. Operator 設定項目

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

Operator 設定項目一覧
設定項目名 説明 設定値の範囲 既定値
LOG_LEVEL Operator で出力するログのレベルを設定します。 INFO, WARN, DEBUG, ERROR "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 日分)
METERING_ENABLED メータリング機能を有効にするかどうか設定します。 TRUE を設定した場合、WebOTX Server から収集したメトリックスを、/metrics (ポート番号:8989)で公開します。 TRUE, FALSE "TRUE"
METERING_INTERVAL WebOTX Server からメトリックスを収集する間隔(分)を設定します。 1〜60 "1"
METERING_TIMEOUT_SCRAPE メータリング機能が有効な場合に、WebOTX Server からメトリックスを収集する為のリクエストの最大時間(秒)を設定します。 1〜60 "10"
METERING_TIMEOUT_READ メータリング機能が有効な場合に、/metrics (ポート番号:8989) へのボディを含むリクエスト全体を読み取るための最大時間(秒)を設定します。 1〜60 "60"
METERING_TIMEOUT_WRITE メータリング機能が有効な場合に、/metrics (ポート番号:8989) へのリクエストに対するレスポンスの書き込みがタイムアウトするまでの最大時間(秒)を設定します。 1〜60 "30"

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

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

カスタムリソース設定項目一覧
設定項目名 説明 設定範囲 必須 既定値
spec
webotx WebOTX AS に関する項目を設定します。
application ユーザーアプリケーションに関する項目を設定します。 - - -
logs Logstash で、ユーザーアプリケーションのログファイルを収集したい場合に設定します。ただし、${INSTANCE_ROOT}/logs 配下に出力されたログのみが対象となります。 - - -
- <ログファイルのパス> Logstash で収集したいログファイルの絶対パスを設定します。
※複数のファイルを設定する場合、以下のように複数行に別けて設定します。
  logs:
    - <ログファイルのパス>
    - <ログファイルのパス>
- - -
envFrom ConfigMap または、Secret に設定された環境変数を WebOTX Server コンテナに登録したい場合に設定します。 - - -
configMaps 環境変数が設定された ConfigMap のリストを設定します。 - - -
- <ConfigMap 名> ConfigMap 名を設定します。
※複数の ConfigMap を設定する場合、以下のように複数行に別けて設定します。
  configMaps:
    - <ConfigMap 名>
    - <ConfigMap 名>
- - -
secrets 環境変数が設定された Secret のリストを設定します。 - - -
- <Secret 名> Secret名を設定します。
※複数の Secret を設定する場合、以下のように複数行に別けて設定します。
  secrets:
    - <Secret 名>
    - <Secret 名>
- - -
healthcheck ヘルスチェックに関する項目を設定します。
※Uber JAR のコンテナイメージを使用する場合のみ
- - -
port Uber JAR のコンテナイメージで出力するヘルスチェックのポート番号を設定します。 1〜65535 - 8443
scheme Uber JAR のコンテナイメージで出力するヘルスチェックのスキームを設定します。 http,https - https
jaeger MP-OpenTracing のトレーサー(Jaeger)設定に関する環境変数を設定します。 - - -
serviceName サービス名
環境変数名: JAEGER_SERVICE_NAME
- - -
agentHost エージェントが動作するホスト名
環境変数名: JAEGER_AGENT_HOST
- - -
agentPort エージェントが動作するUDPのポート番号
環境変数名: JAEGER_AGENT_PORT
- - -
endpoint コレクタに直接接続する場合のエンドポイントURL
環境変数名: JAEGER_ENDPOINT
- - -
authToken エンドポイントへのリクエストで、"Bearer"として送信する認証トークン
環境変数名: JAEGER_AUTH_TOKEN
- - -
authSecret エンドポイントへのリクエストに、Basic 認証を利用する場合のユーザ名とパスワード
環境変数名: JAEGER_USER、JAEGER_PASSWORD
- - -
name 認証情報を定義した Secret の名前を設定します。 - - -
propagation トレースコンテキストの伝搬に使うヘッダフォーマットのカンマ(,)区切りのリスト
環境変数名: JAEGER_PROPAGATION
jaeger, b3, w3c - -
reporterLogSpans レポーターがスパンのログを記録するかどうか
環境変数名: JAEGER_REPORTER_LOG_SPANS
- - -
reporterMaxQueueSize レポーターの最大キューサイズ
環境変数名: JAEGER_REPORTER_MAX_QUEUE_SIZE
- - -
reporterFlushInterval レポーターのフラッシュ間隔(ミリ秒)
環境変数名: JAEGER_REPORTER_FLUSH_INTERVAL
- - -
samplerType サンプラータイプ
環境変数名: JAEGER_SAMPLER_TYPE
const, probabilistic, ratelimiting, remote - -
samplerParam サンプラーパラメータ
環境変数名: JAEGER_SAMPLER_PARAM
- - -
samplerManagerHostPort リモートコントロールサンプラー使用時のホスト名とポート(<ホスト名>:<ポート番号>形式)
環境変数名: JAEGER_SAMPLER_MANAGER_HOST_PORT
- - -
tags スパンに追加される、名前=値の形式のカンマ(,)区切りのタグのリスト
環境変数名: JAEGER_TAGS
- - -
metering メータリング機能に関する項目を設定します。 - - -
enabled メータリング機能の収集対象とする場合は、true を設定します。 true, false false
port WebOTX Server コンテナメトリックスを公開するポート番号を設定します。 1〜65535 8443
scheme WebOTX Server コンテナメトリックスを公開するスキームを設定します。 http, https https
sessionReplication セッションレプリケーションに関する項目を設定します。 - - -
enabled セッションレプリケーション機能の有効・無効を設定します。 true, false false
useJmxAgent データグリッドをエージェントプロセスでロードするかどうかを設定します。 true, false false
useAllProcessGroups データグリッドをすべてのプロセスグループでロードするかどうかを設定します。 true, false false
fileMounts Configmap または Secret を利用したファイルマウントに関する項目を設定します。 - - -
configMaps ConfigMap を利用してファイルをマウントする場合に設定します。 - - -
name ConfigMap名を設定します。 - - -
key ConfigMap の data 部のキー名を設定します。 - - -
path コンテナ内に配置する絶対パスを設定します。 - - -
secrets Secret を利用してファイルをマウントする場合に設定します。 - - -
name Secret名を設定します。 - - -
key Secret の data 部のキー名を設定します。 - - -
path コンテナ内に配置する絶対パスを設定します。 - - -
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 - -
tls Elasticsearch への TLS 接続に関する項目を設定します。 - - -
enabled Elasticsearch への送信に TLS を使用するかどうかを設定します。 true, false - true
cacert TLS接続の証明書に関する項目を設定します。 - - -
secret Logstash に配置する CA 証明書を定義した Secret に関する項目を設定します。 - - -
name Secret 名を設定します。 - - -
key Secret のキー名を設定します。 - - -
verification TLS接続で証明書の検証を行うか設定します。 true, false - true
auth Elasticsearch への認証に関する項目を設定します。 - - -
enabled Elasticsearch への送信に認証を使用するかどうかを設定します。 true, false - true
secretName 認証用のユーザー名、パスワードを定義した Secret 名を設定します。 - - -
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 接続先のポート番号を設定します。 - - -
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 - -