2. ユーザ管理¶
本節では、Workload Manager を利用するために必要な以下の手順について説明します。
コンテナプラットフォーム固有のユーザ登録
Workload Managerのユーザ定義
2.1. コンテナプラットフォーム固有のユーザ登録¶
2.1.1. OpenShift Container Platformの場合¶
2.1.1.1. ユーザ登録¶
ユーザ登録手順は、OpenShift Container Platform の認証プロバイダによって異なります。 利用中の認証プロバイダは 「/etc/origin/master/master-config.yaml」の「oauthConfig/identityProviders/name」で確認可能です。
[例]
oauthConfig:
assetPublicURL: https://XXXX:8443/console/
grantConfig:
method: auto
identityProviders:
- challenge: true
login: true
mappingMethod: claim
name: htpasswd_auth
provider:
apiVersion: v1
file: /etc/origin/master/htpasswd
kind: HTPasswdPasswordIdentityProvider
認証プロバイダーには、HTPasswd(ファイル)、LDAP や Openstack Keystone なども使用可能ですが、下記では、認証プロバイダーに HTPasswd を設定している場合の例です。 下記のコマンドを実行してユーザ登録します。
$ sudo htpasswd {htpasswdファイルのパス} {user name}
[実行例]
$ sudo htpasswd /etc/origin/master/htpasswd wm-user
詳細は、下記、OpenShift Container Platform のマニュアルをご参照下さい。
注釈
上記した内容は、OpenShift Container Platform 3の場合です。OpenShift Container Platform 4については、下記、マニュアルをご参照ください。
2.1.1.2. ユーザ権限設定¶
上記で作成したユーザに対して、適切な権限を付与します。
例えば、クラスター管理者(cluster-admin)権限を付与する場合は、以下のコマンドで行います。
$ oc adm policy add-cluster-role-to-user cluster-admin {user name}
[実行例]
$ oc adm policy add-cluster-role-to-user cluster-admin wm-user
注釈
Workload Managerは、クラスター管理者(cluster-admin)権限で動作しており、後述するWorkload Managerのユーザ定義に基づいて管理機能を提供します。そのため、ユーザに付与されたOpenShift Container Platformの権限は、Workload Managerの動作に直接作用することはありません。
2.1.2. Amazon EKSの場合¶
Workload Managerは、Amazon Cognitoと連携してユーザ認証を行うため、インストールする前にAmazon Cognitoにユーザプールを作成し、必要な情報をインストール時に指定してください。ユーザ登録は、インストール後で構いません。
ユーザプールの作成、ユーザの登録についての詳細は、Amazon Cognitoのマニュアルをご参照ください。
2.2. Workload Managerのユーザ定義¶
マルチテナント運用の場合、テナント管理者であるユーザが管理できるネームスペースが限定されるため、Workload Managerによる管理操作も同様に、対象のネームスペースを限定する必要があります。
Workload Managerのユーザ定義では、次のようなユーザ種別を選択することで、ネームスペースを限定することが可能です。
クラスター管理者
すべてのネームスペースが管理操作の対象となります。
非クラスター管理者(テナント管理者)
指定したネームスペースのみが管理操作の対象となります。 ポリシー制御の機能を利用できません。
ユーザ定義は、ConfigMap「user-authority-config」で行います。
詳細は、「リファレンス集」の 「ユーザ定義の設定」 、 「ユーザ定義の設定」 を参照してください。