LMコンテナのユーザー定義のシークレット
最終更新日 - 18年2023月XNUMX日
シークレットは、パスワード、トークン、キーなどの少量の機密データを含むオブジェクトです。 Kubernetes Secrets を使用すると、パスワードを構成ファイルにプレーンテキストで書き込むことなく、機密データ (パスワードなど) を使用するように Kubernetes クラスターを構成できます。 詳細については、「」を参照してください。 シークレット Kubernetes ドキュメントより。
注意: LM コンテナでシークレットを使用している場合、管理権限を付与すると、エンコードされた構成データが公開される可能性があります。
LMコンテナでユーザー定義のシークレットを構成するための要件
LM Container Helm Charts バージョン 5.0.0 以降を使用していることを確認してください。
LM コンテナーでの Kubernetes クラスターのユーザー定義シークレットの構成
シークレットの作成には、キーと値のペアを使用してデータを保存することが含まれます。 シークレットを作成するには、次の手順を実行します。
- 作ります
secrets.yamlBase64 形式でエンコードされる不透明なシークレット タイプを使用 次の例と同様です。
注意: を追加する data ラベルは、 accessID, accessKey, account field Base64 形式の値。
apiVersion: v1
data:
accessID: NmdjRTNndEU2UjdlekZhOEp2M2Q=
accessKey: bG1hX1JRS1MrNFUtMyhrVmUzLXE0Sms2Qzk0RUh7aytfajIzS1dDcUxQREFLezlRKW1KSChEYzR+dzV5KXo1UExNemxoT0RWa01XTXROVEF5TXkwME1UWmtMV0ZoT1dFdE5XUmpOemd6TlROaVl6Y3hMM2oyVGpo
account: bG1zYWdhcm1hbWRhcHVyZQ==
etcdDiscoveryToken: ""
kind: Secret
metadata:
name: user-provided-secret
namespace: default
type: Opaqueor
- 作ります
secrets.yaml次の例のような、不透明なシークレット stringData 型を使用します。
apiVersion: v1
stringData:
accessID: "6gcE3gtE6R7ezFa8Jv3d"
accessKey: "lma_RQKS+4U-3(kVe3-q4Jk6C94EH{k+_j23KWCqLPDAK{9Q)mJH(Dc4~w5y)z5PLMzlhODVkMWMtNTAyMy00MTZkLWFhOWEtNWRjNzgzNTNiYzcxL3j2Tjh"
account: "lmadminuser"
etcdDiscoveryToken: ""
kind: Secret
metadata:
name: user-provided-secret
namespace: default
type: Opaque- 入力する アクセスID, アクセスキー, アカウント フィールド値。
注意: 既存のクラスターがある場合は、Kubernetes クラスターの作成時に使用したものと同じ値を入力します。
- を助けて
secrets.yamlファイルにソフトウェアを指定する必要があります。 - を開いて編集します
lm-container-configuration.yamlファイルにソフトウェアを指定する必要があります。 - 新しいフィールドを入力してください ユーザー定義の秘密 次の例のような必要な値を指定します。
注意: の値 ユーザー定義の秘密 新しく作成されたシークレット名と同じである必要があります。
argus:
clusterName: secret-cluster
global:
accessID: ""
accessKey: ""
account: ""
userDefinedSecret: "user-provided-secret"- を助けて
lm-container-configuration.yamlファイルにソフトウェアを指定する必要があります。 - ターミナルで次のコマンドを入力します。
Kubectl apply -f secrets.yaml -n <namespace_where_lm_container will be installed>注意: シークレットを適用して LM コンテナをインストールしたら、セキュリティ上の理由から、lm-container-configuration.yaml 内の accessID、accessKey、および account フィールドの値を削除します。
次の表に、Secrets フィールドを示します。
| フィールド名 | フィールドタイプ | 詳細説明 |
| アクセスID | 義務的な | LMアクセスID |
| アクセスキー | 義務的な | LMアクセスキー |
| アカウント | 義務的な | LMアカウント名 |
| argusProxyPass | 任意 | 引数プロキシのパスワード |
| 引数プロキシユーザー | 任意 | argus プロキシ ユーザー名 |
| コレクタープロキシパス | 任意 | コレクタプロキシパスワード |
| コレクタープロキシユーザー | 任意 | コレクタプロキシのユーザー名 |
| コレクターセットコントローラープロキシパス | 任意 | コレクターセットコントローラーのプロキシパスワード |
| コレクターセットコントローラープロキシユーザー | 任意 | コレクターセットコントローラープロキシユーザー名 |
| etcdDiscoveryToken | 任意 | etcd ディスカバリートークン |
| プロキシパス | 任意 | グローバルプロキシパスワード |
| プロキシユーザー | 任意 | グローバルプロキシのユーザー名 |
Kubernetes クラスターのプロキシ詳細を含むシークレットの例
以下 secrets.yaml ファイルには、ユーザー定義のシークレットとプロキシの詳細が表示されます。
apiVersion: v1
data:
accessID:
accessKey:
account:
etcdDiscoveryToken:
proxyUser:
proxyPass:
argusProxyUser:
argusProxyPass:
cscProxyUser:
cscProxyPass:
collectorProxyUser:
collectorProxyPass:
kind: Secret
metadata:
name: user-provided-secret
namespace: default
type: Opaqueプロキシには XNUMX つのタイプがあります。 グローバル プロキシとコンポーネント レベル プロキシ。 グローバル プロキシを指定すると、すべての Argus、Collectorset-Controller、およびコレクター コンポーネントに適用されます。 コンポーネント レベルのプロキシとグローバル プロキシの両方を追加すると、コンポーネント レベルのプロキシが優先されます。 たとえば、コレクター プロキシとグローバル プロキシを追加すると、コレクター プロキシがコレクターに適用され、グローバル プロキシが他の Argus コンポーネントと Collectorset-Controller コンポーネントに適用されます。
以下は、 lm-container-configuration.yaml ファイル:
global:
accessID: ""
accessKey: ""
account: ""
userDefinedSecret: <secret-name>
proxy:
url: "proxy_url_here"