|
これは未公開の文書です SUSE® Virtual Clusters v1.2.0 (Dev). |
APIリファレンス
k3k.io/v1beta1
アドオン
アドオンは、クラスター起動時にデプロイされるYAMLを含むシークレットを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
SecretNamespaceはシークレットのネームスペースです。 |
||
|
SecretRefはシークレットの名前です。 |
AppliedPolicy
AppliedPolicyは、適用されたポリシーの観測された状態を定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
name は、このクラスターに現在適用されている VirtualClusterPolicy の名前です。 |
MinLength: 1 |
|
|
priorityClass は、アクティブな VirtualClusterPolicy によって適用される優先度クラスです。 |
||
|
nodeSelector は、アクティブな VirtualClusterPolicy によって適用されるノードセレクターです。 |
||
|
serverAffinity は、アクティブな VirtualClusterPolicy によって適用されるサーバーポッドのアフィニティルールです。 |
||
|
agentAffinity は、アクティブな VirtualClusterPolicy によって適用されるエージェントポッドのアフィニティルールです。 |
||
|
sync は、アクティブな VirtualClusterPolicy によって適用される SyncConfig です。 |
||
|
RuntimeClassName は、virtual または shared モードのクラスターのエージェントおよび |
||
|
PodSecurityContext は、virtual または shared モードのクラスターのエージェントおよび |
||
|
SecurityContext は、virtual または shared モードのクラスターのエージェントおよび |
||
|
HostUsers は、サーバーポッドおよびエージェントポッドのユーザー名前空間を設定します。 |
クラスタ
クラスターはk3kによって管理される仮想Kubernetesクラスターを定義します。 これは、バージョン、ノード構成、ネットワーキングを含む仮想クラスターの望ましい状態を指定します。k3kはこれを使用して、これらの仮想クラスターをプロビジョニングおよび管理します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
|
Specはクラスターの望ましい状態を定義します。 |
{ } |
|
|
Statusは、クラスターの観測された状態を反映します。 |
{ } |
クラスターリスト
クラスターリストはクラスターリソースのリストです。
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
|
ClusterMode
基礎となるタイプ: 文字列
ClusterModeは、クラスターで使用できるプロビジョニングモードです。
サポートされる値: shared、virtual、hcp。
表示される:
ClusterSpec
クラスター仕様は、仮想Kubernetesクラスターの望ましい状態を定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
バージョンは、仮想ノードに使用するK3sのバージョンです。 |
||
|
Modeは、クラスターのプロビジョニングモードを指定します。このフィールドは不変です。 |
shared |
Enum: [shared virtual hcp] |
|
サーバーは、サーバー(コントロールプレーン)モードで実行するK3sポッドの数を指定します。 |
1 |
|
|
エージェントは、エージェント(ワーカー)モードで実行するK3sポッドの数を指定します。 |
0 |
|
|
ClusterCIDRは、ポッドIPのCIDR範囲です。 |
||
|
ServiceCIDRはサービスIPのCIDR範囲です。 |
||
|
ClusterDNSはCoreDNSサービスのIPアドレスです。 |
||
|
Persistenceはetcdデータを永続化するためのオプションを指定します。 |
||
|
ExposeはAPIサーバーを公開するためのオプションを指定します。 |
||
|
NodeSelectorはサーバー/エージェントポッドがスケジュールされるノードラベルを指定します。 |
||
|
PriorityClassはサーバー/エージェントポッドのpriorityClassNameを指定します。 |
||
|
TokenSecretRefは、ワーカーノードがクラスターに参加するために使用するトークンを含むSecret参照です。 |
||
|
TLSSANsはK3sサーバー証明書のサブジェクト代替名を指定します。 |
||
|
ServerArgsはK3sサーバーポッドのための順序付きキー-バリューペアを指定します。 |
||
|
AgentArgsはK3sエージェントポッドのための順序付きキー-バリューペアを指定します。 |
||
|
ServerEnvsはサーバーポッドに設定する環境変数のリストを指定します。 |
||
|
AgentEnvsはエージェントポッドに設定する環境変数のリストを指定します。 |
||
|
Addonsはクラスター起動時にデプロイする生のYAMLを含むシークレットを指定します。 |
||
|
ServerLimitはサーバーノードのリソース制限を指定します。 |
||
|
WorkerLimitはエージェントノードのリソース制限を指定します。 |
||
|
ServerResourcesは、サーバーノードのリソース制限とリクエストを指定します。 |
||
|
WorkerResourcesは、ワーカーノードのリソース制限とリクエストを指定します。 |
||
|
ServerAffinityは、サーバーポッドのアフィニティルールを指定します。 |
||
|
AgentAffinityは、エージェントポッドのアフィニティルールを指定します。 |
||
|
MirrorHostNodesはホストクラスターからのノードオブジェクトが |
||
|
CustomCAsはカスタムCA証明書のための証明書/鍵ペアを指定します。 |
||
|
Syncは仮想クラスターからホストクラスターに同期されるリソースタイプを指定します。 |
{ } |
|
|
SecretMountsはサーバーおよびエージェントポッドにマウントするシークレットのリストを指定します。 |
||
|
PodSecurityContext は、virtual または shared モードのクラスターのエージェントおよび |
||
|
SecurityContext は、virtual または shared モードのクラスターのエージェントおよび |
||
|
RuntimeClassName は、virtual または shared モードのクラスターのエージェントおよび |
||
|
HostUsers は、サーバーポッドおよびエージェントポッドのユーザー名前空間を設定します。 |
ClusterStatus
ClusterStatusは、クラスターの観測された状態を反映します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
HostVersionは、ホストノードのKubernetesバージョンです。 |
||
|
ClusterCIDRは、ポッドIPのCIDR範囲です。 |
||
|
ServiceCIDRはサービスIPのCIDR範囲です。 |
||
|
ClusterDNSはCoreDNSサービスのIPアドレスです。 |
||
|
TLSSANsはK3sサーバー証明書のサブジェクト代替名を指定します。 |
||
|
PolicyNameは、仮想クラスターにバインドされた仮想クラスターポリシー名を指定します。 |
||
|
policy は、このクラスターに適用されたポリシーのステータスを表します。 |
||
|
KubeletPortは、shared モードで k3k-kubelet が使用するポートを指定します。 |
||
|
Conditionsは、クラスターに設定された個々の条件です。 |
||
|
Phaseは、クラスターの現在のライフサイクル状態の概要です。 |
Unknown |
Enum: [Pending Provisioning Ready Failed Terminating Unknown] |
ConfigMapSyncConfig
ConfigMapSyncConfigは、ConfigMapの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
true |
|
|
Selectorは、同期されるリソースのラベルのセットを指定します。空の場合、 |
CredentialSource
CredentialSourceは、資格情報を取得する場所を定義します。 それは、TLSキーペアまたは単一の秘密鍵のいずれかを表すことができます。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
秘密は、資格情報のタイプに基づいて特定のキーを含む必要があります: |
CredentialSources
CredentialSourcesは、TLSキーペアと単一の署名キーの両方を含む、必要なすべての資格情報をリストします。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
ServerCAは、server-ca証明書/鍵ペアを指定します。 |
||
|
ClientCAは、client-ca証明書/鍵ペアを指定します。 |
||
|
RequestHeaderCAは、request-header-ca証明書/鍵ペアを指定します。 |
||
|
ETCDServerCAは、etcd-server-ca証明書/鍵ペアを指定します。 |
||
|
ETCDPeerCAは、etcd-peer-ca証明書/鍵ペアを指定します。 |
||
|
ServiceAccountTokenは、service-account-tokenキーを指定します。 |
CustomCAs
カスタムCA証明書のための証明書/鍵ペアを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
有効にすると、この機能がオンまたはオフになります。 |
true |
|
|
ソースは、すべての必要なカスタムCA証明書のソースを定義します。 |
ExposeConfig
ExposeConfigは、APIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Ingressは、Ingressを通じてAPIサーバーを公開するためのオプションを指定します。 |
||
|
LoadBalancerは、LoadBalancerサービスを通じてAPIサーバーを公開するためのオプションを指定します。 |
||
|
NodePortは、NodePortを通じてAPIサーバーを公開するためのオプションを指定します。 |
||
|
Annotationsは、生成されるServiceに追加するアノテーションを指定します。 |
IngressConfig
IngressConfigは、Ingressを通じてAPIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Annotationsは、Ingressに追加するアノテーションを指定します。 |
||
|
IngressClassNameは、Ingressに使用するIngressClassを指定します。 |
IngressSyncConfig
IngressSyncConfigは、Ingressの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースのsyncのオン/オフスイッチです。 |
false |
|
|
Selectorは、syncされるリソースのラベルのセットを指定します。空の場合、 |
||
|
DisableTLSSecretTranslationは、仮想クラスターからホストクラスターへの |
false |
LoadBalancerConfig
LoadBalancerConfigは、LoadBalancerサービスを通じてAPIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
ServerPortは、タイプがLoadBalancerのときにK3sサーバーが公開されるポートです。 |
||
|
ETCDPortは、タイプがLoadBalancerのときにETCDサービスが公開されるポートです。 |
NodePortConfig
NodePortConfigは、NodePortを通じてAPIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
ServerPortは、NodePortタイプのときにK3sサーバーが公開される各ノードのポートです。 |
||
|
ETCDPortは、NodePortタイプのときにETCDサービスが公開される各ノードのポートです。 |
PersistenceConfig
PersistenceConfigは、etcdデータを永続化するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Typeは、永続化モードを指定します。 |
dynamic |
|
|
StorageClassNameは、PVCに使用するStorageClassの名前です。 |
||
|
StorageRequestSizeは、PVCの要求サイズです。 |
2G |
PersistentVolumeClaimSyncConfig
PersistentVolumeClaimSyncConfigは、PersistentVolumeClaimの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースのsyncのオン/オフスイッチです。 |
true |
|
|
Selectorは、syncされるリソースのラベルのセットを指定します。空の場合、 |
PodSecurityAdmissionLevel
基礎となるタイプ: 文字列
PodSecurityAdmissionLevelは、名前空間内のポッドに適用されるポリシーレベルです。
サポートされる値: privileged、baseline、restricted。
表示される:
PriorityClassSyncConfig
PriorityClassSyncConfigは、PriorityClassの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
false |
|
|
Selectorは、syncされるリソースのラベルのセットを指定します。空の場合、 |
SecretMount
SecretMountは、サーバーまたはエージェントポッドにシークレットをマウントし、カスタム設定、証明書、その他の機密データを利用できるように定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
secretNameは、ポッドのネームスペースで使用するシークレットの名前です。 |
||
|
items: 未指定の場合、参照されたデータフィールド内の各キーと値のペアが |
||
|
defaultModeは任意のフィールドで、作成されたファイルのパーミッションを設定するためのモードビットを指定します。 |
||
|
オプションのフィールドは、Secretまたはそのキーが定義される必要があるかどうかを指定します。 |
||
|
Name は、サーバーポッドまたはエージェントポッドのボリュームおよび |
MaxLength: 63 |
|
|
MountPathは、サーバーおよびエージェントポッド内のパスです。 |
||
|
SubPathは、ルートの代わりにマウントするためのシークレット内のオプションのパスです。 |
||
|
Roleは、Secretのマウントに使用されるk3kポッドのタイプです。 |
Enum: [server agent all] |
SecretSyncConfig
SecretSyncConfigは、Secretの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
true |
|
|
Selectorは、同期されるリソースのラベルのセットを指定します。空の場合、 |
ServiceSyncConfig
ServiceSyncConfigは、Serviceの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
true |
|
|
Selectorは、同期されるリソースのラベルのセットを指定します。空の場合、 |
StorageClassSyncConfig
StorageClassSyncConfigは、StorageClassの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
false |
|
|
Selectorは、同期されるリソースのラベルのセットを指定します。空の場合、 |
SyncConfig
SyncConfigは、仮想クラスターからホストクラスターに同期されるべきリソースを含みます。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
サービスリソースの同期設定。 |
{ enabled:true } |
|
|
ConfigMapsリソースの同期設定。 |
{ enabled:true } |
|
|
Secretsリソースの同期設定。 |
{ enabled:true } |
|
|
Ingressesリソースの同期設定。 |
{ enabled:false } |
|
|
PersistentVolumeClaimsリソースの同期設定。 |
{ enabled:true } |
|
|
PriorityClassesリソースの同期設定。 |
{ enabled:false } |
|
|
StorageClassesリソースの同期設定。 |
{ enabled:false } |
VirtualClusterPolicy
VirtualClusterPolicyは、クラスター・ポリシー内のクラスターに対して共通の構成と制約を定義するためのものです。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
Specは、VirtualClusterPolicyの望ましい状態を定義します。 |
{ } |
||
|
Statusは、VirtualClusterPolicyの観測された状態を反映します。 |
VirtualClusterPolicyList
VirtualClusterPolicyListは、VirtualClusterPolicyリソースのリストです。
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
|
VirtualClusterPolicySpec
VirtualClusterPolicySpecは、VirtualClusterPolicyの望ましい状態を定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Quotaは、クラスター・ポリシー内のクラスターに対するリソース制限を指定します。 |
||
|
Limitは、VirtualClusterPolicy内のすべてのポッドに適用されるLimitRangeを指定します。 |
||
|
DefaultNodeSelectorは、ターゲットネームスペース内のすべてのクラスター(サーバー + エージェント)に適用されるノードセレクターを指定します。 |
||
|
DefaultPriorityClassは、ターゲットネームスペース内のすべてのクラスターのすべてのポッドに適用されるpriorityClassNameを指定します。 |
||
|
DefaultServerAffinityは、対象の名前空間内のすべてのクラスターのサーバーポッドに適用されるアフィニティルールを指定します。 |
||
|
DefaultAgentAffinityは、対象の名前空間内のすべてのクラスターのエージェントポッドに適用されるアフィニティルールを指定します。 |
||
|
AllowedModeは、許可されるクラスターのプロビジョニングモードを指定します。 |
shared |
Enum: [shared virtual hcp] |
|
DisableNetworkPolicyは、クラスターの分離のためにデフォルトのネットワークポリシーの作成を無効にするかどうかを示します。 |
||
|
PodSecurityAdmissionLevelは、ネームスペース内のポッドに適用されるポッドセキュリティの入場レベルを指定します。 |
Enum: [privileged baseline restricted] |
|
|
Syncは仮想クラスターからホストクラスターに同期されるリソースタイプを指定します。 |
{ } |
|
|
SecurityContext は、virtual または shared モードのクラスターのエージェントおよび |
||
|
RuntimeClassName は、virtual または shared モードのクラスターのエージェントおよび |
||
|
HostUsers は、サーバーポッドおよびエージェントポッドのユーザー名前空間を設定します。 |
VirtualClusterPolicyStatus
VirtualClusterPolicyStatusは、VirtualClusterPolicyの観測された状態を反映します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
ObservedGenerationは、ステータスが更新された時点のジェネレーションです。 |
||
|
LastUpdateは、ステータスが最後に更新されたタイムスタンプです。 |
||
|
Summaryは、ステータスの概要です。 |
||
|
Conditionsは、クラスターに設定された個々の条件です。 |