IBM Cloud Docs
Schematics ワークスペースからプロジェクトへのリソースの移動

Schematics ワークスペースからプロジェクトへのリソースの移動

IBM Cloud® Schematics ワークスペース から IBM Cloud® プロジェクトにリソースを移動することで、エンタープライズ・アーキテクチャーのライフサイクルを管理できます。 Terraform およびデプロイ可能なアーキテクチャーを使用するために Schematics ワークスペースを使用できますが、プロジェクトを使用してライフサイクル全体を大規模に管理することができます。 このタスクを完了すると、プライベート・カタログにデプロイ可能なアーキテクチャー・タイルが作成され、デプロイ可能なアーキテクチャーのライフサイクルをプロジェクトから管理できるようになります。

このプロセス中に、CLI コマンド ibmcloud catalog utility create-product-from-workspace および ibmcloud project config-create を使用して、一緒にリンクされたカタログとプロジェクトを作成してから、 Schematics ワークスペース・リソースをプロジェクトに移動することができます。

デプロイされたリソースをプロジェクトに移動するプロセスを監視し、学習します。

見て学ぶ

動画の文字起こし

私は、 IBM Cloud 開発チームの STSM の Gili Mendel です。 IBM Cloud のデプロイ可能なアーキテクチャーまたはプロジェクト内の Schematics ワークスペースを移動する方法を説明します。

Schematics ワークスペースは、 IBM Cloudで Terraform 自動化を実行する方法です。 ワークスペースには、Terraform テンプレートの取り出し元の Git リポジトリーへのリンクが保持されます。 また、テンプレート変数と、その作成時のリソース状態も保持します。

クラウド・リソース・プロバイダーとの緊密な統合により、状態の高可用性 IBM Cloud® Object Storage バケットを維持することなく、クラウド上で Terraform IaaS 自動化を実行することができます。

ただし、複数の自動化を実行している場合、このアプローチは拡張されません。 リソースの管理と新規バージョンのテンプレートのロールアップは、困難な作業になる可能性があります。

企業は Terraform の自動化を活用していますが、デプロイ可能なアーキテクチャーがすべてです。 コンプライアンス・フットプリントの指定、コスト見積もり、およびアーキテクチャーのデプロイメントを自動化する Terraform テンプレートを使用して、リファレンス・アーキテクチャーを公開します。

Git リポジトリーは、アーキテクチャーとその自動化を反復してビルドするために使用されます。 アーキテクチャーをデプロイするユーザーに表示される場合と表示されない場合があります。 アーキテクチャー自体には、バージョンのアップグレードを含むライフサイクルがあります。

ステップ 1: カタログ管理 CLI を使用して、既存のワークスペースからデプロイ可能なアーキテクチャーを作成し、その新規バージョンを公開するために必要なライフサイクルを作成します。

ステップ 2: プロジェクト CLI を使用して、プロジェクトによってデプロイ可能なアーキテクチャーとして管理されるようにワークスペースを変更します。 そのため、これらのリソースは、単一のデプロイ可能なアーキテクチャー・バージョン構成として扱うことができ、多くの環境にわたって管理者アカウントから管理することができます。 バージョンのマイグレーション、コスト、およびコンプライアンスのフットプリントはより単純であり、すべてデプロイされるアーキテクチャーに関係しています。

開始前に

  • IBM Cloud® Schematics ワークスペース が作成されており、ご使用のアカウントにリソースがプロビジョンされていることを確認してください。 プロジェクトとワークスペースは同じアカウント内になければなりません。
  • Git ソース・リポジトリーを認証するための GIT_TOKEN 環境変数を設定します。 例えば、 export GIT_TOKEN="enter your GIT TOKEN" を実行します。
  • 以下のいずれかの方法で、アカウントへのアクセス権限を設定します。
    • IBM Cloud アカウントにアクセスするための IC_API_KEY 環境変数を設定します。 例えば、 IC_API_KEY="Your API key" を実行します。
    • trusted-profile-id の詳細を使用して、 IBM Cloud アカウントにアクセスします。 詳しくは、「 トラステッド・プロファイル ID の検索」を参照してください。 例えば、トラステッド・プロファイル ID は Profile-1bd5eala-000-4a6666-00000 のようになります。
  • Project および Catalogs management CLI プラグインが最新であることを確認してください。 ibmcloud plugin list コマンドを実行して、CLI プラグインの現行バージョンを表示します。
  • 実動デプロイメント用のプロジェクトを作成し、リソースを移動するプロジェクトの名前と ID を記録します。
  • ご使用のアカウントで、プロジェクト・サービスが他の IBM Cloud サービスと通信する権限を持っていることを確認してください。 詳しくは、 プロジェクト・サービスと他の IBM Cloud サービスとの間のアクセス権限の付与 を参照してください。

