プライベート・カタログへのソフトウェアのオンボード

ソフトウェアをオンボードするプロセスには、プライベート・カタログへのバージョンのインポート、デプロイメントの詳細の構成、ライセンス要件の設定、必要なターゲット・インフラストラクチャーにバージョンを正常にインストールできるかどうかの検証が含まれます。

開始前に

  1. GitHub,、 GitLab,、または Azure のリポジトリ内のリリースにソースコードをアップロードしてください。 詳しくは、 ソース・コード・リポジトリーのセットアップ を参照してください。

  2. 従量課金 (PAYG) またはサブスクリプションのアカウントを使用していることを確認してください。 詳しくは、アカウント・タイプの表示を参照してください。

  3. カタログ管理サービスに対するエディター役割が割り当てられていることを確認してください。 アカウント管理サービスへのアクセス権限の割り当てを参照してください。

  4. 以前に作成されたテスト環境をセットアップします。

プライベート・カタログへのバージョンのインポート

ソフトウェアのバージョンをプライベート・カタログにインポートするには、以下の手順を実行します。 プライベート・カタログは、ソフトウェアを販売するためのセットアップの一環で作成されたものです。

  1. IBM Cloud コンソールで、 ナビゲーションメニュー アイコンナビゲーションメニューアイコン > パートナーセンター > マイプロダクトの順にクリックします。

  2. オンボードする製品を選択します。

  3. 「ソフトウェア」タブで、 バージョンのインポート をクリックします。

  4. デプロイメント方式を選択します。

  5. 製品をプライベート・リポジトリーまたはパブリック・リポジトリーのどちらから追加するかを選択します。 オペレーターの場合は、ソース・リポジトリーを選択してから、プライベート・リポジトリーまたはパブリック・リポジトリーを選択します。

  6. ソース URL を入力します。

    ソフトウェア・タイプごとに、以下のサポートされるフォーマットのリストを確認できます。

    • Helm チャート: https://raw.githubusercontent.com/IBM/charts/master/repo/ibm-helm
    • Node-RED オペレーター: https://github.com/IBM-Cloud/operator-bundle-sample/archive/refs/tags/v0.0.3.tar.gz
    • Red Hat OpenShift on IBM Cloud レジストリのオペレーターバンドル:例として、認定リポジトリの利用可能なオペレーターの一覧から「 Akka Cluster Operator 」を選択してください。
    • OVA イメージ: https://github.com/gcatalog/OVA-sample/blob/main/ova-sample.yaml
    • Terraform テンプレート: https://github.com/IBM-Cloud/terraform-sample/archive/refs/tags/v1.1.0.tar.gz
    • Terraform を使用した仮想サーバー・イメージ: https://github.com/IBM-Cloud/isv-vsi-product-deploy-sample/releases/download/v1.0/isv-vsi-product-deploy-sample.tar.gz
    • VPC の仮想サーバー・イメージ: VPC にインポートされた使用可能なイメージのリストからイメージを選択するか、アカウントに新規イメージをインポートします。

    VPC の仮想サーバー・イメージは、一度に 1 つのプライベート・カタログ内の 1 つの製品にのみ追加できます。 インポートする仮想サーバー・イメージが既に別の製品にインポートされている場合は、仮想サーバー・イメージを新しい製品に追加する前に、その製品からイメージを削除するか、製品を削除する必要があります。

    プライベート・リポジトリーから製品を追加する場合は、パーソナル・アクセス・トークンを提供するか、シークレットを使用するかを選択できます。 ユーザーにパーソナル・アクセス・トークンを提供する代わりに、シークレットへのアクセス権限をユーザーに提供し、シークレットにトークンを追加して、シークレットによって許可されるすべてのトークンとアクセス権限を一元的に管理することができます。

    ソフトウェアが にある場合、 はプロジェクトアクセストークンを使用した GitLab リリースのダウンロード GitLab, をサポートしていないため、個人アクセストークンを使用する必要があります。 必要な「read_api パーミッションを持つ個人アクセストークンは、こちらの手順に従って作成することができます。

    • パーソナル・アクセス・トークンを使用する場合、 いいえ を選択して、シークレットを使用せずに自身のパーソナル・アクセス・トークンを提供することを示します。
    • シークレットを使用する場合、 はい を選択して Secrets Manager から選択してください をクリックします。 サービス・インスタンス、シークレット・グループ、およびシークレットを選択します。 対象のシークレットが表示されない場合は、正しいシークレット・グループとサービス・インスタンスを使用していることを確認してください。

    シークレットを作成していないか、シークレットを使用するための適切なアクセス権限がない場合は、作成されたサービス・インスタンスがあってもメッセージ「No service instance available」と表示される場合があります。

  7. 必要に応じて、デプロイメント・ターゲットを設定し、ソフトウェアのバージョンを追加します。

  8. バージョンを追加 をクリックします。

