• 検索結果がありません。

Red Hat OpenShift Service Mesh メンバーロールの作成

ドキュメント内 OpenShift Container Platform 4.6 サービスメッシュ (ページ 160-165)

第 2 章 サービスメッシュ 1.X

2.5. RED HAT OPENSHIFT SERVICE MESH のインストール

2.5.7. Red Hat OpenShift Service Mesh メンバーロールの作成

ServiceMeshMemberRoll は、コントロールプレーンに属するプロジェクトを一覧表示しま

す。ServiceMeshMemberRoll に一覧表示されているプロジェクトのみがコントロールプレーンの影響 を受けます。プロジェクトは、特定のコントロールプレーンのデプロイメント用にメンバーロールに追

$ oc new-project istio-system

$ oc create -n istio-system -f istio-installation.yaml

$ oc get smcp -n istio-system

NAME READY STATUS RESTARTS AGE grafana-7bf5764d9d-2b2f6 2/2 Running 0 28h istio-citadel-576b9c5bbd-z84z4 1/1 Running 0 28h istio-egressgateway-5476bc4656-r4zdv 1/1 Running 0 28h istio-galley-7d57b47bb7-lqdxv 1/1 Running 0 28h istio-ingressgateway-dbb8f7f46-ct6n5 1/1 Running 0 28h istio-pilot-546bf69578-ccg5x 2/2 Running 0 28h istio-policy-77fd498655-7pvjw 2/2 Running 0 28h istio-sidecar-injector-df45bd899-ctxdt 1/1 Running 0 28h istio-telemetry-66f697d6d5-cj28l 2/2 Running 0 28h jaeger-896945cbc-7lqrr 2/2 Running 0 11h kiali-78d9c5b87c-snjzh 1/1 Running 0 22h prometheus-6dff867c97-gr2n5 2/2 Running 0 28h

加するまでサービスメッシュに属しません。

ServiceMeshControlPlane と同じプロジェクトに、 default という名前の ServiceMeshMemberRoll リソースを作成する必要があります。

注記 注記

メンバープロジェクトは、サービスメッシュコントロールプレーンのインストールが成 功した場合にのみ更新されます。

2.5.7.1. Web コンソールからのメンバーロールの作成 コンソールからのメンバーロールの作成

以下の手順に従って、Web コンソールを使用して 1 つ以上のプロジェクトを Service Mesh Member Roll に追加します。

前提条件 前提条件

Red Hat OpenShift Service Mesh Operator がインストールされ、検証されていること。

インストールされた ServiceMeshControlPlane の場所。

サービスメッシュに追加する既存プロジェクトの一覧。

手順 手順

1. メッシュのプロジェクトがない場合や、ゼロから作業を開始する場合は、プロジェクトを作成 します。これは istio-system とは異なるものである必要があります。

a. Home → Projects に移動します。

b. Name フィールドに名前を入力します。

c. Create をクリックします。

2. OpenShift Container Platform Web コンソールにログインします。

3. Operators → Installed Operators に移動します。

4. Project メニューをクリックし、一覧から ServiceMeshControlPlane がデプロイされているプ ロジェクト (例: istio-system) を選択します。

5. Red Hat OpenShift Service Mesh Operator をクリックします。

6. All Instances タブをクリックします。

7. Create New をクリックしてから Create Istio Service Mesh Member Rollを選択します。

注記 注記

Operator がリソースのコピーを終了するまでに少し時間がかかる場合がありま

す。そのため、Create Istio Service Mesh Member Rollボタンが表示されるよ うに画面を更新する必要がある場合があります。

8. Create Service Mesh Member Rollページで、YAML を変更してプロジェクトをメンバーとし

8. Create Service Mesh Member Rollページで、YAML を変更してプロジェクトをメンバーとし て追加します。任意の数のプロジェクトを追加できますが、プロジェクトは単一単一の

ServiceMeshMemberRoll リソースしか属することができません。

9. Create をクリックして、Service Mesh Member Roll を保存します。

2.5.7.2. CLI からのメンバーロールの作成 からのメンバーロールの作成

以下の手順に従って、コマンドラインからプロジェクトを ServiceMeshMemberRoll に追加します。

前提条件 前提条件

Red Hat OpenShift Service Mesh Operator がインストールされ、検証されていること。

インストールされた ServiceMeshControlPlane の場所。

サービスメッシュに追加するプロジェクトの一覧。

OpenShift CLI (oc) へのアクセスが可能です。

手順 手順

1. OpenShift Container Platform CLI にログインします。

2. istio-system の例では、ServiceMeshMemberRoll リソースを ServiceMeshControlPlane リ ソースと同じプロジェクトに作成します。リソースの名前は default にする必要があります。

3. デフォルトの YAML を変更して、プロジェクトを membersとして追加します。任意の数のプ ロジェクトを追加できますが、プロジェクトは単一単一の ServiceMeshMemberRoll リソースし か属することができません。

2.5.7.3. Red Hat OpenShift Service Mesh メンバーの作成 メンバーの作成

ServiceMeshMember リソースは、ServiceMeshMemberRoll にメンバーを直接追加する特権を持たな いサービスメッシュユーザーが作成できます。プロジェクト管理者にはプロジェクトで

ServiceMeshMember リソースを作成するためのパーミッションが自動的に付与されますが、サービス

メッシュ管理者がサービスメッシュへのアクセスを明示的に付与するまで、これらのプロジェクト管理

$ oc login

$ oc create -n istio-system -f servicemeshmemberroll-default.yaml

apiVersion: maistra.io/v1 kind: ServiceMeshMemberRoll metadata:

name: default

namespace: istio-system spec:

members:

# a list of projects joined into the service mesh - your-project-name

- another-project-name

者はこれを ServiceMeshControlPlane にポイントすることはできません。管理者は、以下のように ユーザーに mesh-user ユーザーロールを付与してメッシュにアクセスするパーミッションをユーザー に付与できます。

$ oc policy add-role-to-user -n <control_plane_namespace> --role-namespace

<control_plane_namespace> mesh-user <user_name>.

管理者はコントロールプレーンプロジェクトで mesh user ロールバインディングを変更し、アクセス が付与されたユーザーおよびグループを指定できます。ServiceMeshMember は、プロジェクトを、参 照するコントロールプレーンプロジェクト内の ServiceMeshMemberRoll に追加します。

mesh-users ロールバインディングは、管理者が ServiceMeshControlPlane リソースを作成した後に 自動的に作成されます。管理者は以下のコマンドを使用してロールをユーザーに追加できます。

$ oc policy add-role-to-user

管理者は、ServiceMeshControlPlane リソースを作成する前に、mesh-user ロールバインディングを 作成することもできます。たとえば、管理者は ServiceMeshControlPlane リソースと同じ oc apply 操作でこれを作成できます。

この例では、alice のロールバインディングを追加します。

2.5.8. サービスメッシュからのプロジェクトの追加または削除

以下の手順に従って、Web コンソールを使用して既存の Service Mesh ServiceMeshMemberRoll リ ソースを変更します。

任意の数のプロジェクトを追加できますが、プロジェクトは単一単一の ServiceMeshMemberRoll リソースしか属することができません。

ServiceMeshMemberRoll リソースは、対応する ServiceMeshControlPlane リソースが削除 apiVersion: maistra.io/v1

kind: ServiceMeshMember metadata:

name: default spec:

controlPlaneRef:

namespace: <control_plane_namespace>

name: minimal-install

apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding

metadata:

namespace: <control_plane_namespace>

name: mesh-users roleRef:

apiGroup: rbac.authorization.k8s.io kind: Role

name: mesh-user subjects:

- apiGroup: rbac.authorization.k8s.io kind: User

name: alice

ServiceMeshMemberRoll リソースは、対応する ServiceMeshControlPlane リソースが削除 されると削除されます。

2.5.8.1. Web コンソールからのメンバーロールの変更 コンソールからのメンバーロールの変更

前提条件

前提条件

Red Hat OpenShift Service Mesh Operator がインストールされ、検証されていること。

既存の ServiceMeshMemberRoll リソース。

ServiceMeshMemberRoll リソースを持つプロジェクトの名前。

メッシュに/から追加または削除するプロジェクトの名前。

手順 手順

1. OpenShift Container Platform Web コンソールにログインします。

2. Operators → Installed Operators に移動します。

3. Project メニューをクリックし、一覧から ServiceMeshControlPlane がデプロイされているプ ロジェクト (例: istio-system) を選択します。

4. Red Hat OpenShift Service Mesh Operator をクリックします。

5. Istio Service Mesh Member Rollタブをクリックします。

6. default リンクをクリックします。

7. YAML タブをクリックします。

8. YAML を変更して、プロジェクトをメンバーとして追加または削除します。任意の数のプロ

ジェクトを追加できますが、プロジェクトは単一単一の ServiceMeshMemberRoll リソースしか 属することができません。

9. Save をクリックします。

10. Reload をクリックします。

2.5.8.2. CLI からのメンバーロールの変更 からのメンバーロールの変更

以下の手順に従って、コマンドラインを使用して既存の Service Mesh Member Roll を変更します。

前提条件 前提条件

Red Hat OpenShift Service Mesh Operator がインストールされ、検証されていること。

既存の ServiceMeshMemberRoll リソース。

ServiceMeshMemberRoll リソースを持つプロジェクトの名前。

メッシュに/から追加または削除するプロジェクトの名前。

OpenShift CLI (oc) へのアクセスが可能です。

手順 手順

1. OpenShift Container Platform CLI にログインします。

2. ServiceMeshMemberRoll リソースを編集します。

3. YAML を変更して、プロジェクトをメンバーとして追加または削除します。任意の数のプロ

ジェクトを追加できますが、プロジェクトは単一単一の ServiceMeshMemberRoll リソースしか 属することができません。

ドキュメント内 OpenShift Container Platform 4.6 サービスメッシュ (ページ 160-165)