|
これは未公開の文書です SUSE® Virtual Clusters v1.2.0 (Dev). |
APIリファレンス
k3k.io/v1beta1
アドオン
アドオンは、クラスター起動時にデプロイされるYAMLを含むシークレットを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
SecretNamespaceはシークレットのネームスペースです。 |
||
|
SecretRefはシークレットの名前です。 |
クラスタ
クラスターはk3kによって管理される仮想Kubernetesクラスターを定義します。 これは、バージョン、ノード構成、ネットワーキングを含む仮想クラスターの望ましい状態を指定します。k3kはこれを使用して、これらの仮想クラスターをプロビジョニングおよび管理します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
|
Specはクラスターの望ましい状態を定義します。 |
{ } |
クラスターリスト
クラスターリストはクラスターリソースのリストです。
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
|
ClusterSpec
クラスター仕様は、仮想Kubernetesクラスターの望ましい状態を定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
バージョンは、仮想ノードに使用するK3sのバージョンです。 |
||
|
モードは、クラスターのプロビジョニングモードを指定します:"shared"または"virtual"。 |
shared |
列挙: [shared virtual] |
|
サーバーは、サーバー(コントロールプレーン)モードで実行する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はエージェントノードのリソース制限を指定します。 |
||
|
MirrorHostNodesはホストクラスターからのノードオブジェクトが |
||
|
CustomCAsはカスタムCA証明書のための証明書/鍵ペアを指定します。 |
||
|
Syncは仮想クラスターからホストクラスターに同期されるリソースタイプを指定します。 |
{ } |
|
|
SecretMountsはサーバーおよびエージェントポッドにマウントするシークレットのリストを指定します。 |
ConfigMapSyncConfig
ConfigMapSyncConfigは、サービスの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
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サーバーを公開するためのオプションを指定します。 |
IngressConfig
IngressConfigは、Ingressを通じてAPIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Annotationsは、Ingressに追加するアノテーションを指定します。 |
||
|
IngressClassNameは、Ingressに使用するIngressClassを指定します。 |
IngressSyncConfig
IngressSyncConfigは、サービスのsyncオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースのsyncのオン/オフスイッチです。 |
false |
|
|
Selectorは、syncされるリソースのラベルのセットを指定します。空の場合、 |
LoadBalancerConfig
LoadBalancerConfigは、LoadBalancerサービスを通じてAPIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
ServerPortは、タイプがLoadBalancerのときにK3sサーバーが公開されるポートです。 |
||
|
ETCDPortは、タイプがLoadBalancerのときにETCDサービスが公開されるポートです。 |
NodePortConfig
NodePortConfigは、NodePortを通じてAPIサーバーを公開するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
ServerPortは、NodePortタイプのときにK3sサーバーが公開される各ノードのポートです。 |
||
|
ETCDPortは、NodePortタイプのときにETCDサービスが公開される各ノードのポートです。 |
PersistenceConfig
PersistenceConfigは、etcdデータを永続化するためのオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Typeは、永続化モードを指定します。 |
ダイナミック |
|
|
StorageClassNameは、PVCに使用するStorageClassの名前です。 |
||
|
StorageRequestSizeは、PVCの要求サイズです。 |
2G |
PersistentVolumeClaimSyncConfig
PersistentVolumeClaimSyncConfigは、サービスのsyncオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースのsyncのオン/オフスイッチです。 |
true |
|
|
Selectorは、syncされるリソースのラベルのセットを指定します。空の場合、 |
PodSecurityAdmissionLevel
基礎となるタイプ: 文字列
PodSecurityAdmissionLevelは、名前空間内のポッドに適用されるポリシーレベルです。
Validation: - Enum: [privileged baseline restricted]
表示される:
PriorityClassSyncConfig
PriorityClassSyncConfigは、サービスのsyncオプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
false |
|
|
Selectorは、syncされるリソースのラベルのセットを指定します。空の場合、 |
SecretMount
SecretMountは、サーバーまたはエージェントポッドにシークレットをマウントし、カスタム設定、証明書、その他の機密データを利用できるように定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
secretNameは、ポッドのネームスペースで使用するシークレットの名前です。 |
||
|
items: 未指定の場合、参照されたデータフィールド内の各キーと値のペアが |
||
|
defaultModeは任意のフィールドで、作成されたファイルのパーミッションを設定するためのモードビットを指定します。 |
||
|
オプションのフィールドは、Secretまたはそのキーが定義される必要があるかどうかを指定します。 |
||
|
MountPathは、サーバーおよびエージェントポッド内のパスです。 |
||
|
SubPathは、ルートの代わりにマウントするためのシークレット内のオプションのパスです。 |
||
|
Roleは、シークレットをマウントするために使用されるk3kポッドのタイプです。 |
列挙: [server agent all] |
SecretSyncConfig
SecretSyncConfigは、サービスの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
true |
|
|
Selectorは、同期されるリソースのラベルのセットを指定します。空の場合、 |
ServiceSyncConfig
ServiceSyncConfigは、サービスの同期オプションを指定します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Enabledは、リソースの同期のオン/オフスイッチです。 |
true |
|
|
Selectorは、同期されるリソースのラベルのセットを指定します。空の場合、 |
SyncConfig
SyncConfigは、仮想クラスターからホストクラスターに同期されるべきリソースを含みます。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
サービスリソースの同期設定。 |
{ enabled:true } |
|
|
ConfigMapsリソースの同期設定。 |
{ enabled:true } |
|
|
Secretsリソースの同期設定。 |
{ enabled:true } |
|
|
Ingressesリソースの同期設定。 |
{ enabled:false } |
|
|
PersistentVolumeClaimsリソースの同期設定。 |
{ enabled:true } |
|
|
PriorityClassesリソースの同期設定。 |
{ enabled:false } |
VirtualClusterPolicy
VirtualClusterPolicyは、クラスター・ポリシー内のクラスターに対して共通の構成と制約を定義するためのものです。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
Specは、VirtualClusterPolicyの望ましい状態を定義します。 |
{ } |
VirtualClusterPolicyList
VirtualClusterPolicyListは、VirtualClusterPolicyリソースのリストです。
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
|
||
|
|
||
|
`metadata`のフィールドについてはKubernetes APIドキュメントを参照してください。 |
||
|
VirtualClusterPolicySpec
VirtualClusterPolicySpecは、VirtualClusterPolicyの望ましい状態を定義します。
表示される:
| フィールド | 説明 | デフォルト | 検証 |
|---|---|---|---|
|
Quotaは、クラスター・ポリシー内のクラスターに対するリソース制限を指定します。 |
||
|
Limitは、VirtualClusterPolicy内のすべてのポッドに適用されるLimitRangeを指定します。 |
||
|
DefaultNodeSelectorは、ターゲットネームスペース内のすべてのクラスター(サーバー + エージェント)に適用されるノードセレクターを指定します。 |
||
|
DefaultPriorityClassは、ターゲットネームスペース内のすべてのクラスターのすべてのポッドに適用されるpriorityClassNameを指定します。 |
||
|
AllowedModeは、許可されるクラスターのプロビジョニングモードを指定します。デフォルトは「shared」です。 |
shared |
列挙: [shared virtual] |
|
DisableNetworkPolicyは、クラスターの分離のためにデフォルトのネットワークポリシーの作成を無効にするかどうかを示します。 |
||
|
PodSecurityAdmissionLevelは、ネームスペース内のポッドに適用されるポッドセキュリティの入場レベルを指定します。 |
列挙: [privileged baseline restricted] |
|
|
Syncは仮想クラスターからホストクラスターに同期されるリソースタイプを指定します。 |
{ } |