バージョン詳細の構成

  1. バージョン・リストから、対象のソフトウェアの行をクリックします。
  2. バージョンの詳細を確認し、 次へ をクリックします。
  3. ソフトウェア・タイプによっては、デプロイメント値の設定など、追加のステップが必要になる場合があります。
  4. 次へ をクリックします。

デプロイメント値の設定

ソフトウェア・タイプに該当する場合は、ユーザーがソフトウェアのインストール時に指定する必要があるデプロイメント値を設定できます。 新しいデプロイメント値を追加することも、既存のバージョンからデプロイメント値をインポートすることもできます。

新規デプロイメント値の追加

  1. バージョンの構成 > 次へ をクリックします。
  2. デプロイメント値の追加 をクリックします。
  3. テーブルで、 「パラメーター」 > 「追加」 を選択して、すべてのオプションを選択して追加します。
  4. 必要に応じて、テーブルからパラメーターを選択して 「編集」 をクリックすることで、パラメーターをカスタマイズできます。

既存の値のインポート

既存のバージョンに対して以前にデプロイメント値を設定しており、その値を現在のバージョンにインポートしたい場合は、以下の手順を実行してください。

インポートされた値によって、現行バージョンに既に追加済みのデプロイメント値が置き換えられることはありません。

  1. バージョンの構成 > 次へ をクリックします。
  2. デプロイメント値の追加 をクリックします。
  3. 以前のバージョンから値をインポート 」をクリックします
  4. インポートする値が含まれているバージョンを選択します。
  5. インポート をクリックします。
  6. 必要に応じて、テーブルからパラメーターを選択して 「編集」 をクリックすることで、パラメーターをカスタマイズできます。

出力値の編集の説明

Terraform テンプレートの出力値の説明を改善して、ユーザーがパラメーターの目的を理解しやすくすることができます。 テンプレートに含めるすべての出力値の説明を更新できます。

出力値を追加するには、Terraform テンプレートの新規インポート・バージョンに出力値を含める必要があります。

商品の出力値の説明を編集するには、以下のステップを実行します。

  1. バージョンの構成 > 次へ をクリックします。
  2. 「出力値の説明」セクションで、更新するパラメーターの新しい説明を指定します。
  3. 次へ をクリックします。

IAM アクセスの定義

ご使用のソフトウェア・タイプに該当する場合は、 IBM Cloud カタログから製品をインストールするために必要なサービス・アクセス役割およびプラットフォーム・アクセス役割を追加できます。 新しい IAM アクセス権限を定義することも、以前のバージョンで設定した IAM アクセス権限をインポートすることもできます。

新規 IAM アクセス権限の定義

製品のアクセス権限を定義するには、以下の手順を使用します。

  1. バージョンの構成 > 次へ > 次へ をクリックします。
  2. 追加 をクリックします。
  3. サービスと、必要なサービスおよびプラットフォームのアクセス権限を選択します。
    • 「サービスアクセス」ロールは、サービスの利用およびサービスAPIの呼び出しを行うためのアクセス権限を付与します。
    • 「プラットフォームアクセス」ロールでは、インスタンスの作成、インスタンスとアプリとの連携、ユーザーアクセス権の割り当てなど、プラットフォームリソースに対する操作を実行できます。
  4. 保存 をクリックします。

既存の IAM アクセス権限のインポート

既存のバージョンの IAM アクセス権限を以前に定義したことがあり、その値を現行バージョンにインポートする場合は、以下のステップを実行します。

インポートされた IAM アクセス権限は、現在のバージョンに既に追加した IAM アクセス権限に置き換わるものではありません。

  1. バージョンの構成 > 次へ > 次へ をクリックします。
  2. 追加 をクリックします。
  3. 以前のバージョンからの IAM アクセス権限のインポート をクリックします。
  4. インポートしたい IAM アクセス権が含まれているバージョンを選択してください。
  5. 追加 をクリックします。

使用条件の追加

ユーザーがソフトウェアのインストール時に IBM Cloud サービス契約以外のライセンス契約に同意する必要がある場合は、各契約条件の URL を指定するか、既存のバージョンからライセンスをインポートします。

新規ご使用条件の追加

  1. [ ライセンス契約の追加 ] > [ ライセンスの追加 ] をクリックします。
  2. 名前と URL を入力して、 ライセンスを追加 をクリックします。
  3. 追加の使用条件をすべて入力したら、 次へ をクリックします。

ご使用条件のインポート

既存のバージョンのご使用条件を以前に追加したことがあり、そのライセンスを現行バージョンにインポートする場合は、以下の手順を実行します。

