OpenShift Origin (OKD) 3.11 : Openstack Keystone で認証する2018/11/20 |
当サイトの例では OpenShift Origin インストール時の設定で、OpenShift
クラスターへの認証プロバイダーに HTPasswd を設定しましたが、認証プロバイダーには HTPasswd の他、様々な認証基盤が利用できます。
例として 認証プロバイダーに Openstack Keystone を利用するよう設定します。
当例では以下のような環境を例に OpenShift クラスターを構成しています。
ここへ Keystone サーバーを別途準備して、OpenShift クラスターの認証基盤とします。 -----------+--------------+-------------+----------------------------+------------ |10.0.0.25 | |10.0.0.51 |10.0.0.52 +----------+-----------+ | +----------+-----------+ +----------+-----------+ | [ ctrl.srv.world ] | | | [ node01.srv.world ] | | [ node02.srv.world ] | | (Master Node) | | | (Compute Node) | | (Compute Node) | | (Infra Node) | | | | | | | (Compute Node) | | | | | | +----------------------+ | +----------------------+ +----------------------+ -----------+--------------+ |10.0.0.30 +----------+-----------+ | [keystone.srv.world ]| | Openstack Keystone | | | | | +----------------------+ |
[1] | |
[2] | root または クラスター管理ユーザーでログインし、設定を変更します。 |
# 146行目:以下のように変更 identityProviders: - challenge: true login: true mappingMethod: claim # 任意の名称 name: keystone_auth provider: apiVersion: v1 kind: KeystonePasswordIdentityProvider # keystone のドメイン名 (Openstackデフォルトは [default]) domainName: default # keystone への認証URL url: http://10.0.0.30:5000 ..... .....[origin@ctrl ~]$ sudo /usr/local/bin/master-restart api [origin@ctrl ~]$ sudo /usr/local/bin/master-restart controllers |
[3] | Keystone サーバーで任意のユーザーを登録しておきます。 |
[root@keystone ~(keystone)]# openstack user create --domain default --password mypassword redhat +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | 7b4ed77c957942e0899a5ca80823aef9 | | name | redhat | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ |
[4] | 登録したユーザーで認証できるか確認しておきます。 |
[cent@ctrl ~]$ oc login
Authentication required for https://ctrl.srv.world:8443 (openshift)
Username: redhat
Password:
Login successful.
You don't have any projects. You can try to create a new project, by running
oc new-project <projectname>
[cent@ctrl ~]$
[cent@ctrl ~]$ oc whoami redhat oc new-project myproject Now using project "myproject" on server "https://ctrl.srv.world:8443". You can add applications to this project with the 'new-app' command. For example, try: oc new-app centos/ruby-25-centos7~https://github.com/sclorg/ruby-ex.git to build a new example application in Ruby. ..... ..... |
Sponsored Link |