tencent cloud

Tencent Kubernetes Engine

VPC-CNI パターンセキュリティグループの使用の説明

PDF
フォーカスモード
フォントサイズ
最終更新日: 2023-05-06 19:19:09
次の方式でVPC-CNIモードのために作成したElastic Network Interface(ENI)を、指定のセキュリティグループにバインドできます。

前提条件

IPAMDコンポーネントのバージョンが、v3.2.0+(イメージtag で確認できます)であること。
IPAMDコンポーネントがセキュリティグループ機能を起動すると、起動パラメータは、:--enable-security-groups(無効がデフォルト)となります。
現在は複数Pod共有ネットワークカードモードのみをサポートしています。

IPAMDコンポーネントでセキュリティグループ特性を起動

tke-eni-ipamdコンポーネントバージョン >= v3.5.0

1. TKEコンソールにログインし、左側ナビゲーションバーでクラスターをクリックします。
2. クラスター管理ページで、起動したいセキュリティグループのクラスターIDを選択し、クラスター詳細ページに進みます。
3. クラスター詳細ページで、左側のコンポーネント管理を選択し、コンポーネント管理ページで、 eniipamd コンポーネント右側の設定更新をクリックします。



4. 設定更新ページで、セキュリティグループをチェックします。マスターネットワークカードのセキュリティグループを引き継ぐ場合は、セキュリティグループは指定しません。そうでない場合、セキュリティグループの指定が必要になります。

5. 完了をクリックします。

tke-eni-ipamdコンポーネントバージョン < v3.5.0あるいはコンポーネント管理の中に eniipamdコンポーネントがないこと

既存のtke-eni-ipamd deploymentを変更します。
kubectl edit deploy tke-eni-ipamd -n kube-system
次のコマンドを実行し、spec.template.spec.containers[0].argsの中に起動パラメータを追加します。 変更後、ipamdは自動で再起動し、有効化されます。 有効化された後、既存のノード上のセキュリティグループと関連のない補助ENIは、以下のポリシーでセキュリティグループにバインドされます。バインドされたとしても、設定したセキュリティグループとは強力に同期します。それまでに特性を起動している場合を除き、ノードセキュリティグループは設定済みとなります。ノードのENIを増分すると、すべて以下のセキュリティグループにバインドされます。
- --enable-security-groups
# デフォルトでご自身のネットワークカード/インスタンスのセキュリティグループを引き継ぐ場合、security-groupsパラメータは追加しません。
- --security-groups=sg-xxxxxxxx,sg-xxxxxxxx

既存ノード同期ネットワークカードセキュリティグループの設定方法

すでに設定済みのセキュリティグループの既存ノードを有効にする場合は、手動でセキュリティグループを無効化の上、再度有効化して同期させる必要があります。既存ノードの同期方法は以下のとおりです。
1. ノードにアノテーションを追加し、ノードのENIのセキュリティグループへのバインドをクリアにして無効化します。追加後は、ノードの既存ENIはすべてのセキュリティグループへのバインドを解除します。
kubectl annotate node <nodeName> --overwrite tke.cloud.tencent.com/disable-node-eni-security-groups="yes"
2. (ステップ1実行完了後2-5s待ちます)再度noを設定すると、上記ポリシーが設定するセキュリティグループへのバインドを再度行うことができます。
kubectl annotate node <nodeName> --overwrite tke.cloud.tencent.com/disable-node-eni-security-groups="no"

機能ロジック

起動パラメータ --security-groupsが未設定、あるいは値がブランクの場合、各ノードのセキュリティグループは自らのノードインスタンスがバインドしたセキュリティグループ(マスターネットワークカードがバインドしたセキュリティグループ)を継承します。特性を起動すると、ノードインスタンスセキュリティグループ(マスターネットワークカードセキュリティグループ)に変化が現れます。補助ネットワークカードのセキュリティグループは同期認識を行わなくなるので、ノードセキュリティグループを無効化し再度有効化して同期させる必要があります。操作方法については 既存ノードとネットワークセキュリティグループの同期の設定方法をご参照ください。
特性を起動後に、 --security-groupsを設定すると、各ノードセキュリティグループの設定は、そのセキュリティグループの集合となります。
特性を起動後に、 --security-groups パラメータを変更すると、増分したノードセキュリティグループの設定はグローバルパラメータと同期します。既存のノードセキュリティグループの設定は変わりません。既存のノードセキュリティグループの設定と同期させる場合は、ノードセキュリティグループを無効化し再度有効化して同期させる必要があります。操作方法については 既存ノードとネットワークカードセキュリティグループの同期の設定方法をご参照ください。
セキュリティグループが設定した優先度は、ノードセキュリティグループの設定と順序が一致しています。ご自身のネットワークカードを継承する場合は、マスターネットワークカードと一致させます。
次のコマンドを実行するとノードセキュリティグループの確認ができます。そのうちspec.securityGroupsドメインにはノードセキュリティグループの情報が含まれています。
kubectl get nec <nodeName> -oyaml
次のコマンドを実行するとノードセキュリティグループの変更ができます。変更後すぐに有効化されます。
kubectl edit nec <nodeName>
特性を起動すると、既存のネットワークカードがセキュリティグループにバインドされていない場合、ノードセキュリティグループにバインドされます。既存のネットワークカードのセキュリティグループはノードセキュリティグループと強力な同期が行われ、設定したノードセキュリティグループとの一致が保証されます。増分したネットワークカードはすべてノードセキュリティグループにバインドされます。

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック