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

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

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

バージョン 2. 0 istio-installation.yaml の例 の例

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

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

す。ServiceMeshMemberRoll に一覧表示されているプロジェクトのみがコントロールプレーンの影響 を受けます。プロジェクトは、特定のコントロールプレーンのデプロイメント用にメンバーロールに追 加するまでサービスメッシュに属しません。

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

注記 注記

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

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

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

前提条件 前提条件

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

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

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

手順 手順

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

$ oc create -n istio-system -f <istio_installation.yaml>

$ oc get smcp -n 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 を変更してプロジェクトをメンバーとし て追加します。任意の数のプロジェクトを追加できますが、プロジェクトは単一単一の

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

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

1.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 にする必要があります。

$ oc login

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

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

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

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

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

メッシュ管理者がサービスメッシュへのアクセスを明示的に付与するまで、これらのプロジェクト管理 者はこれを 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 のロールバインディングを追加します。

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

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

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