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 のマニュアルをご参照下さい。

https://access.redhat.com/documentation/ja-jp/openshift_container_platform/3.11/html/configuring_clusters/install-config-configuring-authentication

注釈

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」で行います。

詳細は、「リファレンス集」の 「ユーザ定義の設定」「ユーザ定義の設定」 を参照してください。