インポートされたライセンスによって、現行バージョンに追加済みのライセンス契約が置き換えられることはありません。

  1. [ ライセンス契約の追加 ] > [ ライセンスの追加 ] をクリックします。
  2. 以前のバージョンからのライセンスのインポート をクリックします。
  3. インポートするライセンスが含まれているバージョンを選択します。
  4. インポート をクリックします。

README ファイルの確認

ユーザーがソフトウェアをインストールすると、README リンクをクリックして製品情報を表示できます。 「Readme」リンクに記載されている情報は、ソースリポジトリにアップロードしたreadmeファイルから生成されたものです。

  1. 「README の編集」タブで、 編集 アイコン 「編集」アイコンをクリックします。
  2. ユーザーがソフトウェアをインストールするときに README ファイルの情報がどのように表示されるのかをプレビューします。
  3. 更新するには、「README」セクションのタイトルの横にある 編集 アイコン編集アイコンをクリックします。
  4. 保存 をクリックします。
  5. 次へ をクリックします。

VPC の仮想サーバー・イメージをインポートする場合、README ファイルは自動的に生成されません。 README ファイル・テンプレート の内容をコピーして貼り付け、必要に応じて更新します。

製品の検証

製品を検証する手順は、オンボードするソフトウェアのタイプによって異なります。

  1. 「製品の検証」タブで、検証のターゲットを構成し、 次へ をクリックします。 この手順は、Helm チャートおよびオペレーターにのみ適用されます。
  2. ワークスペースを構成し、 次へ をクリックします。 この手順は、Helm チャート、オペレーター、Terraform テンプレート、Terraform を使用した仮想サーバー・イメージだけに適用されます。
  3. 検証 をクリックします。

検証プロセスの進行状況をモニターするには、 ログを表示 をクリックします。

API を使用したソフトウェアの検証

カタログ管理 APIを呼び出して、ソフトウェアを検証できます。

String authRefreshToken = "{authRefreshToken}";
String versionLocator = "{versionLocator}";
ValidationInstallOptions installOptions = new ValidationInstallOptions.Builder().xAuthRefreshToken(authRefreshToken).versionLocId(versionLocator).build();
Response<Void> response = service.validationInstall(installOptions).execute();
System.out.println(response.getResult());
versionLocator = "{versionLocator}";
authRefreshToken = "{authRefreshToken}";
response = await service.validationInstall({ 'versionLocatorId': versionLocator, 'xAuthRefreshToken': authRefreshToken });
console.log(response);
authRefreshToken="{authRefreshToken}"
versionLocator = "{versionLocator}"
response = self.service.validation_install(version_locator_id=versionLocator, x_auth_refresh_token=authRefreshToken)
print(response)
versionLocator := "{versionLocator}"
authRefreshToken := "{authRefreshToken}"
installOptions := service.NewValidationInstallOptions(versionLocator, authRefreshToken)
response, _ := service.ValidationInstall(installOptions)
fmt.Println(response)

セキュリティおよびコンプライアンス管理措置の管理

コントロールは、セキュリティーとコンプライアンスの要件を満たすために使用される安全機能です。 カタログには、によってサポート Workload Protection されているコントロールのみが表示されます。 詳しくは、 README ファイルのコントロールの書式設定 を参照してください。

コントロールの追加

コントロールを追加するには、以下の手順に従ってください

  1. コンプライアンス管理ページで、 [コントロールの追加] を選択します。

  2. インスタンスを選択 Workload Protection し、次にポリシーを選択してください。

    まだインスタンス Workload Protection をプロビジョニングしていない場合は、カタログ IBM Cloud から インスタンスを設定し、 アカウントIBM Cloudに対してCloud Security Platform Security Posture Management (CSPM)を有効にする 必要があります。 次に、 既存の Workload Protection インスタンスまたは新しいインスタンスのいずれかと統合 するための手順を完了してください。

  3. ポリシー全体を追加するか、またはコントロールの一部のみを追加するかを選択してください。

  4. ポリシー全体を追加することを選択した場合は、次のステップに進んでください。 コントロールの一部を追加する場合、追加したいコントロールを選択してください。

  5. 追加 をクリックします。

在庫の追加結果 Workload Protection

カタログで製品を評価する際に、ユーザーが主張されたコンプライアンスを確認できるよう、 Workload Protection [製品名]からの在庫結果を追加できます。

では Workload Protection、インベントリは1日1回更新されます。 在庫をカタログリストに追加する前に、リソースを展開し、在庫の更新を待機する必要があります。 詳細については、 在庫 をご覧ください。

在庫の結果を追加するには、以下の手順に従ってください:

  1. [コンプライアンスの管理] ページで、[ 結果を追加 ] をクリックします。
  2. 以前にプロビジョニングしたインスタンス Workload Protection を選択してください。
  3. 適用 」をクリックして最新の在庫結果を適用します。