Schematics ワークスペースからのデプロイ可能アーキテクチャーの作成

Schematics ワークスペースにデプロイ可能なアーキテクチャーが既にある場合は、このセクションをスキップしてください。

Schematics ワークスペースまたはプライベート・カタログを使用してソフトウェアをデプロイした場合は、 ibmcloud catalog utility create-product-from-workspace コマンドを使用して、デプロイしたリソースをプロジェクトに移動できます。

このコマンドは、以下の Git関連タスクを実行します。

  • デプロイ可能なアーキテクチャー・リポジトリーを複製します。
  • ibm_catalog.json マニフェスト・ファイルを新規ブランチにプッシュします。
  • プレースホルダー・アーキテクチャー図 (architecture-diagram-placeholder.drawio.svg) を作成します。
  • リポジトリー内に Git リリースを作成します。
  • リリース・アセット URL を指定します。

このコマンドは、以下の IBM Cloud関連タスクも実行します。

  • IBM Cloudにプライベート・カタログを作成します。
  • 開発およびテストを行うプロジェクトを作成します。
  • トラステッド・プロファイル ID または API キーを使用して、プロジェクトとカタログをリンクします。
  • プライベート・カタログ内に製品タイルを作成します。
  • 製品バージョンを新しいプライベート・カタログにオンボードします。
  • バージョンに共有準備完了のマークを付けます。
  • ワークスペースをカタログに移動することにより、ワークスペースおよびデプロイ可能なアーキテクチャーのオンボーディングを完了します。
  • プロジェクト ID、カタログ ID、オファリング ID、およびバージョン・ロケーターが表示されます。

デプロイ可能なアーキテクチャーを作成し、すべてのデプロイ済みリソースをプロジェクト構成に移動するには、以下のステップを実行します。

  1. ibmcloud catalog utility create-product-from-workspace コマンドを実行します。

    ibmcloud catalog utility create-product-from-workspace [--workspace-id ID] [--api-key KEY] [--trusted-profile-id ID] [--catalog-label LABEL] [--offering-label LABEL] [--project-name NAME] [--project-resource-group GROUP] [--target-version VERSION] [--variation-label LABEL]
    

    --api-key--trusted-profile-id は相互に排他的です。 必要なのはどちらか一方だけです。 --project-name パラメーターは、開発およびテストを行うプロジェクトを作成します。 簡単にするために、ワークスペース ID と同じ名前を付けることをお勧めします。

    以下の utility create-product-from-workspace コマンド・オプションの例を参照してください。

    ibmcloud catalog utility create-product-from-workspace --workspace-id us-south.workspace.move.xxxx --api-key $IC_API_KEY --catalog-label myCatalog --offering-label myOffering --project-name myProject --project-resource-group Default --target-version 1.0.0 --variation-label test_standard
    

    コマンドの実行が終了すると、コマンド・プロンプトは OK を返します。

  2. コミット、リポジトリー、および新規リリースを表示して、 Git で結果を確認します。 .tgz ファイルがバージョンとともに表示されます。

  3. IBM Cloud コンソールで結果を確認します。

    1. 「管理」 > 「カタログ」 > **「プライベート・カタログ」**に移動します。
    2. 新しいプライベート・カタログを選択します。
    3. プライベート・カタログで新しい製品を選択し、 「バージョン」 タブを選択します。 デプロイ可能なアーキテクチャーのバージョン 1.0.0 (または同様のもの) があることを確認します。 プライベート・カタログに移動すると、同じデプロイ可能アーキテクチャーがタイルに表示されます。
    4. 「ナビゲーション・メニュー」 アイコン 「ナビゲーション・メニュー」アイコン > 「プロジェクト」 をクリックし、新規プロジェクトを確認します。
    5. 「構成」 タブを選択して、デプロイ可能なアーキテクチャーを表示します。 draft 状況であることを確認します。

