APIリファレンス (v2beta1)
パッケージ
apps.emqx.io/v2beta1
Package v2beta1 は apps v2beta1 APIグループのAPIスキーマ定義を含みます
リソースタイプ
BootstrapAPIKey
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
key string | パターン: ^[a-zA-Z\d-_]+$ | ||
secret string | 最大長: 128 最小長: 3 | ||
secretRef SecretRef |
Config
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
mode string | Merge | 列挙: [Merge Replace] | |
data string | EMQX設定、HOCON形式、etc/emqx.confファイルのような形式 |
EMQX
EMQXはemqxes APIのスキーマです
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | EMQX | ||
metadata ObjectMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
spec EMQXSpec | Specはこのセット内のEMQXノードの望ましい識別情報を定義します。 | ||
status EMQXStatus | StatusはEMQXノードの現在の状態です。このデータは一定の遅延を含む可能性があります。 |
EMQXCoreTemplate
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
metadata ObjectMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
spec EMQXCoreTemplateSpec | EMQXコアノードの望ましい動作の仕様。 詳細: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
EMQXCoreTemplateSpec
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
nodeSelector object (keys:string, values:string) | NodeSelectorはポッドがノードに適合するために真でなければならないセレクターです。ポッドがそのノードにスケジュールされるためにノードのラベルと一致する必要があります。 詳細: https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/ | ||
nodeName string | NodeNameはこのポッドを特定のノードにスケジュールするリクエストです。空でなければ、スケジューラーはリソース要件に適合すると仮定して単純にこのポッドをそのノードにスケジュールします。 | ||
affinity Affinity | ポッド割り当てのためのアフィニティ 参照: https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/ | ||
toleRations Toleration array | 指定された場合、ポッドのトレランスです。 このTolerationが付与されたポッドは、<key,value,effect>の組み合わせにマッチする任意のテイントをマッチングオペレーターを使って許容します。 TODO: 将来的には tolerationsを使うべきで、このフィールドは旧バージョンとの互換性のためだけに存在し、将来削除されます。 | ||
tolerations Toleration array | 指定された場合、ポッドのトレランスです。 このTolerationが付与されたポッドは、<key,value,effect>の組み合わせにマッチする任意のテイントをマッチングオペレーターを使って許容します。 | ||
topologySpreadConstraints TopologySpreadConstraint array | // TopologySpreadConstraintは指定されたトポロジー間でマッチするポッドをどのように分散させるかを指定します。 | ||
replicas integer | Replicasは指定されたテンプレートの望ましいレプリカ数です。 これらは同じテンプレートのインスタンスとしてのレプリカですが、個々のレプリカは一貫した識別を持ちます。 デフォルトは2です。 | 2 | |
minAvailable IntOrString | "selector"で選択された少なくとも"minAvailable"ポッドが退去後も利用可能であれば退去が許可されます。 例えば、すべての任意退去を防ぐには"100%"を指定します。 | XIntOrString: {} | |
maxUnavailable IntOrString | "selector"で選択されたポッドのうち、退去後に最大で"maxUnavailable"ポッドが利用不可であれば退去が許可されます。 例えば、すべての任意退去を防ぐには0を指定します。これは"minAvailable"と相互排他的な設定です。 | XIntOrString: {} | |
command string array | エントリポイントの配列。シェル内で実行されません。 指定しない場合はコンテナイメージのENTRYPOINTが使用されます。 変数参照 詳細: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
args string array | エントリポイントへの引数。 指定しない場合はコンテナイメージのCMDが使用されます。 変数参照 詳細: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
ports ContainerPort array | コンテナから公開するポートのリスト。ここでポートを公開すると、システムにコンテナのネットワーク接続に関する追加情報を提供しますが、主に情報目的です。ここでポートを指定しなくても、そのポートの公開は妨げられません。コンテナ内のデフォルトの"0.0.0.0"アドレスでリッスンしている任意のポートはネットワークからアクセス可能です。 更新不可。 | ||
env EnvVar array | コンテナ内に設定する環境変数のリスト。 更新不可。 | ||
envFrom EnvFromSource array | コンテナ内の環境変数を設定するためのソースのリスト。 ソース内のキーはC_IDENTIFIERでなければなりません。無効なキーはコンテナ起動時にイベントとして報告されます。複数のソースに同じキーが存在する場合、最後のソースの値が優先されます。 重複キーのEnvで定義された値が優先されます。 更新不可。 | ||
resources ResourceRequirements | このコンテナに必要な計算リソース。 更新不可。 詳細: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | ||
podSecurityContext PodSecurityContext | SecurityContextはポッドレベルのセキュリティ属性と共通のコンテナ設定を保持します。 | { fsGroup:1000 fsGroupChangePolicy:Always runAsGroup:1000 runAsUser:1000 supplementalGroups:[1000] } | |
containerSecurityContext SecurityContext | SecurityContextはコンテナの実行に使用されるセキュリティオプションを定義します。 設定されている場合、SecurityContextのフィールドはPodSecurityContextの同等フィールドを上書きします。 詳細: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ | { runAsGroup:1000 runAsNonRoot:true runAsUser:1000 } | |
initContainers Container array | ポッドに属する初期化コンテナのリスト。 初期化コンテナはコンテナ起動前に順番に実行されます。いずれかの初期化コンテナが失敗するとポッドは失敗とみなされ、restartPolicyに従って処理されます。初期化コンテナまたは通常コンテナの名前はすべてのコンテナ間で一意でなければなりません。 初期化コンテナはLifecycleアクション、Readinessプローブ、Livenessプローブ、Startupプローブを持てません。 初期化コンテナのresourceRequirementsはスケジューリング時に考慮され、各リソースタイプの最大要求/制限値を見つけ、それと通常コンテナの合計の最大値を使用します。制限も同様に適用されます。 初期化コンテナは現在追加・削除できません。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ | ||
extraContainers Container array | ExtraContainersはポッドに追加される追加コンテナを表します。 詳細: https://github.com/emqx/emqx-operator/issues/252 | ||
extraVolumes Volume array | 詳細: https://github.com/emqx/emqx-operator/pull/72 | ||
extraVolumeMounts VolumeMount array | 詳細: https://github.com/emqx/emqx-operator/pull/72 | ||
livenessProbe Probe | コンテナの生存性を定期的にチェックします。 プローブが失敗するとコンテナは再起動されます。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:3 httpGet:map[path:/status port:dashboard] initialDelaySeconds:60 periodSeconds:30 } | |
readinessProbe Probe | コンテナのサービス準備状態を定期的にチェックします。 プローブが失敗するとコンテナはサービスエンドポイントから除外されます。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:12 httpGet:map[path:/status port:dashboard] initialDelaySeconds:10 periodSeconds:5 } | |
startupProbe Probe | StartupProbeはポッドが正常に初期化されたことを示します。 指定された場合、これが成功するまで他のプローブは実行されません。 このプローブが失敗すると、livenessProbeが失敗した場合と同様にポッドは再起動されます。 これはポッドのライフサイクル開始時に異なるプローブパラメータを提供するために使用でき、データのロードやキャッシュのウォームアップに時間がかかる場合に有効です。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | ||
lifecycle Lifecycle | コンテナのライフサイクルイベントに応じて管理システムが取るべきアクション。 更新不可。 | ||
volumeClaimTemplates PersistentVolumeClaimSpec | このフィールドはVolumeClaimTemplatesと名付けられていますが、実際にはPersistentVolumeClaimSpecです。名前が悪くて申し訳ありません。 PersistentVolumeClaimSpecはストレージデバイスの共通属性を記述し、プロバイダー固有の属性のためのソースを許可します。 EMQXReplicantTemplateSpecよりも多くの情報を含みます。 |
EMQXList
EMQXListはEMQXのリストを含みます
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | EMQXList | ||
metadata ListMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
items EMQX array |
EMQXNode
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
controllerUID UID | |||
podUID UID | |||
node string | EMQXノード名、例: emqx@127.0.0.1 | ||
node_status string | EMQXノードの状態、例: Running | ||
otp_release string | EMQXで使用されるErlang/OTPのバージョン、例: 24.2/12.2 | ||
version string | EMQXのバージョン | ||
role string | EMQXクラスターのノード役割、列挙: "core" "replicant" | ||
edition string | EMQXクラスターのノードエディション、列挙: "Opensource" "Enterprise" | ||
connections integer | EMQXのAPI /api/v5/nodes におけるconnectionsフィールドはMQTTセッション数を意味します。 | ||
live_connections integer | EMQXのAPI /api/v5/nodes におけるlive_connectionsフィールドは接続中のMQTTクライアント数を意味します。live_connectionsはEMQX 5.1以降でのみ機能します。 |
EMQXNodesStatus
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
replicas integer | |||
readyReplicas integer | |||
currentRevision string | |||
currentReplicas integer | |||
updateRevision string | |||
updateReplicas integer | |||
collisionCount integer |
EMQXReplicantTemplate
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
metadata ObjectMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
spec EMQXReplicantTemplateSpec | EMQXレプリカントノードの望ましい動作の仕様。 詳細: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status Controller toolsは複雑なバリデーション(oneOf/anyOf/allOf/etc)をサポートしていないため、バリデーションルールを使用してください。 https://github.com/kubernetes-sigs/controller-tools/issues/461#issuecomment-1982741599 |
EMQXReplicantTemplateSpec
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
nodeSelector object (keys:string, values:string) | NodeSelectorはポッドがノードに適合するために真でなければならないセレクターです。ポッドがそのノードにスケジュールされるためにノードのラベルと一致する必要があります。 詳細: https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes/ | ||
nodeName string | NodeNameはこのポッドを特定のノードにスケジュールするリクエストです。空でなければ、スケジューラーはリソース要件に適合すると仮定して単純にこのポッドをそのノードにスケジュールします。 | ||
affinity Affinity | ポッド割り当てのためのアフィニティ 参照: https://kubernetes.io/docs/tasks/configure-pod-container/assign-pods-nodes-using-node-affinity/ | ||
toleRations Toleration array | 指定された場合、ポッドのトレランスです。 このTolerationが付与されたポッドは、<key,value,effect>の組み合わせにマッチする任意のテイントをマッチングオペレーターを使って許容します。 TODO: 将来的には tolerationsを使うべきで、このフィールドは旧バージョンとの互換性のためだけに存在し、将来削除されます。 | ||
tolerations Toleration array | 指定された場合、ポッドのトレランスです。 このTolerationが付与されたポッドは、<key,value,effect>の組み合わせにマッチする任意のテイントをマッチングオペレーターを使って許容します。 | ||
topologySpreadConstraints TopologySpreadConstraint array | // TopologySpreadConstraintは指定されたトポロジー間でマッチするポッドをどのように分散させるかを指定します。 | ||
replicas integer | Replicasは指定されたテンプレートの望ましいレプリカ数です。 これらは同じテンプレートのインスタンスとしてのレプリカですが、個々のレプリカは一貫した識別を持ちます。 デフォルトは2です。 | 2 | |
minAvailable IntOrString | "selector"で選択された少なくとも"minAvailable"ポッドが退去後も利用可能であれば退去が許可されます。 例えば、すべての任意退去を防ぐには"100%"を指定します。 | XIntOrString: {} | |
maxUnavailable IntOrString | "selector"で選択されたポッドのうち、退去後に最大で"maxUnavailable"ポッドが利用不可であれば退去が許可されます。 例えば、すべての任意退去を防ぐには0を指定します。これは"minAvailable"と相互排他的な設定です。 | XIntOrString: {} | |
command string array | エントリポイントの配列。シェル内で実行されません。 指定しない場合はコンテナイメージのENTRYPOINTが使用されます。 変数参照 詳細: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
args string array | エントリポイントへの引数。 指定しない場合はコンテナイメージのCMDが使用されます。 変数参照 詳細: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell | ||
ports ContainerPort array | コンテナから公開するポートのリスト。ここでポートを公開すると、システムにコンテナのネットワーク接続に関する追加情報を提供しますが、主に情報目的です。ここでポートを指定しなくても、そのポートの公開は妨げられません。コンテナ内のデフォルトの"0.0.0.0"アドレスでリッスンしている任意のポートはネットワークからアクセス可能です。 更新不可。 | ||
env EnvVar array | コンテナ内に設定する環境変数のリスト。 更新不可。 | ||
envFrom EnvFromSource array | コンテナ内の環境変数を設定するためのソースのリスト。 ソース内のキーはC_IDENTIFIERでなければなりません。無効なキーはコンテナ起動時にイベントとして報告されます。複数のソースに同じキーが存在する場合、最後のソースの値が優先されます。 重複キーのEnvで定義された値が優先されます。 更新不可。 | ||
resources ResourceRequirements | このコンテナに必要な計算リソース。 更新不可。 詳細: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ | ||
podSecurityContext PodSecurityContext | SecurityContextはポッドレベルのセキュリティ属性と共通のコンテナ設定を保持します。 | { fsGroup:1000 fsGroupChangePolicy:Always runAsGroup:1000 runAsUser:1000 supplementalGroups:[1000] } | |
containerSecurityContext SecurityContext | SecurityContextはコンテナの実行に使用されるセキュリティオプションを定義します。 設定されている場合、SecurityContextのフィールドはPodSecurityContextの同等フィールドを上書きします。 詳細: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ | { runAsGroup:1000 runAsNonRoot:true runAsUser:1000 } | |
initContainers Container array | ポッドに属する初期化コンテナのリスト。 初期化コンテナはコンテナ起動前に順番に実行されます。いずれかの初期化コンテナが失敗するとポッドは失敗とみなされ、restartPolicyに従って処理されます。初期化コンテナまたは通常コンテナの名前はすべてのコンテナ間で一意でなければなりません。 初期化コンテナはLifecycleアクション、Readinessプローブ、Livenessプローブ、Startupプローブを持てません。 初期化コンテナのresourceRequirementsはスケジューリング時に考慮され、各リソースタイプの最大要求/制限値を見つけ、それと通常コンテナの合計の最大値を使用します。制限も同様に適用されます。 初期化コンテナは現在追加・削除できません。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ | ||
extraContainers Container array | ExtraContainersはポッドに追加される追加コンテナを表します。 詳細: https://github.com/emqx/emqx-operator/issues/252 | ||
extraVolumes Volume array | 詳細: https://github.com/emqx/emqx-operator/pull/72 | ||
extraVolumeMounts VolumeMount array | 詳細: https://github.com/emqx/emqx-operator/pull/72 | ||
livenessProbe Probe | コンテナの生存性を定期的にチェックします。 プローブが失敗するとコンテナは再起動されます。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:3 httpGet:map[path:/status port:dashboard] initialDelaySeconds:60 periodSeconds:30 } | |
readinessProbe Probe | コンテナのサービス準備状態を定期的にチェックします。 プローブが失敗するとコンテナはサービスエンドポイントから除外されます。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | { failureThreshold:12 httpGet:map[path:/status port:dashboard] initialDelaySeconds:10 periodSeconds:5 } | |
startupProbe Probe | StartupProbeはポッドが正常に初期化されたことを示します。 指定された場合、これが成功するまで他のプローブは実行されません。 このプローブが失敗すると、livenessProbeが失敗した場合と同様にポッドは再起動されます。 これはポッドのライフサイクル開始時に異なるプローブパラメータを提供するために使用でき、データのロードやキャッシュのウォームアップに時間がかかる場合に有効です。 更新不可。 詳細: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes | ||
lifecycle Lifecycle | コンテナのライフサイクルイベントに応じて管理システムが取るべきアクション。 更新不可。 |
EMQXSpec
EMQXSpecはEMQXの望ましい状態を定義します
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
image string | EMQXイメージ名。 詳細: https://kubernetes.io/docs/concepts/containers/images | ||
imagePullPolicy PullPolicy | イメージプルポリシー。 Always, Never, IfNotPresentのいずれか。 :latestタグが指定されている場合はデフォルトでAlways、それ以外はIfNotPresent。 更新不可。 詳細: https://kubernetes.io/docs/concepts/containers/images#updating-images | ||
imagePullSecrets LocalObjectReference array | ImagePullSecretsはこのPodSpecで使用されるイメージをプルするために同じネームスペース内のシークレットへの参照の任意リストです。 指定された場合、これらのシークレットは個々のプラー実装に渡されます。 詳細: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod | ||
serviceAccountName string | サービスアカウント名 ReplicaSetまたはStatefulSetを指定されたサービスアカウントに関連付けて認証に使用します。 詳細: https://kubernetes.io/docs/concepts/security/service-accounts | ||
bootstrapAPIKeys BootstrapAPIKey array | EMQXブートストラップユーザー 更新不可。 | ||
config Config | EMQX設定 | ||
clusterDomain string | cluster.local | ||
revisionHistoryLimit integer | ロールバックを可能にするために保持する古いReplicaSet、古いStatefulSet、古いPersistentVolumeClaimの数。 明示的なゼロと未指定を区別するためのポインター。 デフォルトは3。 | 3 | |
updateStrategy UpdateStrategy | UpdateStrategyはEMQXのブルーグリーンアップデート戦略を記述するオブジェクトです | { evacuationStrategy:map[connEvictRate:1000 sessEvictRate:1000 waitTakeover:10] initialDelaySeconds:10 type:Recreate } | |
coreTemplate EMQXCoreTemplate | CoreTemplateは作成されるEMQXコアノードを記述するオブジェクトです | { spec:map[replicas:1] } | |
replicantTemplate EMQXReplicantTemplate | ReplicantTemplateは作成されるEMQXレプリカントノードを記述するオブジェクトです | ||
dashboardServiceTemplate ServiceTemplate | DashboardServiceTemplateは作成されるEMQXダッシュボードサービスを記述するオブジェクトです このサービスは常にEMQXコアノードをセレクトします | ||
listenersServiceTemplate ServiceTemplate | ListenersServiceTemplateは作成されるEMQXリスナーサービスを記述するオブジェクトです EMQXレプリカントノードが存在する場合、このサービスはEMQXレプリカントノードをセレクトします 存在しない場合はEMQXコアノードをセレクトします |
EMQXStatus
EMQXStatusはEMQXの観測された状態を定義します
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
conditions Condition array | EMQXカスタムリソースの現在の状態に関する最新の観測結果を表します。 | ||
coreNodes EMQXNode array | |||
coreNodesStatus EMQXNodesStatus | |||
replicantNodes EMQXNode array | |||
replicantNodesStatus EMQXNodesStatus | |||
nodeEvacuationsStatus NodeEvacuationStatus array |
EvacuationStrategy
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
waitTakeover integer | 最小値: 0 | ||
connEvictRate integer | EMQX Enterpriseでのみ有効です。 | 1000 | 最小値: 1 |
sessEvictRate integer | EMQX Enterpriseでのみ有効です。 | 1000 | 最小値: 1 |
KeyRef
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
secretName string | |||
secretKey string | パターン: ^[a-zA-Z\d-_]+$ |
NodeEvacuationStats
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
initial_sessions integer | |||
initial_connected integer | |||
current_sessions integer | |||
current_connected integer |
NodeEvacuationStatus
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
node string | |||
stats NodeEvacuationStats | |||
state string | |||
session_recipients string array | |||
session_goal integer | |||
session_eviction_rate integer | |||
connection_goal integer | |||
connection_eviction_rate integer |
Rebalance
Rebalanceはrebalances APIのスキーマです
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | Rebalance | ||
metadata ObjectMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
spec RebalanceSpec | |||
status RebalanceStatus |
RebalanceCondition
RebalanceConditionはEMQXのリバランスジョブの現在の状態を表します。
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
type RebalanceConditionType | リバランス条件タイプの状態。Processing, Complete, Failedのいずれか。 | ||
status ConditionStatus | 条件の状態。True, False, Unknownのいずれか。 | ||
lastUpdateTime Time | この条件が最後に更新された時刻。 | ||
lastTransitionTime Time | 条件がある状態から別の状態に遷移した最後の時刻。 | ||
reason string | 条件の最後の遷移理由。 | ||
message string | 遷移の詳細を示す人間が読めるメッセージ。 |
RebalanceConditionType
基底型: string
出現箇所:
| フィールド | 説明 |
|---|---|
Processing | |
Completed | |
Failed |
RebalanceList
RebalanceListはRebalanceのリストを含みます
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
apiVersion string | apps.emqx.io/v2beta1 | ||
kind string | RebalanceList | ||
metadata ListMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
items Rebalance array |
RebalancePhase
基底型: string
出現箇所:
| フィールド | 説明 |
|---|---|
Processing | |
Completed | |
Failed |
RebalanceSpec
RebalanceSpecはRebalanceの望ましい状態を定義します
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
instanceKind string | InstanceKindはEMQXとEMQXEnterpriseを区別するために使用されます。 "EMQX"に設定されている場合、EMQX CRはv2beta1を意味し、 "EmqxEnterprise"に設定されている場合、EmqxEnterprise CRはv1beta4を意味します。 | EMQX | |
instanceName string | InstanceNameはEMQX CRの名前を表し、EMQX Enterpriseでのみ有効です。 | 必須: {} | |
rebalanceStrategy RebalanceStrategy | RebalanceStrategyはEMQXのリバランス戦略を表します。 詳細: https://docs.emqx.com/en/enterprise/v4.4/advanced/rebalancing.html#rebalancing | 必須: {} |
RebalanceState
RebalanceStateはEMQXの観測されたリバランス状態を定義します
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
state string | Stateはemqxクラスターのリバランス状態を表します。 | ||
session_eviction_rate integer | SessionEvictionRateはノードのセッション退去率(秒あたり)を表します。 | ||
recipients string array | Recipientsはリバランスの対象ノードを表します。 | ||
node string | Nodeはリバランスのスケジューリングノードを表します。 | ||
donors string array | Donorsはリバランスのソースノードを表します。 | ||
coordinator_node string | CoordinatorNodeは現在リバランス中のノードを表します。 | ||
connection_eviction_rate integer | ConnectionEvictionRateはノードの接続退去率(秒あたり)を表します。 |
RebalanceStatus
RebalanceStatusはRebalanceの現在の状態を表します
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
conditions RebalanceCondition array | オブジェクトの現在の状態に関する最新の観測結果。 Rebalanceが失敗した場合、条件は"type"が"Failed"でstatusがfalseになります。 Rebalanceが処理中の場合、条件は"type"が"Processing"でstatusがtrueになります。 Rebalanceが完了した場合、条件は"type"が"Complete"でstatusがtrueになります。 | ||
phase RebalancePhase | PhaseはRebalanceのフェーズを表します。 | ||
rebalanceStates RebalanceState array | |||
startedTime Time | StartedTimeはリバランスジョブ開始時刻を表します。 | ||
completedTime Time | CompletedTimeはリバランスジョブ完了時刻を表します。 |
RebalanceStrategy
RebalanceStrategyはEMQXのリバランス戦略を表します
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
connEvictRate integer | ConnEvictRateはソースノードのクライアント切断率(秒あたり)を表します。 EMQXリバランシングのconn-evict-rateと同じです。 値は0より大きくなければなりません。 | 最小値: 1 必須: {} | |
sessEvictRate integer | SessEvictRateはソースノードのセッション退去率(秒あたり)を表します。 EMQXリバランシングのsess-evict-rateと同じです。 値は0より大きくなければなりません。 デフォルトは500です。 | 500 | |
waitTakeover integer | WaitTakeoverはすべての接続が切断された後、クライアントがセッションを引き継ぐために再接続を待つ秒数を表します。 EMQXリバランシングのwait-takeoverと同じです。 値は0より大きくなければなりません。 デフォルトは60秒です。 | 60 | |
waitHealthCheck integer | WaitHealthCheckはロードバランサーがソースノードをアクティブなバックエンドノードリストから除外するまでの待機時間(秒)を表します。 指定された待機時間を超えるとリバランスタスクが開始されます。 EMQXリバランシングのwait-health-checkと同じです。 値は0より大きくなければなりません。 デフォルトは60秒です。 | 60 | |
absConnThreshold integer | AbsConnThresholdは接続バランスのチェックの絶対閾値を表します。 EMQXリバランシングのabs-conn-thresholdと同じです。 値は0より大きくなければなりません。 デフォルトは1000です。 | 1000 | |
relConnThreshold string | RelConnThresholdは接続バランスのチェックの相対閾値を表します。 EMQXリバランシングのrel-conn-thresholdと同じです。 浮動小数点の使用は言語間のサポート差異のため強く推奨されません。 そのためRelConnThresholdは文字列型として定義されており、浮動小数点型ではありません。 値は"1.0"より大きくなければなりません。 デフォルトは"1.1"です。 | 1.1 | |
absSessThreshold integer | AbsSessThresholdはセッション接続バランスのチェックの絶対閾値を表します。 EMQXリバランシングのabs-sess-thresholdと同じです。 値は0より大きくなければなりません。 デフォルトは1000です。 | 1000 | |
relSessThreshold string | RelSessThresholdはセッション接続バランスのチェックの相対閾値を表します。 EMQXリバランシングのrel-sess-thresholdと同じです。 浮動小数点の使用は言語間のサポート差異のため強く推奨されません。 そのためRelSessThresholdは文字列型として定義されており、浮動小数点型ではありません。 値は"1.0"より大きくなければなりません。 デフォルトは"1.1"です。 | 1.1 |
SecretRef
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
key KeyRef | |||
secret KeyRef |
ServiceTemplate
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
enabled boolean | EMQX OperatorはEMQXノード用のサービスを作成します。 これは falseと未指定を区別するためのポインターです。 | true | |
metadata ObjectMeta | metadataのフィールドはKubernetes APIドキュメントを参照してください。 | ||
spec ServiceSpec | Specはサービスの動作を定義します。 https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status |
UpdateStrategy
出現箇所:
| フィールド | 説明 | デフォルト | バリデーション |
|---|---|---|---|
type string | Recreate | 列挙: [Recreate] | |
initialDelaySeconds integer | 退去接続開始までの秒数。 | ||
evacuationStrategy EvacuationStrategy | 退去接続タイムアウトまでの秒数。 |