重要 Container Service for Kubernetes (ACK) は、2024年8月21日00:00:00 (GMT + 8) 以降、ACK専用クラスターの作成を中止します。 信頼性、セキュリティ、およびスケジューリング効率を高めるために、本番環境でACK Proクラスターを使用することを推奨します。
制限事項
項目 | 制限事項 | クォータ制限 /参照の増加に関するリンク |
ネットワーク | ACKクラスターはVPCのみをサポートします。 | VPCとは何ですか? |
クラウドリソース | ECS | 従量課金およびサブスクリプション課金方法がサポートされています。 ECSインスタンスの作成後、ECSコンソールで課金方法を従量課金からサブスクリプションに変更できます。 | ECS インスタンスの課金方法を従量課金からサブスクリプションに変更する |
VPCルートエントリ | デフォルトでは、Flannelを実行するACKクラスターのVPCに最大200のルートエントリを追加できます。 Terwayを実行するACKクラスターのVPCにはこの制限はありません。 ACKクラスターのVPCにさらにルートエントリを追加する場合は、VPCのクォータの増加をリクエストします。 | クォータセンター |
セキュリティグループ | デフォルトでは、各アカウントで最大100のセキュリティグループを作成できます。 | リソースクォータの表示と増加 |
SLB instances | デフォルトでは、各アカウントで最大60の従量課金SLBインスタンスを作成できます。 | クォータセンター |
EIP | デフォルトでは、各アカウントで最大20のEIPを作成できます。 | クォータセンター |
背景情報
ACK専用クラスターの課金ルールの詳細については、「課金」をご参照ください。
ステップ1: ACKコンソールへのログイン
ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。
右上隅にクラスターページKubernetesクラスターの作成をクリックします。
手順2: クラスターの設定
[専用Kubernetes] タブをクリックし、基本、ネットワーク、および詳細設定を設定します。
基本設定
パラメーター | 説明 |
すべてのリソース | ページ上部の [すべてのリソース] にポインターを移動し、使用するリソースグループを選択します。 リソースグループを選択すると、リソースグループに属する仮想プライベートクラウド (VPC) とvSwitchが表示されます。 クラスターを作成すると、指定されたリソースグループに属するVPCとvSwitchのみが表示されます。 |
クラスター名 | クラスターの名前。 名前は1 ~ 63文字で、数字、文字、ハイフン (-) 、およびアンダースコア (_) を使用できます。 名前は文字または数字で始まる必要があります。 |
リージョン | クラスターのリージョンです。 |
課金方法 | 従量課金とサブスクリプションの課金方法がサポートされています。 サブスクリプションの課金方法を選択した場合、次のパラメーターを設定する必要があります。
説明 [課金方法] を [サブスクリプション] に設定した場合、ECS (Elastic Compute Service) インスタンスとSLB (Server Load Balancer) インスタンスのみがサブスクリプションベースで課金されます。 その他のクラウドリソースは、従量課金制で課金されます。 クラウドリソースの課金の詳細については、「クラウドサービスの課金」をご参照ください。 |
Kubernetesバージョン | サポートされているKubernetesのバージョン。 |
ネットワーク設定
パラメーター | 説明 |
IPv6デュアルスタック | IPv4/IPv6デュアルスタックを有効にすると、デュアルスタッククラスタが作成されます。 この機能はパブリックプレビュー中です。 この機能を使用するには、Quota Centerコンソールでアプリケーションを送信します。
重要 Kubernetes 1.22を実行するクラスターのみがIPv4/IPv6デュアルスタックをサポートしています。 IPv4アドレスは、ワーカーノードと制御プレーンとの間の通信に使用される。 ネットワークプラグインとしてTerwayを選択する必要があります。 Terwayの共有ENIモードを使用する場合、ECSインスタンスタイプはIPv6アドレスをサポートしている必要があります。 指定されたタイプのECSインスタンスをクラスターに追加するには、ECSインスタンスタイプでサポートされるIPv4アドレスの数がIPv6アドレスの数と同じである必要があります。 ECSインスタンスタイプの詳細については、「インスタンスファミリーの概要」をご参照ください。 IPv4/IPv6デュアルスタックをサポートするVPCおよびECSインスタンスを使用する必要があります。 クラスターでElastic Remote Direct Memory Access (eRDMA) を使用する場合は、IPv4/IPv6デュアルスタックを無効にする必要があります。
|
VPC | クラスターをデプロイするVPCを選択します。 標準VPCと共有VPCがサポートされています。
説明 ACKクラスターはVPCのみをサポートします。 ドロップダウンリストからVPCを選択できます。 VPCがない場合は、[VPCの作成] をクリックしてVPCを作成します。 詳細については、「VPCの作成と管理」をご参照ください。 |
SNATの設定 | デフォルトでは、チェックボックスがオンになっています。 クラスター用に選択したVPCがインターネットにアクセスできない場合は、[VPC用のSNATの設定] を選択します。 これにより、ACKはNATゲートウェイを作成し、SNATルールを設定してVPCのインターネットアクセスを有効にします。 |
vSwitch | [vSwitch] を選択します。 異なるゾーンにデプロイされているvSwitchを最大3つ選択できます。 使用できるvSwitchがない場合は、[vSwitchの作成] をクリックします。 詳細については、「vSwitchの作成と管理」をご参照ください。 |
セキュリティグループ | [基本セキュリティグループの作成] 、[高度なセキュリティグループの作成] 、または [既存のセキュリティグループの選択] を選択できます。 セキュリティグループの詳細については、「概要」をご参照ください。
説明 [既存のセキュリティグループの選択] オプションを選択できるのは、ホワイトリストのユーザーのみです。 ホワイトリストへの追加を申請するには、Quota Centerコンソールにログインして申請を送信します。 既存のセキュリティグループを選択した場合、セキュリティグループルールは自動的に設定されません。 これにより、クラスター内のノードにアクセスするときにエラーが発生する可能性があります。 セキュリティグループルールを手動で設定する必要があります。 セキュリティグループルールを管理する方法の詳細については、「ACKクラスターにアクセス制御を適用するセキュリティグループルールの設定」をご参照ください。 デフォルトでは、ACKで使用されるセキュリティグループはすべてのアウトバウンドトラフィックを許可します。 業務上の理由でセキュリティグループを変更する場合は、100.64.0.0/10宛のトラフィックが許可されていることを確認してください。 このCIDRブロックは、イメージをプルし、基本的なECS情報を照会するために使用されます。
|
APIサーバーへのアクセス | デフォルトでは、ACKは、APIサーバーの従量課金方式を使用する内部対応のSLBインスタンスを自動的に作成します。 [APIサーバーをEIPで公開] を選択またはオフにします。 ACK APIサーバーは、複数のHTTPベースのRESTful APIを提供し、ポッドやサービスなどのリソースの作成、削除、変更、クエリ、および監視に使用できます。 このチェックボックスをオンにすると、elastic IPアドレス (EIP) が作成され、SLBインスタンスに関連付けられます。 APIサーバーが使用するポート6443は、マスターノードで開かれます。 kubeconfigファイルを使用して、インターネット経由でクラスターに接続して管理できます。 このチェックボックスをオフにすると、EIP は作成されません。 kubeconfigファイルを使用して、VPC内からのみクラスターに接続し、クラスターを管理できます。
|
ネットワークプラグイン | ネットワークプラグインを選択します。 フランネルとTerwayがサポートされています。 詳細については、「Terwayでの作業」をご参照ください。 Flannel: オープンソースのKubernetesによって開発されたシンプルで安定したContainer Network Interface (CNI) プラグイン。 Flannelはいくつかの簡単な機能を提供し、標準のKubernetesネットワークポリシーをサポートしていません。 Terway: Alibaba Cloud Container Serviceによって開発されたネットワークプラグイン。 Terwayでは、Alibaba Cloud Elastic Network Interface (ENI) をコンテナーに割り当てることができます。 また、Kubernetesのネットワークポリシーをカスタマイズしてコンテナ間の相互通信を制御し、個々のコンテナに帯域幅調整を実装することもできます。
説明 ノードにデプロイできるポッドの数は、ノードにアタッチされているENIの数と、これらのENIによって提供されるセカンダリIPアドレスの最大数によって異なります。 クラスターに共有VPCを選択する場合、ネットワークプラグインとしてTerwayを選択する必要があります。 [Terway] を選択した場合、ENIは複数のポッド間で共有されます。 ENIのセカンダリIPアドレスが各ポッドに割り当てられます。
[Network Plug-in] を [Terway] に設定すると、次のパラメーターを設定できます。 [各ポッドに1つのENIを割り当てる] 機能を有効にするかどうかを指定します。 [各ポッドに1つのENIを割り当てる] 機能を使用するには、Quota Centerコンソールにログインしてアプリケーションを送信する必要があります。 IPVLANを使用するかどうかを指定します。 このオプションは、各ポッドに1つのENIの割り当てを解除した場合にのみ使用できます。 IPVLANを選択した場合、ENIが複数のポッド間で共有されている場合、IPVLANおよび拡張バークレーパケットフィルタ (eBPF) がネットワーク仮想化に使用されます。 これにより、ネットワークパフォーマンスが向上します。 Alibaba Cloud Linuxオペレーティングシステムのみがサポートされています。 IPVLANをクリアすると、ENIが複数のポッド間で共有されるときに、ポリシーベースのルートがネットワーク仮想化に使用されます。 CentOS 7およびAlibaba Cloud Linuxオペレーティングシステムがサポートされています。 デフォルト設定です。 クラスターを作成する場合にのみ、IPVLANを有効または無効にできます。 クラスターの作成後、IPVLANを有効または無効にできなくなります。
TerwayでサポートされているIPVLANモードの詳細については、「Terwayでの作業」をご参照ください。 [ネットワークポリシーのサポート] を選択またはクリアします。 NetworkPolicy機能は、各ポッドに1つのENIの割り当てをクリアした場合にのみ使用できます。 デフォルトでは、各ポッドに1つのENIを割り当てることは選択されません。 [ネットワークポリシーのサポート] を選択した場合、Kubernetesネットワークポリシーを使用してポッド間の通信を制御できます。 NetworkPolicyのサポートをクリアした場合、Kubernetesネットワークポリシーを使用してポッド間の通信を制御することはできません。 これにより、KubernetesネットワークポリシーがKubernetes APIサーバーにオーバーロードするのを防ぎます。
ACKクラスターでネットワークポリシーを使用する方法とネットワークポリシーの使用シナリオの詳細については、「ACKクラスターでのネットワークポリシーの使用」をご参照ください。 [ENIトランキングのサポート] を選択またはクリアします。 ENIトランキングのサポート機能を使用するには、Quota Centerコンソールにログインしてアプリケーションを送信する必要があります。 Terway Trunk ENI機能を使用すると、静的IPアドレス、個別のvSwitch、およびポッドごとに個別のセキュリティグループを指定できます。 これにより、ユーザートラフィックの管理と分離、ネットワークポリシーの設定、およびIPアドレスの管理をきめ細かく行うことができます。 詳細については、「ポッドの静的IPアドレスの設定、vSwitchの分離、およびセキュリティグループの分離」をご参照ください。
|
ポッドvSwitch | ネットワークプラグインとしてTerwayを選択した場合、vSwitchをポッドに割り当てる必要があります。 各ポッドvSwitchは、ワーカーノードのvSwitchに対応します。 ポッドのvSwitchとワーカーノードのvSwitchは同じゾーンにある必要があります。
重要 ポッドvSwitchのCIDRブロックのサブネットマスクを19ビット以下に設定することを推奨しますが、サブネットマスクは25ビットを超えてはなりません。 それ以外の場合、クラスタネットワークには、ポッドに割り当てることができるIPアドレスの数が限られています。 その結果、クラスターは期待通りに機能しない可能性があります。 |
コンテナCIDRブロック | Flannelを選択した場合、ポッドCIDRブロックを設定する必要があります。 ポッドCIDRブロックは、VPCのCIDRブロック、VPC内のACKクラスターのCIDRブロック、またはService CIDRブロックと重複してはなりません。 ポッドCIDRブロックは、指定後は変更できません。 クラスターのCIDRブロックを計画する方法の詳細については、「ACKクラスターのネットワークを計画する」をご参照ください。 |
ノードあたりのポッド数 | ネットワークプラグインをFlannelに設定した場合、[ノードあたりのポッド数] パラメーターを設定する必要があります。 |
サービスCIDR | サービスCIDRを設定します。 Service CIDRブロックは、VPCのCIDRブロック、VPC内のACKクラスターのCIDRブロック、またはポッドCIDRブロックと重複してはなりません。 Service CIDRブロックは、指定後は変更できません。 クラスターのCIDRブロックを計画する方法の詳細については、「ACKクラスターのネットワークを計画する」をご参照ください。 |
IPv6サービスCIDR | IPv4/IPv6デュアルスタックを有効にする場合は、サービスのIPv6 CIDRブロックを指定する必要があります。 このパラメーターを設定するときは、次の項目に注意してください。 クラスターのCIDRブロックを計画する方法の詳細については、「ACKクラスターのネットワークを計画する」をご参照ください。 |
詳細設定
[詳細オプションの表示] をクリックして、クラスターの転送モードを設定します。
パラメーター | 説明 |
転送モード | iptablesおよびIPVSは支えられます。 iptablesは成熟した安定したkube-proxyモードです。 このモードでは、Kubernetes Servicesのサービス検出と負荷分散は、iptablesルールを使用して設定されます。 このモードのパフォーマンスは、Kubernetesクラスターのサイズによって異なります。 このモードは、少数のサービスを管理するKubernetesクラスターに適しています。 IPVSは、高性能のkube-proxyモードです。 このモードでは、Kubernetes Servicesのサービス検出と負荷分散は、LinuxのIP Virtual Server (IPVS) モジュールによって設定されます。 このモードは、多数のサービスを管理するクラスターに適しています。 高パフォーマンスのロードバランシングが必要なシナリオでは、このモードを使用することを推奨します。
|
[詳細オプションの表示] をクリックして、クラスターの削除保護やリソースグループなどの詳細設定を行います。
詳細設定を表示
パラメーター | 説明 |
削除保護 | クラスターの削除保護を有効にするかどうかを指定します。 コンソールまたはAPIを使用してクラスターが誤ってリリースされないように、削除保護を有効にすることを推奨します。 |
リソースグループ | クラスターが属するリソースグループ。 各リソースは1つのリソースグループにのみ属することができます。 リソースグループは、ビジネスシナリオに基づいて、プロジェクト、アプリケーション、または組織と見なすことができます。 |
ラベル | クラスターノードにラベルを追加します。 キーと値を入力し、[追加] をクリックします。
説明 キーは必須で、値はオプションです。 キーは大文字と小文字を区別しません。 キーの長さは64文字を超えてはなりません。また、aliyun、http:// 、またはhttps:// で始めることはできません。 値は大文字と小文字を区別しません。 値の長さは128文字を超えることはできません。また、http:// またはhttps:// で始めることはできません。 同じリソースに追加されるラベルのキーは一意である必要があります。 使用されているキーを含むラベルを追加すると、このラベルは同じキーを使用するラベルを上書きします。 リソースに20を超えるラベルを追加すると、すべてのラベルが無効になります。 残りのラベルが有効になるように、余分なラベルを削除する必要があります。
|
タイムゾーン | クラスターのタイムゾーン。 デフォルトでは、ブラウザのタイムゾーンが選択されています。 |
クラスタードメイン | クラスタードメインを設定します。
説明 デフォルトのドメイン名はcluster.local です。 カスタムドメイン名を入力できます。 ドメイン名は2つの部分で構成されます。 各部分の長さは1 ~ 63文字で、英数字のみを使用できます。 これらの部分を空のままにすることはできません。 |
カスタム証明書SAN | クラスターのAPIサーバー証明書にカスタムサブジェクト代替名 (SAN) を入力して、指定したIPアドレスまたはドメイン名からのリクエストを受け入れることができます。 これにより、クライアントからのアクセスを制御できます。 詳細については、「APIサーバー証明書のSANのカスタマイズ」をご参照ください。 |
サービスアカウントトークンのボリューム投影 | ACKはサービスアカウントトークンボリューム予測を提供し、ポッドがサービスアカウントを使用してKubernetes APIサーバーにアクセスする際のセキュリティリスクを軽減します。 この機能により、kubeletはポッドの代わりにトークンを要求して保存できます。 この機能では、オーディエンスや有効期間などのトークンプロパティを設定することもできます。 詳細については、「ServiceAccountトークンボリューム予測の使用」をご参照ください。 |
ノードポート範囲 | ノードポート範囲を設定します。 |
クラスターCA | このチェックボックスをオンにすると、クラスターの認証局 (CA) 証明書をアップロードして、サーバーとクライアント間のデータ転送を保護します。 |
手順3: マスターノードの設定
[次へ: マスター設定] をクリックしてマスターノードを設定します。
パラメーター | 説明 |
マスターノード数量 | 選択したゾーンにデプロイするマスターノードの数を指定します。 |
[インスタンスタイプ] | マスターノードのインスタンスタイプを選択します。 詳細については、「インスタンスタイプの概要」をご参照ください。 |
システムディスク | デフォルトでは、システムディスクはマスターノードにマウントされます。 標準SSD、拡張SSD (ESSD) 、およびウルトラディスクがサポートされています。
説明 [バックアップの有効化] を選択すると、ディスクデータをバックアップできます。 [ESSDディスク] を選択した場合、システムディスクのカスタムパフォーマンスレベル (PL) を設定できます。 より大きなストレージ容量を持つESSDに対して、より高いパフォーマンスレベルを選択できます。 たとえば、ストレージ容量が460 GiBを超えるESSDのパフォーマンスレベル2を選択できます。 ストレージ容量が1,260 GiBを超えるESSDでは、パフォーマンスレベル3を選択できます。 詳細については、「容量とPL」をご参照ください。
|
デプロイメントセット | 最初にECSコンソールでデプロイメントセットを作成し、ACKコンソールでコントロールプレーンのデプロイメントセットを選択する必要があります。 デプロイメントセットの作成方法の詳細については、「デプロイメントセットの作成」をご参照ください。 |
手順4: ノードプールの設定
[次へ: ノードプールの設定] をクリックして、ノードプールの基本設定と詳細設定を設定します。
ノードプールの基本設定
パラメーター | 説明 |
ノードプール名 | ノードプール名を指定します。 |
Container Runtime | Kubernetesのバージョンに基づいてコンテナーランタイムを指定します。 containerd: containerdはすべてのKubernetesバージョンに推奨されます。 Sandboxed-Container: Kubernetes 1.24以前をサポートしています。 Docker: 1.22以前のKubernetesをサポートしています。
詳細については、「Docker、containerd、およびSandboxed-Containerの比較」をご参照ください。 |
インスタンスとイメージの設定
パラメーター | 説明 |
インスタンス関連のパラメーター | インスタンスタイプまたは属性に基づいて、ワーカーノードプールで使用されるECSインスタンスを選択します。 vCPU、メモリ、インスタンスファミリー、アーキテクチャなどの属性でECSインスタンスをフィルタリングできます。 ノードプールをスケールアウトすると、選択したインスタンスタイプのECSインスタンスが作成されます。 ノードプールのスケーリングポリシーは、スケールアウトアクティビティ中に新しいノードを作成するために使用されるインスタンスタイプを決定します。 複数のインスタンスタイプを選択して、ノードプールのスケールアウト操作の成功率を向上させます。 インスタンスタイプが使用できないか、インスタンスが在庫切れであるためにノードプールのスケールアウトに失敗した場合、ノードプールにさらに多くのインスタンスタイプを指定できます。 ACKコンソールは、ノードプールのスケーラビリティを自動的に評価します。 ノードプールを作成するとき、またはノードプールを作成した後に、スケーラビリティレベルを表示できます。
説明 ARMベースのECSインスタンスはARMイメージのみをサポートします。 ARMベースのノードプールの詳細については、「ARMベースのノードプールの設定」をご参照ください。 |
オペレーティングシステム | Container Service for Kubernetesは、ContainerOS、Alibaba Cloud Linux 3、Ubuntu、およびWindowsをサポートしています。 詳細については、「OSイメージの概要」をご参照ください。
説明 ノードプールのOSイメージを変更した後、変更は新しく追加されたノードに対してのみ有効になります。 ノードプール内の既存のノードは、依然として元のOSイメージを使用する。 既存のノードのOSイメージを更新する方法の詳細については、「ノードプールの更新」をご参照ください。 ノードプール内のすべてのノードが同じOSイメージを使用するようにするために、ACKではノードのOSイメージを最新バージョンにのみ更新できます。 ACKでは、OSイメージのタイプを変更することはできません。
|
セキュリティ強化 | 無効化: ECSインスタンスのセキュリティ強化を無効にします。 機密保護に基づく強化: Alibaba Cloud Linux 2またはAlibaba Cloud Linux 3イメージを選択した場合にのみ、セキュリティ強化を有効にできます。 Alibaba Cloudはベースラインとベースラインチェック機能を提供しており、Alibaba Cloud Linux 2イメージとAlibaba Cloud Linux 3イメージが、MLPS (Multi-level Protection Scheme) 2.0のレベル3標準に準拠していることを確認するのに役立ちます。 詳細については、「分類された保護に基づくACK強化」をご参照ください。
重要 MLPSセキュリティ強化は、OSイメージの互換性とパフォーマンスを損なうことなく、GB/T 22239-2019情報セキュリティ技術-サイバーセキュリティの分類保護のベースラインの要件を満たすようにOSイメージのセキュリティを強化します。 MLPSセキュリティ強化を有効にすると、ルートユーザーのSSHによるリモートログインは禁止されます。 Virtual Network Computing (VNC) を使用して、ECSコンソールからOSにログインし、SSH経由でログインできる通常のユーザーを作成できます。 詳細については、「VNCを使用したLinuxインスタンスへの接続」をご参照ください。 OSセキュリティの強化: システムイメージがAlibaba Cloud Linux 2またはAlibaba Cloud Linux 3イメージの場合にのみ、Alibaba Cloud Linuxセキュリティの強化を有効にできます。
説明 クラスターの作成後、セキュリティ強化パラメーターを変更することはできません。 |
ログオンタイプ | 有効な値: キーペア、パスワード、後で
説明 [セキュリティ強化] パラメーターに [分類された保護に基づく強化] を選択した場合、[パスワード] オプションのみがサポートされます。 |
ボリュームの設定
パラメーター | 説明 |
システムディスク | ESSD AutoPL、Enterprise SSD (ESSD) 、ESSD Entry、Standard SSD、およびUltra Diskがサポートされています。 選択できるシステムディスクのタイプは、選択するインスタンスタイプによって異なります。 ドロップダウンリストに表示されないディスクタイプは、選択したインスタンスタイプではサポートされていません。 ディスクの詳細については、「ブロックストレージの概要」をご参照ください。 さまざまなインスタンスタイプでサポートされているディスクタイプの詳細については、「インスタンスファミリーの概要」をご参照ください。
説明 システムディスクタイプとしてEnterprise SSD (ESSD) を選択した場合、システムディスクのカスタムパフォーマンスレベルを設定できます。 ストレージ容量の大きいESSDでは、より高いPLを選択できます。 たとえば、ストレージ容量が460 GiBを超えるESSDにはPL 2を選択できます。 ストレージ容量が1,260 GiBを超えるESSDには、PL 3を選択できます。 詳細については、「容量とパフォーマンスレベル」をご参照ください。 Encryptionは、システムディスクタイプをEnterprise SSD (ESSD) に設定した場合にのみ選択できます。 デフォルトでは、デフォルトサービスCMKがシステムディスクの暗号化に使用されます。 KMSでBYOKを使用して生成された既存のCMKを使用することもできます。
システムディスク作成の成功率を向上させるために、[その他のシステムディスクタイプ] を選択し、[システムディスク] セクションで現在のディスクタイプ以外のディスクタイプを選択できます。 システムは、指定されたディスクタイプに基づいてシステムディスクを順番に作成しようとします。 |
データディスク | ESSD AutoPL、Enterprise SSD (ESSD) 、ESSD Entry、SSD、およびUltra Diskがサポートされています。 選択できるディスクタイプは、選択するインスタンスタイプによって異なります。 ドロップダウンリストに表示されないディスクタイプは、選択したインスタンスタイプではサポートされていません。 ディスクの詳細については、「ブロックストレージの概要」をご参照ください。 さまざまなインスタンスタイプでサポートされているディスクタイプの詳細については、「インスタンスファミリーの概要」をご参照ください。 ESSD AutoPLディスクには、次の機能があります。 パフォーマンスのプロビジョニング: パフォーマンスのプロビジョニング機能を使用すると、ESSD AutoPLディスクのプロビジョニングされたパフォーマンス設定を構成して、ディスクを拡張することなく、ベースラインパフォーマンスを超えるストレージ要件を満たすことができます。 パフォーマンスバースト: パフォーマンスバースト機能により、ESSD AutoPLディスクは、読み書きワークロードのスパイクが発生したときにパフォーマンスをバーストし、ワークロードのスパイクの終了時にパフォーマンスをベースラインレベルまで低下させることができます。
ESSDは次の機能を提供します。 カスタムパフォーマンス。 ストレージ容量の大きいESSDでは、より高いPLを選択できます。 たとえば、ストレージ容量が460 GiBを超えるESSDにはPL 2を選択できます。 ストレージ容量が1,260 GiBを超えるESSDには、PL 3を選択できます。 詳細については、「容量とPL」をご参照ください。 データディスクのタイプを指定するときに、すべてのディスクタイプに対して [暗号化] を選択できます。 デフォルトでは、デフォルトサービスCMKがデータディスクの暗号化に使用されます。 KMSでBYOKを使用して生成された既存のCMKを使用することもできます。 データディスクが各ノードの /var/lib/container にマウントされ、/var/lib/kubelet および /var/lib/containerd が /var/lib/container にマウントされていることを確認します。 ノード上の他のデータディスクについては、初期化操作を実行し、マウントディレクトリをカスタマイズできます。 詳細については、「」をご参照ください。ACKノードプールのカスタムディレクトリにデータディスクをマウントできますか?
説明 最大64個のデータディスクをECSインスタンスに接続できます。 ECSインスタンスにアタッチできるディスクの最大数は、インスタンスタイプによって異なります。 特定のインスタンスタイプのECSインスタンスにアタッチできるディスクの最大数を照会するには、DescribeInstanceTypes操作を呼び出し、レスポンスのDiskQuantityパラメーターを確認します。 |
インスタンス設定
パラメーター | 説明 |
期待されるノード | ノードプール内のノードの予想数。 Expected Nodesパラメーターを変更して、ノードプール内のノード数を調整できます。 ノードプールにノードを作成しない場合は、このパラメーターを0に設定します。 詳細については、「ノードプールのスケーリング」をご参照ください。
説明 パラメーターを2以上の値に設定することを推奨します。 要件に基づいて、クラスターの作成後にノードを追加または削除できます。 クラスターにワーカーノードが1つしかない場合、または低仕様のワーカーノードが含まれている場合、クラスターコンポーネントが期待どおりに実行されない場合があります。 |
ノードプールの詳細設定
[詳細オプション (オプション)] をクリックして、スケーリングポリシーを設定します。
パラメーター | 説明 |
スケーリングポリシー | 優先度: システムは、ノードプールに対して選択したvSwitchの優先度に基づいてノードプールをスケーリングします。 選択したvSwitchは、優先度の高い順に表示されます。 Auto ScalingがvSwitchのゾーンで最も優先度の高いECSインスタンスの作成に失敗した場合、Auto ScalingはvSwitchのゾーンでより優先度の低いECSインスタンスの作成を試みます。 コスト最適化: システムは、vCPU単価に基づいて昇順でインスタンスを作成します。 スケーリング設定で複数のプリエンプティブインスタンスタイプが指定されている場合、プリエンプティブインスタンスは優先的に作成されます。 在庫不足などの理由でプリエンプティブルインスタンスを作成できない場合、システムは従量課金インスタンスの作成を試みます。 [課金方法] が [プリエンプティブルインスタンス] に設定されている場合、[補足プリエンプティブルインスタンスの有効化] パラメーターに加えて、次のパラメーターを設定できます。 配布バランシング: 均等配布ポリシーは、複数のvSwitchを選択した場合にのみ有効になります。 このポリシーにより、ECSインスタンスがスケーリンググループのゾーン (vSwitch) に均等に分散されます。 在庫不足などの理由でECSインスタンスがゾーン全体に不均一に分散している場合は、リバランス操作を実行できます。
重要 ノードプールの作成後にノードプールのスケーリングポリシーを変更することはできません。 [課金方法] が [プリエンプティブルインスタンス] に設定されている場合、[補足プリエンプティブルインスタンスの有効化] をオンにするかどうかを指定できます。 この機能が有効になった後、プリエンプティブルインスタンスが再利用されたことを示すシステムメッセージが受信されると、自動スケーリングが有効になっているノードプールは、再利用されたプリエンプティブルインスタンスを置き換える新しいインスタンスの作成を試みます。
重要 ノードプールの作成後にノードプールのスケーリングポリシーを変更することはできません。 |
[詳細オプションの表示] をクリックして、ECSラベルやテイントなどの詳細設定を設定します。
詳細設定を表示
パラメーター | 説明 |
ECSタグ | 自動スケーリング中に自動的に追加されるECSインスタンスにタグを追加します。 タグキーは一意である必要があります。 キーの長さは128文字を超えることはできません。 キーと値はaliyun またはacs: で始めることはできません。 キーと値には、https:// またはhttp:// は使用できません。 ECSインスタンスは最大20個のタグを持つことができます。 クォータ制限を増やすには、クォータセンターコンソールでアプリケーションを送信します。 次のタグは、ACKとAuto ScalingによってECSノードに自動的に追加されます。 したがって、最大17個のタグをECSノードに追加できます。
説明 自動スケーリングを有効にすると、デフォルトで次のECSタグがノードプールに追加されます: k8s.io/cluster-autoscaler:true およびk8s.aliyun.com:true 。 自動スケーリングコンポーネントは、ノードのラベルとテイントに基づいてスケールアウトアクティビティをシミュレートします。 この目的を満たすために、ノードラベルの形式をk8s.io/cluster-autoscaler/node-template/label/Label key:Label value に変更し、taintの形式をk8s.io/cluster-autoscaler/node-template /Taint key/Taint value:Taint effect に変更します。
|
テインツ | ノードにテイントを追加します。 taintは、key、value、およびeffectで構成されます。 テイントキーは、接頭辞を付けることができる。 プレフィックス付きのテイントキーを指定する場合は、プレフィックスとキーの残りのコンテンツの間にスラッシュ (/) を追加します。 詳細については、「テイントと寛容」をご参照ください。 汚染には次の制限が適用されます。 キー: キーの長さは1 ~ 63文字で、英数字、ハイフン (-) 、アンダースコア (_) 、ピリオド (.) を使用できます。 キーの先頭と末尾は文字または数字である必要があります。 プレフィックスキーを指定する場合、プレフィックスはサブドメイン名でなければなりません。 サブドメイン名は、ピリオド (.) で区切られたDNSラベルで構成され、253文字を超えることはできません。 スラッシュ (/) で終わる必要があります。 サブドメイン名の詳細については、「DNSサブドメイン名」をご参照ください。 値: 値の長さは63文字を超えることはできません。英数字、ハイフン (-) 、アンダースコア (_) 、ピリオド (.) を使用できます。 値の先頭と末尾は文字または数字である必要があります。 値を空のままにすることもできます。 NoSchedule、NoExecute、PreferNoScheduleのエフェクトを指定できます。 NoSchedule: ノードにeffectがNoScheduleのテイントがある場合、システムはノードへのポッドをスケジュールしません。 NoExecute: このテイントを許容しないポッドは、このテイントがノードに追加された後に削除されます。 このテイントを許容するポッドは、このテイントがノードに追加された後に追い出されません。 PreferNoSchedule: システムは、ポッドによって許容されないテイントを持つノードへのポッドのスケジューリングを回避しようとします。
|
ノードラベル | ノードにラベルを追加します。 ラベルはキーと値のペアです。 ラベルキーは、接頭辞を付けることができる。 プレフィックス付きラベルキーを指定する場合は、プレフィックスとキーの残りのコンテンツの間にスラッシュ (/) を追加します。 ラベルには次の制限が適用されます。 ラベルのキーは1 ~ 63文字で、英数字、ハイフン (-) 、アンダースコア (_) 、ピリオド (.) を使用できます。 文字または数字で開始および終了する必要があります。 プレフィックスキーを指定する場合、プレフィックスはサブドメイン名でなければなりません。 サブドメイン名は、ピリオド (.) で区切られたDNSラベルで構成され、253文字を超えることはできません。 スラッシュ (/) で終わる必要があります。 サブドメイン名の詳細については、「サブドメイン名」をご参照ください。 次のプレフィックスはキーKubernetesコンポーネントで使用され、ノードラベルでは使用できません。 値の長さは63文字を超えることはできません。英数字、ハイフン (-) 、アンダースコア (_) 、およびピリオド (.) を使用できます。 値の先頭と末尾は文字または数字である必要があります。 値を空のままにすることもできます。 [新しいノードをスケジュール不可に設定] を選択した場合、ノードはクラスターに追加されたときにスケジュール不可になります。 ACKコンソールの [ノード] ページで、既存のノードをスケジュール可能に設定できます。
|
CPUポリシー | |
カスタムノード名 | カスタムノード名を使用するかどうかを指定します。 カスタムノード名を使用することを選択した場合、ノードの名前、ECSインスタンスの名前、およびECSインスタンスのホスト名が変更されます。
説明 Windowsインスタンスがカスタムノード名を使用する場合、インスタンスのホスト名はIPアドレスに固定されます。 IPアドレスのピリオド (. ) を置き換えるには、ハイフン (- ) を使用する必要があります。 さらに、プレフィックスまたはサフィックスはIPアドレスで許可されません。 カスタムノード名は、プレフィックス、IP部分文字列、およびサフィックスで構成されます。 カスタムノード名は2 ~ 64文字である必要があります。 名前の最初と最後は、小文字または数字にする必要があります。 接頭辞と接尾辞には、英数字、ハイフン (-) 、およびピリオド (.) を使用できます。 接頭辞と接尾辞は文字で始まる必要があり、ハイフン (-) またはピリオド (.) で終わることはできません。 接頭辞と接尾辞には、連続したハイフン (-) またはピリオド (.) を含めることはできません。 プレフィックスはECSの制限により必須で、サフィックスはオプションです。
たとえば、ノードIPアドレスは192.XX. YY.55、プレフィックスiはs aliyun.com、サフィックスはtestです。 |
事前定義済みカスタムデータ | この機能を使用するには、Quota Centerコンソールでアプリケーションを送信します。 ノードは、クラスターに追加される前に、定義済みのスクリプトを自動的に実行します。 ユーザーデータスクリプトの詳細については、「ユーザーデータスクリプト」をご参照ください。 たとえば、echo "hello world" と入力すると、ノードは次のスクリプトを実行します。 #!/bin/bash
[Node initialization script]
echo "hello world"
|
ユーザーデータ | ノードは、クラスターに追加されると、ユーザーデータスクリプトを自動的に実行します。 ユーザーデータスクリプトの詳細については、「ユーザーデータスクリプト」をご参照ください。 たとえば、echo "hello world" と入力すると、ノードは次のスクリプトを実行します。 #!/bin/bash
[Node initialization script]
echo "hello world"
説明 クラスターの作成またはノードの追加後、ノードでのユーザーデータスクリプトの実行が失敗する場合があります。 ノードにログインし、grep cloud-init/var/log/messages コマンドを実行して実行ログを表示し、ノードで実行が成功したか失敗したかを確認することを推奨します。 |
CloudMonitorエージェント | CloudMonitorエージェントをインストールするかどうかを指定します。 ECSノードにCloudMonitorエージェントをインストールした後、CloudMonitorコンソールでノードに関するモニタリング情報を表示できます。
説明 このパラメーターは、新しく追加されたノードでのみ有効になり、既存のノードでは有効になりません。 既存のECSノードにCloudMonitorエージェントをインストールする場合は、CloudMonitorコンソールに移動します。 |
パブリックIP | 各ノードにIPv4アドレスを割り当てるかどうかを指定します。 チェックボックスをオフにすると、パブリックIPアドレスは割り当てられません。 チェックボックスをオンにした場合は、帯域幅課金方法およびピーク帯域幅パラメーターも設定する必要があります。
説明 このパラメーターは、新しく追加されたノードでのみ有効になり、既存のノードでは有効になりません。 既存のノードがインターネットにアクセスできるようにするには、EIPを作成し、そのEIPをノードに関連付ける必要があります。 詳細については、「EIPとECSインスタンスの関連付け」をご参照ください。 |
カスタムセキュリティグループ | [Basic Security Group] または [Advanced Security Group] を選択できますが、選択できるセキュリティグループの種類は1つだけです。 ノードプールのセキュリティグループを変更したり、セキュリティグループのタイプを変更したりすることはできません。 セキュリティグループの詳細については、「概要」をご参照ください。
重要 カスタムセキュリティグループを使用するには、Quota Centerのホワイトリストに追加するように申請します。 各ECSインスタンスは最大5つのセキュリティグループをサポートしています。 ECSインスタンスのセキュリティグループのクォータが十分であることを確認します。 セキュリティグループの制限およびECSインスタンスのセキュリティグループのクォータ制限を増やす方法の詳細については、「セキュリティグループの制限」をご参照ください。 既存のセキュリティグループを選択した場合、セキュリティグループルールは自動的に設定されません。 これにより、クラスター内のノードにアクセスするときにエラーが発生する可能性があります。 セキュリティグループルールを手動で設定する必要があります。 セキュリティグループルールを管理する方法の詳細については、「ACKクラスターにアクセス制御を適用するセキュリティグループルールの設定」をご参照ください。
|
カスタムイメージ | カスタムイメージを指定すると、デフォルトのシステムイメージがカスタムイメージに置き換えられます。
重要 ACKクラスターでサポートされているオペレーティングシステムに基づいてカスタムイメージを作成します。 詳細については、「OSイメージの概要」をご参照ください。 カスタムイメージ内の事前定義された動作ロジックは、クラスタノードの初期化、コンテナの起動、ノードの更新、管理対象ノードプール内のノードの自動回復などの操作に影響を与える可能性があります。 本番環境で使用する前に、カスタムイメージがテストおよび検証済みであることを確認してください。 この機能は、ホワイトリストユーザーのみが使用できます。 Quota Centerコンソールでアプリケーションを送信します。
|
RDSホワイトリスト | [RDSインスタンスの選択] をクリックして、ApsaraDB RDSインスタンスのホワイトリストにノードIPアドレスを追加します。 |
手順5: コンポーネントの設定
[次へ: コンポーネント設定] をクリックしてコンポーネントを設定します。
パラメーター | 説明 |
Ingress | Ingressコントローラをインストールするかどうかを指定します。 サービスを公開する場合は、Ingressコントローラーをインストールすることを推奨します。 デフォルトでは、Nginx Ingressが選択されています。 有効な値: |
サービスの発見 | NodeLocal DNSCacheをインストールするかどうかを指定します。 デフォルトでは、NodeLocal DNSCacheがインストールされます。 NodeLocal DNSCacheはドメインネームシステム (DNS) キャッシュエージェントを実行し、DNS解決のパフォーマンスと安定性を向上させます。 NodeLocal DNSCacheの詳細については、「NodeLocal DNSCacheの設定」をご参照ください。 |
ボリュームプラグイン | デフォルトでは、CSIはボリュームプラグインとしてインストールされます。 デフォルトのNASファイルシステムとCNFSを使用したボリュームの動的プロビジョニング、NASごみ箱の有効化、高速データ復元のサポートがデフォルトで選択されています。 ACKクラスターは、ポッドにマウントされたAlibaba Cloudディスク、Apsara File Storage NAS (NAS) ファイルシステム、およびObject Storage Service (OSS) バケットに自動的にバインドできます。 詳細については、「CSIの概要」をご参照ください。 |
モニターコンテナー | CloudMonitorエージェントをインストールするかどうかを指定します。 デフォルトでは、ECSインスタンスへのCloudMonitorエージェントのインストールが選択されています。 |
Log Service | Simple Log Serviceを有効にするかどうかを指定します。 既存のSimple Log Serviceプロジェクトを選択するか、作成することができます。 デフォルトでは、Log Serviceの有効化が選択されています。 アプリケーションの作成時にSimple Log Serviceを迅速に設定する方法の詳細については、「Simple log Serviceを使用したコンテナーからのログデータの収集」をご参照ください。 デフォルトでは、[Ingressダッシュボードの作成] が選択されています。 Simple Log ServiceコンソールでIngressダッシュボードを作成するかどうかを指定できます。 詳細については、「nginx-ingress-controllerのアクセスログの分析と監視」をご参照ください。 デフォルトでは、Install node-problem-detector and Create Event Centerが選択されています。 Simple Log ServiceコンソールでKubernetesイベントセンターを有効にするかどうかを指定できます。 詳細については、「イベントセンターの作成と使用」をご参照ください。 |
クラスター検査 | インテリジェントO&Mのクラスタ検査機能を有効にするかどうかを指定します。この機能を有効にして、クラスターのリソースクォータ、リソース使用量、コンポーネントのバージョンを定期的に確認し、クラスター内の潜在的なリスクを特定できます。 詳細については、「クラスター検査機能の操作」をご参照ください。 |
ステップ6: 設定の確認
[次へ: 注文の確認] をクリックし、設定を確認し、利用規約を読んで選択し、[クラスターの作成] をクリックします。
クラスターの作成後、ACKコンソールの [クラスター] ページでクラスターを表示できます。
説明 複数のノードを持つACK専用クラスターを作成するには、約10分かかります。