プロジェクト構成の作成

ibmcloud project config-create コマンドは、 Schematics ワークスペースをプロジェクトの下で実行するプロジェクト構成を作成します。このプロジェクトでは、プロジェクトから別のバージョンを作成し、必要に応じて Deployable アーキテクチャーを変更することができます。

このセクションを開始する前に、デプロイ可能なアーキテクチャーがプライベート・カタログと実行中の Schematics ワークスペースにあり、その CRN が分かっていることを確認してください。 ワークスペース CRN は、 IBM Cloud コンソールのリソース・リストから見つけるか、CLI を使用して見つけることができます。

  • IBM Cloud コンソール: IBM Cloud コンソールで、 「ナビゲーション・メニュー」 アイコン 「ナビゲーション・メニュー」アイコン > 「リソース・リスト」 > 「開発者ツール」 > ワークスペースをクリックし、CRN をコピーします。
  • IBM Cloud CLI: ibmcloud schematics workspace get コマンドを実行して、ワークスペース CRN の詳細を取り出します。 例えば、 ibmcloud schematics workspace get --id workspace-id --output destination folder --json output.json を実行して、 Schematics ワークスペースの CRN の詳細を取り出します。

以下のステップを実行して、プロジェクト構成を追加し、 Schematics ワークスペース・リソースをプロジェクトに移動します。

  1. ibmcloud project config-create コマンドを実行します。

    ibmcloud project config-create --project-id PROJECT-ID [--schematics-workspace-crn SCHEMATICS-WORKSPACE-CRN] [--definition-name DEFINITION-NAME] [--definition-locator-id DEFINITION-LOCATOR-ID]
    

    --project-id の値は、前にプロジェクト UI を使用して deployment-production 用に作成したプロジェクトの値です。 --definition-locator-id の値は、前のセクションのバージョン・ロケーターと同じです。

    以下の project config-create コマンド・オプションの例を参照してください。

    ibmcloud project config-create --project-id myProdProject --schematics-workspace-crn MyWorkspaceCRN --definition-name production-deployment --definition-locator-id myVersionLocator
    

    コマンドの実行が終了すると、コマンド・プロンプトは名前、状態、およびタイプを返します。

  2. Terraform テンプレートがプロジェクトにデプロイされていることを確認します。

    1. IBM Cloud コンソールで、 「ナビゲーション・メニュー」 アイコン 「ナビゲーション・メニュー」アイコン > 「プロジェクト」 をクリックします。
    2. デプロイメント実動用に最初に作成したプロジェクトを選択し、 「構成」 タブに移動します。
    3. 「アクション」 アイコン 「アクション」アイコン > 「最後のデプロイメントの表示」 をクリックします。
    4. 「デプロイメントが成功しました」セクションで、 「正常にデプロイされた変更」 > 「ログ」 をクリックして、プロジェクト内のすべてのデプロイ済みリソースを表示します。

Schematics ワークスペースのデプロイメントが、新規プロジェクト内のログに含まれるようになりました。

CLI を使用して結果を確認する場合は、 ibmcloud project get コマンドまたは ibmcloud project list コマンドを実行して、ワークスペースがプロジェクトに正常に移動されたことを確認します。

次のステップ

デプロイ可能アーキテクチャーの残りのプロセスを完了するには、以下のステップを実行します。

  1. デプロイ可能なアーキテクチャーのデプロイメントの詳細を構成します。
  2. IAM アクセス権限を定義します。
  3. アーキテクチャー図、前提条件、および強調表示を追加します。
  4. コンプライアンス情報 (コントロール) を追加します。
  5. コスト見積もりを受け取るには、再検証してください。

手順の実行方法について詳しくは、 プライベート・カタログへのカスタマイズされたデプロイ可能アーキテクチャーのオンボード を参照してください。

詳しくは、 エンタープライズ・アーキテクチャーの採用 を参照してください。