ハイブリッドクラウドでの RHEL システムのデプロイおよび管理
ハイブリッドクラウドでのカスタマイズした RHEL システムイメージのデプロイおよび管理
概要
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、用語の置き換えは、今後の複数のリリースにわたって段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 オープンハイブリッドクラウド環境で RHEL システムをデプロイおよび管理するためのワークフロー
Red Hat Insights を使用して、オープンハイブリッドクラウド環境でカスタマイズした RHEL システムイメージを起動および管理します。現在、Red Hat Insights を使用して、以下のクラウドで RHEL システムをデプロイおよび管理できます。
- Amazon Web Services
- Microsoft Azure
- Google Cloud Platform
Red Hat Insights には、Red Hat アカウント、RHEL サブスクリプション、およびアクティベーションキーを使用してアクセスできます。追加の SKU は必要ありません。アクティベーションキーの作成 を参照してください。
デプロイメントの一環として、Red Hat Insights を使用すると、エンドツーエンドのワークフローに従って次のことを行うことができます。
さらに、ユーザーにアクセスを許可し、システムインフラストラクチャーのインベントリーを監視し、パッチを適用してセキュリティーと安定性を向上させることにより、システムを管理できます。
第2章 カスタマイズされたオペレーティングシステムを構築するためのリポジトリー管理
リポジトリーのライフサイクルを管理することなく、サードパーティーのコンテンツを使用してカスタマイズしたリポジトリーを定義できます。サードパーティーのコンテンツを使用してイメージをビルドし、そのイメージをパブリッククラウド環境で起動すると、dnf
ツールでそれらのリポジトリーを使用できます。
2.1. カスタムリポジトリーの追加
このリポジトリーからカスタマイズイメージにパッケージを追加できるようにリポジトリーを定義します。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console Web ユーザーインターフェイスまたは repository administrator ロールへの管理者アクセスがある。
- リポジトリーコンテンツへの URL リンクがある。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
- Add custom repositories ウィザードが開きます。 をクリックします。
- Name フィールドにカスタムリポジトリーの名前を入力します。
Repository type で、以下を選択します。
- Snapshotting
- このリポジトリーの日次スナップショットを作成できるようにします。これにより、一貫したリポジトリーコンテンツを持つイメージブループリントを作成できます。
- Introspect only
- このリポジトリーのスナップショットを無効にします。
- Upload
カスタムリポジトリーへのパッケージのアップロードを有効にします。ファイルに
rpm
拡張子が必要です。Upload オプションは Preview モードでのみ使用できることに注意してください。
- Snapshotting または Introspect only を選択した場合は、URL フィールドにリポジトリーの URL を入力します。
- オプション: Restrict architecture ドロップダウンメニューで、アーキテクチャーを選択します。すべてのアーキテクチャーを許可することも、任意のシステムアーキテクチャーに制限して、誤ったリポジトリーが利用可能になることを回避することもできます。
- オプション: Restrict OS version ドロップダウンメニューで、オペレーティングシステム (OS) を選択します。すべての RHEL バージョンを許可することも、システムバージョンに合わせて 1 つを選択して、誤ったリポジトリーが利用可能になることを回避することもできます。
- オプション: Modularity filtering オプションを無効にします。Modularity filtering オプションが無効な場合、パッケージがモジュールの一部であっても、このリポジトリー内のパッケージを更新できます。
-
オプション: GPG key フィールドに、GPG キーを含む
.txt
ファイルをアップロードするか、既存の GPG キーの URL または値を貼り付けます。GPG キーは、リポジトリーの署名済みパッケージを検証するために使用できます。リポジトリーの GPG キーを提供しない場合、システムは検証を実行できません。 -
Snapshotting または Introspect only を選択した場合は、 をクリックします。Red Hat Hybrid Cloud Console は、プロジェクトのステータスを検証します。リポジトリーが
Invalid
とマークされている場合は、追加したリポジトリーの URL を確認します。リポジトリーのステータスの詳細は、リポジトリーのステータス セクションを参照してください。 Upload を選択した場合は、次の手順を実行します。
- Upload content ウィンドウが開きます。 をクリックします。
-
rpm
ファイルを選択して、 をクリックします。 をクリックし、アップロードする - ファイルのアップロードが完了したら、 をクリックします。
検証
- カスタムリポジトリーの一覧を開き、追加したリポジトリーがリストされていることを確認します。
2.2. カスタムリポジトリーの変更
カスタムリポジトリーの情報を更新する必要がある場合は、カスタムリポジトリーを変更できます。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console Web ユーザーインターフェイスまたは repository administrator ロールへの管理者アクセスがある。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
-
変更するリポジトリーを見つけ、
Options
メニューでEdit
をクリックします。 -
Edit custom repository
ウィザードで、必要な情報を変更します。 をクリックします。
2.3. カスタムリポジトリーの削除
カスタムリポジトリーが不要になった場合は、そのリポジトリーを削除できます。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console Web ユーザーインターフェイスまたは repository administrator ロールへの管理者アクセスがある。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
-
削除するリポジトリーを見つけ、
Options
メニューでDelete
をクリックします。
検証
- カスタムリポジトリーの一覧を開き、リポジトリーが存在しないことを確認します。
2.4. 一般的なリポジトリーからカスタムリポジトリーへの既存リポジトリーの追加
Red Hat Hybrid Cloud Console には、カスタマイズした RHEL イメージのビルドに使用できるリポジトリーが事前設定されています。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console Web ユーザーインターフェイスまたは repository administrator ロールへの管理者アクセスがある。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
-
Custom repositories ページで、
Popular repositories
タブをクリックします。 - 追加するリポジトリーを検索し、 をクリックします。
検証
-
Your repositories
タブを選択し、新しいリポジトリーがカスタムリポジトリーの一覧に表示されていることを確認します。
2.5. リポジトリーからのスナップショットの削除
古いコンテンツによる機能の破損やセキュリティーの脆弱性を防ぐために、カスタムリポジトリーからスナップショットを削除できます。
このリポジトリーの新しいスナップショットがない場合、スナップショットは 365 日後に自動的に削除されます。リポジトリーに複数のスナップショットがあり、削除するスナップショットがコンテンツテンプレートで使用されている場合は、このスナップショットはコンテンツテンプレートの新しいスナップショットに置き換えられます。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console Web ユーザーインターフェイスまたは repository administrator ロールへの管理者アクセスがある。
- カスタムリポジトリーを追加している。カスタムリポジトリーの追加 を参照してください。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
-
Your repositories タブで、削除するスナップショットを含むリポジトリーを見つけ、
Option
メニューでView all snapshots
をクリックします。 - Snapshot ウィンドウで、このリポジトリーから削除するすべてのスナップショットを選択し、 をクリックします。
- Remove snapshot ウィンドウで、選択したスナップショットの削除を確認して、 をクリックします。
2.6. 変更後のカスタムリポジトリーの更新
リポジトリーに変更を加えた場合、Red Hat Hybrid Cloud Console でそのリポジトリーの更新をトリガーできます。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console Web ユーザーインターフェイスまたは repository administrator ロールへの管理者アクセスがある。
- カスタムリポジトリーを更新している。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
-
変更するリポジトリーを見つけ、
Options
メニューでIntrospect Now
をクリックします。 そのリポジトリーのステータスが
In progress
に変わります。これは、Hybrid Cloud Console がリポジトリーに接続して変更の有無を確認していることを示します。Red Hat Hybrid Cloud Console は、24 時間ごとにリポジトリーのステータスを確認します。ステータスチェックが失敗した場合は、8 時間ごとに再度確認します。
2.7. Red Hat Hybrid Cloud Console のリポジトリーステータス
リポジトリーのステータスは、リポジトリーが利用可能かどうかを示します。Red Hat Hybrid Cloud Console はリポジトリーのステータスを定期的に確認して変更します。以下の表は、Red Hat Hybrid Cloud Console のリポジトリーステータスを説明しています。
ステータス | 説明 |
---|---|
Valid | Red Hat Hybrid Cloud Console によってリポジトリーが検証されました。リポジトリーは使用できます。 |
Invalid | Red Hat Hybrid Cloud Console によってリポジトリーが一度も検証されていません。リポジトリーは使用できません。 |
Unavailable | リポジトリーが少なくとも 1 回は有効でした。現時点では、Red Hat Hybrid Console はこのリポジトリーにアクセスできません。リポジトリーは使用できません。 |
In progress | リポジトリーの検証が進行中です。 |
2.8. カスタムリポジトリー通知の設定
Red Hat Hybrid Cloud Console でカスタムリポジトリーの通知を設定できます。Red Hat Hybrid Cloud Console で通知を設定する方法は、Red Hat Hybrid Cloud Console での通知の設定 を参照してください。
カスタムリポジトリーイベント
- Repository Created
- カスタムリポジトリーが Red Hat Hybrid Cloud Console に追加されると、通知が送信されます。
- Repository Introspected
- カスタムリポジトリーのイントロスペクションが正常に完了すると、通知が送信されます。
- Repository Introspection Failure
- カスタムリポジトリーのイントロスペクションが失敗すると、通知が送信されます。
- Repository Updated
- イントロスペクションによってカスタムリポジトリー内の変更が検出されると、通知が送信されます。
- Repository Deleted
- カスタムリポジトリーが削除されると、通知が送信されます。
第3章 RHEL イメージを起動するためのインテグレーションの設定
パブリッククラウド環境でカスタマイズした RHEL イメージを起動できます。これを行うには、アカウントを Integrations に追加して、パブリッククラウドアカウントを Hybrid Cloud Console に接続する必要があります。パブリッククラウドアカウントを追加する際、クラウドプロバイダーによっては、そのアカウントにログインしていくつかのアクションを実行する必要がある場合があります。
3.1. AWS アカウントの Red Hat Hybrid Cloud Console への接続
Amazon Web Services (AWS) アカウントを Red Hat Hybrid Cloud に追加し、AWS 環境で RHEL イメージを起動するように設定できます。
前提条件
- RHEL サブスクリプションがある。
- 組織管理者であるか、または "Launch administrator" ロールと "Cloud administrator" ロールが割り当てられた非管理者ユーザーである。ユーザーにロールを割り当てる方法 を参照してください。
- オプション: 自動アクセス設定に従う場合は、AWS アカウントの Access key ID と Secret access key を取得している。
オプション: 手動アクセス設定に従う場合は、AWS アカウントに次の権限があることを確認してください。
-
cloudformation:CreateStack
; -
cloudformation:DescribeStacks
; -
cloudformation:DeleteStack
; -
cloudformation:UpdateStack
; -
iam:CreateRole
; -
iam:PutRolePolicy
; -
iam:AttachRolePolicy
; -
iam:PassRole
; -
iam:GetRole
; -
iam:DeleteRole
; -
iam:ListRolePolicies
; -
iam:GetRolePolicy
; iam:DeleteRolePolicy
.AWS パーミッションの詳細は、AWS ドキュメントを参照してください。
-
手順
- Hybrid Cloud Console にアクセスし、 → をクリックします。
- Cloud オプションを選択します。Add a cloud integration ウィザードが開きます。 をクリックし、
- Select cloud provider ページで を選択し、 をクリックします。
- Name integration ページで、Integration name フィールドに AWS アカウントの統合に名前を付け、 をクリックします。
Select configuration ページで、以下の 2 つのオプションを選択します。
Account authorization を選択した場合は、AWS アカウントからお使いの ID の
Access key ID
およびSecret access key
を指定します。 をクリックして、以下の手順を実行します。- Select application ページで Launch images オプションを選択します。 をクリックします。
Manual configuration を選択した場合には、 をクリックして以下の手順を実行します。
- Select application ページで Launch images オプションを選択します。 をクリックします。
- AWS account number の Enable account access ページで、Account number フィールドに AWS アカウント番号を入力し、 をクリックします。
- Create IAM role ページで、ウィザードウィンドウの指示に従います。 をクリックします。
- Enter ARN ページで、ARN をテキストフィールドに貼り付けます。 をクリックします。
- Review details ページで、AWS アカウントの詳細を確認し、 をクリックして AWS インテグレーションプロセスを終了します。
3.2. Microsoft Azure アカウントの Red Hat Hybrid Cloud Console への接続
Microsoft Azure アカウントを Red Hat Hybrid Cloud Console に追加し、Azure 環境で RHEL イメージを起動するように設定できます。
前提条件
- RHEL サブスクリプションがある。
- 組織管理者であるか、または "Launch administrator" ロールと "Cloud administrator" ロールが割り当てられた非管理者ユーザーである。ユーザーにロールを割り当てる方法 を参照してください。
-
テナントにゲスト以外の Microsoft Azure アカウントがある。このアカウントには、使用する Azure サブスクリプションの
owner
など、Microsoft.Authorization/roleAssignments/write
を持つロールが割り当てられている。詳細は、Microsoft Azure のドキュメントを参照してください。 Microsoft Azure サブスクリプションに以下のリソースプロバイダーを登録している。
-
Microsoft.Compute
-
Microsoft.Storage
-
Microsoft.Network
-
手順
- Hybrid Cloud Console にアクセスし、 → をクリックします。
- Cloud オプションを選択します。Add a cloud integration ウィザードが開きます。 をクリックし、
- を選択し、 をクリックします。
- Name integration ページの Integration name フィールドで Microsoft Azure アカウントのインテグレーションに名前を付け、 をクリックします。
- Select application ページで Launch images オプションを選択し、 をクリックします。
-
Configure Azure Lighthouse ページで をクリックし、Microsoft の指示に従って Azure Lighthouse で設定手順を完了します。
Add integration
ウィザードに戻り、 をクリックします。 - Set subscription ID ページで、Subscription ID フィールドに入力し、 をクリックします。
- Review details ページで、Microsoft Azure アカウントの詳細を確認し、 をクリックして Integrations への追加を終了します。
関連情報
- Red Hat Hybrid Cloud Console で Microsoft Azure を使用する方法の詳細は、Microsoft Azure integrations with the Hybrid Cloud Console を参照してください。
3.3. GCP プロジェクトの Red Hat Hybrid Cloud Console への接続
Google Cloud Platform (GCP) プロジェクトを Red Hat Hybrid Cloud に追加し、AWS 環境で RHEL イメージを起動するように設定できます。
前提条件
- RHEL サブスクリプションがある。
- 組織管理者であるか、または "Launch administrator" ロールと "Cloud administrator" ロールが割り当てられた非管理者ユーザーである。ユーザーにロールを割り当てる方法 を参照してください。
-
default
のネットワークを使用した GCP プロジェクトがある。
手順
- Hybrid Cloud Console にアクセスし、 → をクリックします。
- Cloud オプションを選択します。Add a cloud integration ウィザードが開きます。 をクリックし、
- Select integration type ページで を選択し、 をクリックします。
- Integration name ページの Name フィールドで GCP プロジェクトのインテグレーションに名前を付け、 をクリックします。
- Select application ページで Launch images オプションを選択し、 をクリックします。
Enable account access ページで、以下を実行します。
- Enter Project ID ページで、Project フィールドに追加する GCP プロジェクト名を入力します。 をクリックします。
- Create custom role ページで、ページの指示に従います。 をクリックします。
- Review details ページで、GCP プロジェクトの詳細を確認し、 をクリックして Integrations への追加を終了します。
検証
- コンソールで GCP プロジェクトのデータが検証され、Configuration successful というメッセージが表示されます。
第4章 外部認証および認可ドメインとの統合
Directory and Domain Services 機能は、組織のアイデンティティーおよびアクセス管理システムを Red Hat Hybrid Cloud Console と結合することで、セキュリティーレベルをさらに高めます。Red Hat Identity Management (IdM) などの既存のアイデンティティープロバイダードメインを登録できます。
ディレクトリーおよびドメインサービス機能は Preview モードでのみ使用可能であり、EPEL リポジトリーを有効にする必要があります。一般的なリポジトリーからカスタムリポジトリーへの既存リポジトリーの追加 で詳細を確認してください。
4.1. Directory and Domain Services に関する留意事項
Red Hat Hybrid Cloud Console に組織のアイデンティティードメインを登録し、そこにマシンを登録するには、アイデンティティードメインがデプロイされているサーバー上で必要なサービスのポートを開く必要があります。
たとえば、マシンがパブリッククラウド環境から IdM サーバーにアクセスできるようにするには、次のサービスに対して IdM サーバーへのアクセスを設定する必要があります。
- HTTPS
- Directory and Domain Service は、RHEL サブスクリプションからの証明書を使用して、IPA API を使用して IdM サーバーにイメージを登録できます。
- Kerberos
- ユーザーとホストは、Kerberos 認証方式を使用して認証できます。
- LDAP
- SSSD は、IdM サーバーからセキュリティーポリシーとユーザー情報を取得できます。
サービスにアクセスするには、次のポートを開く必要があります。
サービス | ポート | プロトコル |
---|---|---|
HTTP/HTTPS | 80、443 | TCP |
LDAP/LDAPS | 389、636 | TCP |
Kerberos | 88、464 | TCP および UDP |
DNS | 53 | TCP および UDP (任意) |
これらのプロトコルを使用すると、パブリッククラウド環境で実行されているすべての登録済みマシンから組織にアクセスできるようになります。会社のセキュリティーポリシーで許可されていることを確認してください。
関連情報
- IdM サーバーにアクセスするためのポートの詳細は、IdM のポート要件 を参照してください。
4.2. Hybrid Cloud Console でアイデンティティードメインを登録する
組織のアイデンティティードメインを Red Hat Hybrid Cloud Console に登録できます。これにより、Hybrid Cloud Console のイメージから実行される新しいインスタンスで既存のアイデンティティードメインを使用できるようになります。
現在、Directory and Domain Services は IdM セットアップのみをサポートしています。一度に有効にできるドメインは 1 つだけです。ドメインを有効にする場合は、Red Hat Hybrid Cloud Console で他のすべてのドメインを無効にする必要があります。
前提条件
-
既存の IdM サーバー上の EPEL リポジトリーから
ipa-hcc-server
パッケージをインストールした。 - IPA 管理者権限を持っている。
- 組織管理者の権限を持っているか、Directory and Domain Services administrator ロールを持つユーザーがいる。詳細は、Red Hat Hybrid Cloud Console で User Access の設定手順 を参照してください。
手順
- Hybrid Cloud Console にアクセスして → をクリックし、ナビゲーションパネルで Directory and Domain Services を選択します。Directory and Domain Services ダッシュボードが開きます。
- Register identity domain ウィザードを開きます。 をクリックして
-
オプション: Preparation ページのウィザードで、
ipa-hcc-server
パッケージが IdM サーバーにインストールされていることを確認するよう求められます。ページに表示される指示に従い、 をクリックします。 Registration ページで以下を実行します。
ドメイン登録用のコマンドをコピーし、IdM サーバーのターミナルに切り替えて
root
権限でこのコマンドを実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa-hcc register <registration token>
# ipa-hcc register <registration token> Domain information: realm name: <REALM_NAME> domain name: <domain_name> dns domains: <dns_domains>
IdM サーバーの登録を続行するには、Yes と入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Proceed with registration? Yes/No (default No): <Yes>
Proceed with registration? Yes/No (default No): <Yes>
- IdM サーバーターミナルで登録コマンドが完了したら、Register identity domain に戻り、Registration ページで をクリックして登録を確認します。ウィザードが登録を確認するまで待ってから をクリックします。
- Details ページで、ドメインの Display name フィールドをカスタマイズできます。オプションでこのドメインの説明を入力し、登録の完了後にパブリッククラウド環境でイメージを起動するときにドメインを利用できるようにする場合は Domain auto-join on launch トグルを有効のままにします。 をクリックします。
- Review ページですべての設定を確認し、 をクリックして登録を完了します。
検証
- Directory and Domain Services ダッシュボードにドメインが表示されていることを確認します。
次のステップ
-
選択した環境への起動中に、登録済みのドメインにマシンを登録できます。そのためには、Images でのブループリント作成中に、EPEL リポジトリーから
ipa-hcc-client
パッケージを必ず追加してください。
関連情報
- Identity Management で詳細を確認してください。
- ブループリントとブループリントイメージの作成 で詳細を確認してください。
- 一般的なリポジトリーからカスタムリポジトリーへの既存リポジトリーの追加 で詳細を確認してください。
- Insights Image Builder を使用したクラウドプラットフォームでの RHEL カスタマイズイメージの起動 で詳細を確認してください。
4.3. アイデンティティードメイン登録の編集
登録済みドメインの名前を変更したり、説明を編集したりできます。登録済みドメインの起動時自動結合機能を有効または無効にすることもできます。
前提条件
- 組織管理者権限を持っているか、Directory and Domain Services 管理者のロールを持つユーザーがいる。
手順
- Hybrid Cloud Console にアクセスして → をクリックし、ナビゲーションパネルで Directory and Domain Services を選択します。Directory and Domain Services ダッシュボードが開きます。
- ドメインリストから編集するドメインを見つけ、Option メニューをクリックして Edit を選択します。
次のパラメーターを編集できます。
- Display name
- ドメイン名を変更します。
- Description
- ドメインの説明を変更します。
- Domain auto-join on launch
- パブリッククラウドプロバイダー上での起動中にインスタンスを登録するために、このドメインを有効または無効にします。
4.4. Hybrid Cloud Console から認証ドメイン登録を削除する
Red Hat Hybrid Cloud Console から外部認証ドメインの登録を削除できます。
前提条件
- 組織管理者権限を持っているか、Directory and Domain Services 管理者のロールを持つユーザーがいる。
手順
- Hybrid Cloud Console にアクセスして → をクリックし、ナビゲーションパネルで Directory and Domain Services を選択します。Directory and Domain Services ダッシュボードが開きます。
- ドメインリストから削除するドメインを見つけ、Option メニューをクリックして Delete を選択します。Delete identity domain registration ウィンドウが開きます。
- I understand that this action cannot be undone チェックボックスをオンにし、 をクリックします。
オプション: IdM サーバーターミナルにアクセスし、
ipa-hcc-server
パッケージをアンインストールします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow dnf remove ipa-hcc-server
# dnf remove ipa-hcc-server
IdM デプロイメントが複数のサーバーで構成されている場合は、すべてのサーバーから
ipa-hcc-server
パッケージを削除します。
検証
- Directory and Domain Services ダッシュボードを開き、外部認証ドメインの登録がリストにないことを確認します。
第5章 ブループリントとブループリントイメージの作成
イメージブループリントは、必要なイメージのカスタマイズの永続的な定義です。これにより、イメージビルドごとにブループリントを設定する必要なく、そこから複数のビルドを作成できます。ブループリントを編集、再構築、削除し、保存して、そこからイメージを再構築し続けることができます。ブループリントを編集または削除して定義および管理し、再構築し続けることで、毎回ビルドを設定する必要がなくなります。ブループリントを再構築すると、ブループリントで指定されたすべてのターゲットが再構築されます。ブループリントは、そこから構築されたイメージをグループ化するため、大量のイメージを処理するときに、関連するすべてのイメージにアクセスできるようになります。
ブループリントは永続的であり、カスタマイズを管理することができます。結果として得られるビルドや、それらのビルドからのイメージのコンテンツバージョンが異なる場合でも、そのブループリントに保存されているカスタマイズは、このブループリントから得られるすべてのビルドに常に適用されます。
ブループリントからイメージを作成する場合は、イメージに名前を定義しない限り、親ブループリントの名前が使用されます。
5.1. ブループリントの作成
名前を付けてブループリントを作成し、インストールするパッケージを指定し、その他のカスタマイズを定義できます。このブループリントからイメージをビルドすることができ、結果として得られるイメージには、このブループリントで指定したすべてのカスタマイズが含まれます。
前提条件
- RHEL サブスクリプションがある。
- 組織管理者のパーミッションがある。
- オプション: イメージをパブリッククラウドに起動する場合は、統合 にアクセスできるようにする必要があります。パブリッククラウドを Red Hat Hybrid Cloud Console に接続するには、RHEL イメージを起動するための統合の設定 を参照してください。
- オプション: RHEL システムのアクティベーションキーを持っている。詳細は、アクティベーションキーの作成 を参照してください。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。Insights Images ダッシュボードが表示されます。
- をクリックします。ブループリント作成のウィザードが開きます。
Image output ページで、次のオプションを選択し、 をクリックします。
Release リストから、使用するリリースを選択します。
重要選択したリリースの最新のマイナーバージョンが Image Builder によってビルドされます。
- Architecture リストから、使用するアーキテクチャーを選択します。
- Select target environments オプションから、使用する環境を選択します。
次の手順はオプションです。それ以上イメージをカスタマイズしない場合は、レビュー 手順にリダイレクトされます。
ボタンをクリックしてイメージ作成プロセスを終了できます。オプション: Register ページで、以下のオプションから選択します。
高度な機能を自動的に登録して有効にするオプションは、 アクティベーションキーを自動的に入力する有効なデフォルトオプションです。アクティベーションキーの読み込み中に、 ボタンが一時的に無効になります。初回起動時にシステムを登録する場合は、チェックボックスをクリアして自動登録を無効にします。
- 最近のブループリント作成時にキーを追加した場合は、同じキーが自動的に選択されます。
- アクティベーションキーを持っているが、これまでキーを使用したことがない場合は、最初のアクティベーションキーが選択されます。
- アクティベーションキーがない場合は、"Automatically create and select a default key" を選択して、デフォルトの activation-key-default-<ID> アクティベーションキーを自動的に作成して使用します。
- 利用可能なアクティベーションキーのいずれかを選択することもできます。
- イメージの起動 後 にシステムを登録するには、後で登録します。
- Satellite に登録し て、システムを Satellite に登録します。このオプションでは、Satellite から Registration コマンドに登録コマンド を入力し、認証局(CA) を指定します。Satellite にシステムを登録する方法は、ホストの登録 を参照し てください。このオプションは、プレビュー モードでのみ使用できます。
オプション: OpenSCAP profile ページで、ドロップダウンメニューから利用可能なオプションの 1 つを選択し、 をクリックします。
- OpenSCAP
- 標準オプションプロファイルでは、ポリシーをカスタマイズすることはできません。ポリシーは RHEL バージョンと一致させる必要があります。詳細は、サポートされる構成 を参照してください。
- None
- デフォルトで表示されるオプション。システムをセキュリティー保護したくない場合は、このオプションを選択したままにしてください。
- (テクノロジープレビュー) Insights compliance
-
このオプションを選択すると、カスタマイズされた定義済みポリシーセットにシステムが割り当てられます。カスタマイズされたポリシーにコンプライアンスシステムが割り当てられます。Image Builder でビルドしたイメージは、システムの
scap
ポリシーの下に自動的に表示されます。選択できる既存のポリシーセットが必要です。ポリシーの作成方法は、新しい SCAP ポリシーの作成 を参照してください。ポリシーセットをまだ作成していない場合は、 をクリックしてポリシーを作成します。コンソールを更新すると、作成したポリシーがInsights compliance
ドロップダウンメニューに表示されます。カスタマイズされたポリシーにシステムが割り当てられます。イメージを作成すると、コンプライアンスシステムの下にシステムが表示されます。
オプション: File system configuration ページで、次のいずれかのオプションを選択し、 をクリックします。
- Use automatic partitioning: ターゲット環境に応じて推奨されるパーティション設定。
Manually configure partitions: 次の手順に従って、イメージファイルシステムのパーティションを手動で設定します。
Manually configure partitioning ラジオボタンをクリックして Configure partitions セクションを表示し、Red Hat 標準とセキュリティーガイドに基づいてパーティションを設定します。
- ドロップダウンメニューから、パーティションを設定する情報を入力します。
Mount point フィールドで、マウントポイントタイプのオプションを 1 つ選択します。
/tmp
などの追加のパスを Mount point に追加することもできます。例: 接頭辞/var
と、追加パス/tmp
で、/var/tmp
になります。注記選択した マウントポイント の種類に応じて、ファイルシステムの種類が
xfs
やその他の種類に変更になります。-
ファイルシステムの Minimum size パーティションフィールドには、必要な最小パーティションサイズを入力します。Minimum size ドロップダウンメニューでは、
GiB
、MiB
、KiB
などの一般的なサイズ単位を使用できます。デフォルトの単位はGiB
です。 - パーティションを追加するには、 をクリックし、追加したパーティションごとに手順を繰り返します。
オプション: Repeatable ビルド ページで、以下のオプションのいずれかを選択し、 をクリックします。
- 反復可能なビルドの無効化
- イメージは、リポジトリーの最新状態を使用します。イメージにリポジトリーの最新のコンテンツを追加させる場合は、このオプションを選択します。
- 反復可能なビルドの有効化
- イメージがスナップショット作成の特定の日付を選択します。このオプションは、指定した日付に基づいてリポジトリーの静的状態がイメージに設定されるようにします。
- コンテンツテンプレートを使用します。
- イメージは、指定するコンテンツテンプレートでビルドされます。システムパッチを一元管理する場合は、このオプションを選択します。コンテンツテンプレートの詳細は、コンテンツテンプレート の管理 を参照してください。Insights へのシステムの登録を選択した場合には、登録時にテンプレートに自動的に関連付けられます。このオプションは、プレビュー モードでのみ使用できます。
- オプション: Custom repositories ページで、イメージにパッケージを追加できるカスタムリポジトリーを選択し、 をクリックします。
- オプション: Additional packages ページで、検索フィールドを使用してパッケージを検索し、必要なパッケージを選択します。 をクリックします。
オプション: Timezone ページで次のオプションを選択し、 をクリックします。
- Timezone ドロップダウンメニューから、イメージのタイムゾーンを選択します。
-
イメージに Network Time Protocol (NTP) サーバーを追加します。たとえば、NTP servers フィールドに
ntp.pool.org
を追加し、 をクリックします。NTP サーバーをさらに追加するには、NTP servers フィールドに別の NTP サーバーを入力し、 をクリックします。
オプション: Locale ページで次のオプションを選択し、 をクリックします。
- Languages ドロップダウンメニューから、イメージの言語を選択します。たとえば、“es_NI.UTF-8” です。
- Keyboard ドロップダウンメニューから、イメージのキーボードを選択します。たとえば、“amiga-us” です。
オプション: First boot configuration ページで、アクションスクリプトを含むファイルを含めるか、</> SHELL フィールドに書き込みます。そのスクリプトは、このイメージの最初の起動時に実行されます。これは、カスタムサービスを有効にしたり、イメージの起動時に Ansible Playbook を実行したりする場合に便利です。 をクリックします。
Bash シェルの場合、スクリプトは、
#!/bin/sh
のように、#! で開始する必要があります。最初のブート機能は、Python、Bash、および YAML 構文をサポートします。- Details ページでは、ブループリント名が "<distribution>-<architecture>-<datetimeString>" 形式で事前に入力されます。ブループリントの名前を入力すると、システムは既存のブループリント名と照合して有効性と重複をチェックします。 をクリックします。
Review ページで、イメージ作成に関するイメージの詳細を確認し、Create blueprint ドロップダウンメニューから次のいずれかのオプションを選択します。
- ブループリントの作成
- ブループリントを作成し、ブループリントのカスタマイズを保存します。
- ブループリントの作成とビルドイメージの作成
ブループリントを作成し、ブループリントのカスタマイズを保存し、選択したターゲット環境または環境用のイメージをビルドします。
システムは、イメージのビルドマニフェストを検証します。100% に達すると、イメージがビルドキューに表示されます。
Insights Images サービスは、選択したアーキテクチャーの RHEL イメージの作成を開始します。イメージのビルドの準備ができたら、Images ダッシュボードで親ブループリントに関連するイメージを確認できます。
5.2. 既存のブループリントの編集
ブループリントを編集できます。たとえば、追加のパッケージを含める場合などです。ブループリントの編集が完了すると、親ブループリントに関連するすべてのイメージが再構築され、新しいパッケージで更新されます。
前提条件
- ブループリントを作成している。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。Insights Images ダッシュボードが表示されます。
- 編集するブループリントを検索します。Search フィールドを使用してブループリント名を検索できます。
- 編集するブループリントをクリックします。
- Review ページにリダイレクトされます。 をクリックします。
- ナビゲーションメニューから、編集するセクションを選択します。
- 変更を加えたら、Review ページをクリックします。
変更した親ブループリントに関連するイメージが再構築され、新しい変更内容で更新されます。
5.3. 既存のブループリントの再構築
ブループリントを編集するたびに、そのブループリントの新しいバージョンが作成されます。また、そのブループリントに関連するイメージにも影響が及び、ブループリントとの同期が取れなくなります。これを修正し、親ブループリントと関連イメージで利用可能な更新が最小限になるようにするには、ブループリントを編集し、最新の更新で再構築します。このアクションは、ブループリントで指定されたすべてのパッケージを更新し、更新されたパッケージを使用して関連イメージを再構築します。
前提条件
- ブループリントを作成している。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。Insights Images ダッシュボードが表示されます。
- 編集するブループリントを検索します。Search フィールドを使用してブループリント名を検索できます。
- 編集するブループリントをクリックします。
- Review ページにリダイレクトされます。 をクリックします。
ブループリントに変更を加え、次のいずれかのオプションを選択します。
- Save
- ブループリントのカスタマイズを保存します。
- Save and build image
- ブループリントのカスタマイズを保存し、選択したターゲット環境からイメージをビルドします。
5.4. ブループリントのインポート
外部ソースから Hybrid Cloud Console にブループリントをインポートできます。
インポート 機能は、Preview モードでのみ使用できます。
前提条件
- JSON 形式でブループリントを作成している。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。Insights Images ダッシュボードが表示されます。
- Import pipeline ウィンドウが開きます。 をクリックします。
オプション: ブループリントからリポジトリーにカスタムリポジトリーを追加するには、Import missing custom repositories after file upload チェックボックスをオンにします。
警告ブループリントに不足しているリポジトリーが含まれている場合、このブループリントから作成したイメージが期待どおりに動作しない可能性があります。
- インポートするブループリントを、ドラッグアンドドロップするか、ローカルストレージからファイルを選択してアップロードします。
- をクリックします。
5.5. ブループリントのダウンロード
Hybrid Cloud Console で作成したブループリントを JSON 形式でダウンロードしてエクスポートできます。
ブループリントをダウンロードする機能は、"プレビュー" モードでのみ利用できます。
前提条件
- ブループリントを作成している。
手順
- Hybrid Cloud Console Insights にアクセスし、menu:[Images] をクリックします。Insights Images ダッシュボードが表示されます。
- ダウンロードするブループリントを検索します。検索フィールドを使用してブループリント名を検索できます。
- ダウンロードするブループリントをクリックします。
More options メニューから、"Download blueprint" オプションを選択します。
ブループリントは、Web ブラウザーで定義したローカルストレージに
.json
形式のファイルとして保存されます。
5.6. ブループリントの削除
ブループリントが不要になった場合は削除できます。このブループリントに関連するすべてのイメージも削除されます。
前提条件
- ブループリントを作成している。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。Insights Images ダッシュボードが表示されます。
- 削除するブループリントを検索します。検索フィールドを使用してブループリント名を検索できます。
- 削除するブループリントをクリックします。
- More options メニューから、「ブループリントの削除」オプションを選択します。
- をクリックして削除を確認します。
第6章 カスタマイズした RHEL イメージのビルドと管理
ブループリントを使用して、Insights イメージを使用することで、さまざまなデプロイメントタイプ向けにカスタマイズした RHEL イメージをビルドできます。従来型 (RPM-DNF) イメージまたはイミュータブル (OSTree) イメージをビルドできます。
- カスタマイズされたイメージは、Hybrid Cloud Console からのみ、AWS、GCP、Microsoft Azure パブリッククラウドに直接起動できます。
- VMDK のカスタマイズされたイメージをまず VMware vSphere にアップロードし、そこにデプロイしてから、仮想マシンを作成する必要があります。
-
ゲストイメージ (
.qcow2
) およびインストーラー (.iso
) の場合、これらのイメージをダウンロードして仮想マシンに直接デプロイできます。 -
Insights Image Builder を使用して、
x86_64
およびaarch64
アーキテクチャーのイメージをビルドできます。
Red Hat Hybrid Cloud Console は Amazon Web Services (AWS)、Google Cloud Platform (GCP), and *Microsoft Azure イメージの GovCloud リージョンへのアップロードをサポートしていません。
6.1. カスタマイズイメージのビルドについて
ブループリントから、従来型 (RPM-DNF) イメージまたは不変型 (OStree) イメージのいずれかを構築できます。
- 従来型 (RPM-DNF) では、DNF パッケージマネージャーと更新された RPM パッケージを使用して、システムソフトウェアを管理または変更できます。
- イミュータブル (OStree) イメージには、リモートでインストールできる完全なオペレーティングシステムが含まれています。このイメージを使用すると、中央のイメージリポジトリーを参照してシステムソフトウェアを管理できます。詳細は、RHEL for Edge の作成および自動管理の設定 を参照してください。
イメージアーティファクトは 14 日間保存され、その後は有効期限が切れます。イメージが失われないようにするには、有効期限が切れる前にイメージをアカウントに転送してください。イメージの有効期限がすでに切れている場合は、既存のブループリントに基づいて正確なイメージを再作成し、以前の設定を再利用することもできます。
イメージの作成リクエストをダウンロードし、Image Builder API を使用してイメージビルドタスクを自動化することもできます。
6.2. カスタマイズした RHEL システムイメージのビルド
Insights Images を使用してブループリントからカスタマイズされた RHEL システムイメージを作成し、そのイメージをターゲット環境にデプロイします。
前提条件
- ブループリントを作成している。ブループリントとブループリントイメージの作成 を参照します。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。既存のブループリントのリストが表示されます。
イメージを構築するブループリントを選択します。
- 必要に応じて、ドロップダウンメニューからブループリントのバージョンを選択できます。
イメージプロセスのステータスが Ready とマークされたら、デプロイメントで使用できるようになります。
6.3. アカウントから AWS 用にカスタマイズされた RHEL イメージへのアクセス
イメージを構築して AWS にアップロードし、クラウド登録プロセスのステータスが Ready とマークされたら、作成して AWS EC2 アカウントと共有したイメージにアクセスできるようになります。
共有イメージの有効期限は 14 日です。イメージに永続的にアクセスするには、イメージを自分の AWS アカウントにコピーします。
前提条件
- AWS マネジメントコンソール にアクセスできる。
手順
- AWS アカウント にアクセスし、 → に移動します。
-
ナビゲーションバーで、正しいリージョン (
us-east-1)
にいるかどうかを確認します。 - Image をクリックし、AMI を選択します。Owned by me イメージが含まれるダッシュボードが開きます。
ドロップダウンメニューから Private images を選択します。
指定した AWS アカウントでイメージが正常に共有されていることを確認できます。
6.4. AWS EC2 からの AWS 用のカスタマイズされた RHEL システムイメージの起動
AWS アカウントと共有したイメージを、Amazon Elastic Compute Cloud (Amazon EC2) コンピュートプラットフォームに起動します。
前提条件
- AWS でカスタマイズしたイメージにアクセスできる。アカウントから AWS 用にカスタマイズされた RHEL システムイメージへのアクセス を参照してください。
手順
- ドロップダウンメニューの Private Images で、指定した AWS アカウントに共有したイメージを見つけます。
- 起動するイメージを選択します。
- パネル上部で Launch を します。Choose an Instance Type ウィンドウにリダイレクトされます。
- イメージを起動する必要のあるリソースに応じて、インスタンスタイプを選択します。Review and Launch を します。
- インスタンスの起動の情報を確認します。変更が必要な場合などは、セキュリティー、ストレージ などの各セクションを変更できます。レビューが完了したら、 をクリックします。
インスタンスを起動するには、そのインスタンスにアクセスするための公開鍵を選択する必要があります。
EC2 で新規キーペアを作成し、新しいインスタンスにアタッチします。
- ドロップダウンメニューリストから、Create a new key pair を選択します。
- 新しいキーペアに名前を入力します。新しいキーペアが生成されます。
- Download Key Pair をクリックして、新しいキーペアをローカルシステムに保存します。
次に、
をクリックしてインスタンスを起動します。インスタンスのステータスが Initializing と表示されていることが確認できます。
- インスタンスのステータスが running になると、Connect ボタンが有効になります。
- A standalone SSH client への任意の接続方法を選択し、ターミナルを開きます。
秘密鍵の保存先で、SSH が機能するように鍵が公開されているようにします。これには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow chmod 400 <your-instance-name.pem>
$ chmod 400 <your-instance-name.pem>
パブリック DNS を使用してインスタンスに接続します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh -i "<_your-instance-name.pem_> ec2-user@<_your-instance-IP-address_>"
$ ssh -i "<_your-instance-name.pem_> ec2-user@<_your-instance-IP-address_>"
- yes と入力して、接続の続行を確定します。
その結果、SSH 経由でインスタンスに接続されます。
検証
- ターミナルから、SSH でインスタンスに接続している間にアクションが実行できるかどうかを確認します。
6.5. AWS 用のカスタム RHEL システムイメージを AWS EC2 の別のリージョンにコピー
Amazon Web Services EC2 で正常に共有したイメージを独自のアカウントにコピーできます。これを行うと、共有してコピーしたイメージが、しばらくすると期限切れになるのではなく、削除されるまで利用可能になるようにできます。お使いのアカウントにイメージをコピーするには、以下の手順に従います。
前提条件
- AWS でカスタマイズしたイメージにアクセスできる。
手順
- Public images のリストから、コピーするイメージを選択します。
- パネル上部で、 をクリックします。
- ドロップダウンメニューから、Copy AMI を選択します。ポップアップウィンドウが表示されます。
Destination region を選択し、 をクリックします。
コピープロセスが完了すると、新しい AMI ID が提供されます。新しいリージョンで新規インスタンスを起動できます。
注記イメージを異なるリージョンにコピーすると、AMI ID が一意で、対象リージョンに個別の新しい AMI が作成されます。
6.6. AWS イメージの他のリージョンへの共有
既存の AWS イメージを新規リージョンに共有できます。イメージを共有すると、新しいリージョンが AWS アカウントで実行されるように設定されます。新規リージョンの設定後に、これらのリージョンはすべて元の AWS イメージと同じ設定で起動します。
前提条件
- AWS イメージを作成している。
手順
- Images テーブルから、他のリージョンと共有するイメージを選択します。
- Node options メニューから、Share to new region を選択します。Share to new region ウィザードが開きます。
Select region ドロップダウンメニューから、イメージを共有するリージョンを選択します。
イメージを共有するリージョンは複数選択できます。
共有 をクリックします。
イメージがビルドされて AWS にアップロードされ、選択したリージョンに共有されます。
注記共有イメージの有効期限は 14 日です。
- イメージに永続的にアクセスできるようにするには、Red Hat イメージを自分の AWS アカウントにコピーします。
6.7. Microsoft Azure Cloud にイメージをプッシュするための Image Builder の承認
Insights の Image Builder が Microsoft Azure クラウドにイメージをプッシュすることを承認する必要があります。これは 1 回限りのアクションです。大まかな手順は次のとおりです。
- Insights Image を tenant GUID の承認済みアプリケーションとして設定する
承認済みアプリケーションの少なくとも 1 つのリソースグループに
Contributor
のロールを付与するImage Builder を承認済みアプリケーションとして認可するには、次の手順に従います。
前提条件
- Microsoft Azure ポータルに既存の リソースグループ がある。
-
User Access Administrator
ロール権限がある。 -
Microsoft Azure サブスクリプションには、リソースプロバイダーとしての
Microsoft.Storage
およびMicrosoft.Compute
がある。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。Insights Image Builder ダッシュボードが表示されます。
- Image output ウィザードが開きます。 をクリックします。
Image output ページで、次の手順を実行します。
- Release リストから、使用するリリースを選択します。
Select target environments オプションから、
Microsoft Azure
を選択します。- Target Environment - Microsoft Azure ウィンドウで、Image Builder を認可されたアプリケーションとして追加するには、以下の share method オプションのいずれかを選択します。
ソースで設定されたアカウントを使用します。
Source name ドロップダウンメニューから、以前に設定したソースを選択します。Microsoft Azure アカウントの Red Hat Hybrid Cloud Console への接続 を参照してください。
Azure tenant GUID、Subscription ID、および Resource group は自動的に入力され、 ボタンが使用可能になります。
Image Builder は、Tenant GUID が正しくフォーマットされているかどうかを確認し、Image Builder の Authorize Image Builder ボタンが使用可能になります。
アカウント情報を手動で入力します。
Azure Tenant GUID を入力します。
Image Builder は、Tenant GUID が正しくフォーマットされているかどうかを確認し、Image Builder の Authorize Image Builder ボタンが使用可能になります。
1 回限りのアクション: Authorize image builder をクリックして、Image Builder がイメージを Microsoft Azure クラウドにプッシュすることを承認します。
これにより、Microsoft Azure ポータルにリダイレクトされます。
- 認証情報を使用してログインします。
- Permission requested の をクリックします。以前に認証プロセスを行っていた場合は、 が表示されないことに注意してください。権限はすでに付与されています。
Image Builder がテナントに対して承認されていることを確認します。
- Search バーで、Azure Active Directory を検索します。
- Services メニューの左側のメニューから Microsoft Entra ID をクリックします。Azure Active Directory ページが開きます。
- Insights Image Builder を検索し、それが承認されていることを確認します。
- Azure Active Directory の Services リストから Enterprise applications を選択します。
- Enterprise applications ページの Manage list メニューから All applications をクリックします。Red Hat Image Builder が Microsoft Azure クラウドで承認されていることが確認できます。
Red Hat Image Builder をコントリビューターとして
Resource Group
に追加します。-
検索バーに
Resource Groups
と入力し、Services の下にある最初のエントリーを選択します。これにより、Resource Groups
ダッシュボードにリダイレクトされます。 -
Resource Group
を名前で検索して選択します。 - 横のメニューで、Red Hat Image Builder アプリケーションにリソースグループにアクセスするための権限を追加します。 をクリックして、
- メニューから、Role assignments タブをクリックします。
- をクリックします。
ドロップダウンメニューから Add role assignment を選択します。左側に、メニューが表示されます。
- ロールの選択
-
Contributor
のロールを割り当てます。 - アクセスの割り当て
- Assign access to user, group, and service principal オプションを選択します。
- メンバー
- Red Hat と入力します。 をクリックします。 をクリックし、検索バーに
- 選択
- Red Hat Image Builder アプリケーション。
-
検索バーに
これで、Red Hat Image Builder アプリケーションが Microsoft Azure クラウドにイメージをプッシュすることが認可されました。
Red Hat Image Builder アプリケーションは、アカウント管理者がリソースグループの IAM
セクションの下に共有アプリケーションをコントリビューターとして追加した場合にのみ、リソースを見つけることができます。
検証
メニューから、Role assignments タブをクリックします。
Red Hat Image Builder セットは、選択した
Resource Group
の Contributor として表示できます。
6.8. Microsoft Azure アカウントからカスタマイズされた RHEL システムイメージへのアクセス
イメージのビルドとアップロードが完了し、クラウド登録プロセスのステータスが Ready とマークされると、Microsoft Azure アカウントから Azure Disk Image
にアクセスできるようになります。
前提条件
- Microsoft Azure ダッシュボード にアクセスできる。
手順
- Microsoft Azure ダッシュボードにアクセスし、Resource group ページに移動します。
検証
Microsoft Azure アカウントにアクセスすると、指定したリソースグループアカウントおよびイメージが正常に共有されていることがわかります。
注記イメージが表示されない場合には、アップロードプロセスに問題がある可能性があります。Insights Image Builder のダッシュボードに戻り、イメージが Ready とマークされているかどうかを確認します。
6.9. GCP イメージを使用した仮想マシンインスタンスの作成
イメージをビルドおよびアップロードし、クラウド登録プロセスのステータスが Ready になったら、GCP イメージを使用して仮想マシン (VM) インスタンスを作成できます。
前提条件
- 作成したイメージの UUID (Universally Unique Identifier) がある。
- Image-builder サービス API エンドポイント にアクセスできる。
- Google Cloud Platform でプロジェクトの詳細にアクセスできる。
- ブラウザーから Google Cloud Shell にアクセスできる。
手順
- Insights Image Builder ダッシュボードから、作成したイメージのイメージ UUID をコピーします。
- /composes/{composeId} API endpoint にアクセスします。
- composeId 文字列パスをアクティブにします。 をクリックして
-
API エンドポイントの
composes/{composeId}
フィールドに UUID を入力します。 Response body にレスポンスを生成します。以下に例を示します。
をクリックします。API エンドポイントはCopy to Clipboard Copied! Toggle word wrap Toggle overflow { "image_status": { "status": "success", "upload_status": { "options": { "image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086", "project_id": "red-hat-image-builder" }, "status": "success", "type": "gcp" } } }
{ "image_status": { "status": "success", "upload_status": { "options": { "image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086", "project_id": "red-hat-image-builder" }, "status": "success", "type": "gcp" } } }
- Response body フィールドから image_name および project_id をコピーし、Google Cloud Platform 環境からイメージにアクセスします。
ブラウザーから Google Cloud Shell にアクセスし、Google Cloud Platform Project ID をデフォルトの GCP プロジェクトとして設定します。Google Cloud Platform ダッシュボード にアクセスすると、プロジェクトの製品 ID を確認できます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud config set project PROJECT_ID
$ gcloud config set project PROJECT_ID
- Authorize Cloud Shell ウィンドウプロンプトで をクリックし、認証情報を必要とする今回の呼び出しおよび今後の呼び出しを許可します。
Google Cloud Shell で
gcloud
コマンドを使用して、イメージで仮想マシンインスタンスを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud compute instances create INSTANCE_NAME \ --image-project PROJECT_ID_FROM_RESPONSE \ --image IMAGE_NAME \ --zone GCP_ZONE
$ gcloud compute instances create INSTANCE_NAME \ --image-project PROJECT_ID_FROM_RESPONSE \ --image IMAGE_NAME \ --zone GCP_ZONE
詳細は以下のようになります。
- INSTANCE_NAME は、インスタンスの名前です。
- PROJECT_ID_FROM_RESPONSE は、Response body によって生成された project_id です。
- IMAGE_NAME は、Response body によって生成された image_name です。
- GCP_ZONE は、インスタンスが作成される GCP ゾーンです。
検証
Compute Engine が仮想マシンを作成していることを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud compute instances describe INSTANCE_NAME
$ gcloud compute instances describe INSTANCE_NAME
SSH を使用して仮想マシンインスタンスに接続します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud compute ssh --project=PROJECT_ID --zone=ZONE INSTANCE_NAME
$ gcloud compute ssh --project=PROJECT_ID --zone=ZONE INSTANCE_NAME
6.10. GCE イメージのプロジェクトグループへのコピー
GCE イメージを使用して、仮想マシン (VM) インスタンスを作成できます。
前提条件
- 作成したイメージの UUID (Universally Unique Identifier)。
- Image-builder サービス API エンドポイントへアクセスできる。
- ブラウザーから Google Cloud Shell にアクセスできる。
手順
- Images ダッシュボードから、作成したイメージの UUID イメージをコピーします。
- /composes/{composeId} API endpoint にアクセスします。
- composeId 文字列パスをアクティブにします。 をクリックして
-
API エンドポイントの
composes/{composeId}
フィールドに UUID を入力します。 Response body にレスポンスを生成します。以下に例を示します。
をクリックします。API エンドポイントはCopy to Clipboard Copied! Toggle word wrap Toggle overflow { "image_status": { "status": "success", "upload_status": { "options": { "image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086", "project_id": "red-hat-image-builder" }, "status": "success", "type": "gcp" } } }
{ "image_status": { "status": "success", "upload_status": { "options": { "image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086", "project_id": "red-hat-image-builder" }, "status": "success", "type": "gcp" } } }
Response body フィールドから image_name および project_id をコピーし、Google Cloud Platform 環境からイメージにアクセスします。Response body:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow "image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086", "project_id": "red-hat-image-builder"
"image_name": "composer-api-03f0e19c-0050-4c8a-a69e-88790219b086", "project_id": "red-hat-image-builder"
- ブラウザーから Google Cloud Shell にアクセスします。
Google Cloud Platform Project ID をデフォルトの GCP プロジェクトとして設定します。Google Cloud Platform ダッシュボード にアクセスすると、プロジェクトの製品 ID を確認できます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud config set project PROJECT_ID
$ gcloud config set project PROJECT_ID
- Authorize Cloud Shell ウィンドウプロンプトで をクリックし、認証情報を必要とする今回の呼び出しおよび今後の呼び出しを許可します。
gcloud コマンドを使用して、イメージをプロジェクトにコピーします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud compute images create MY_IMAGE_NAME \ --source-image-project red-hat-image-builder \ --source-image IMAGE_NAME
$ gcloud compute images create MY_IMAGE_NAME \ --source-image-project red-hat-image-builder \ --source-image IMAGE_NAME
詳細は以下のようになります。
- MY_IMAGE_NAME は、インスタンスに指定した名前に置き換えます。
- red-hat-image-builder は Response body によって生成された project_id です。
- IMAGE_NAME は、Response body によって生成された image_name です。
検証
イメージが正常にプロジェクトにコピーされていることを確認します。
- Compute Engine / Images セクションにアクセスして、Google Cloud Platform UI を使用します。
Google Cloud Shell でコマンドを実行し、
gcloud
ツールを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow gcloud compute images list --no-standard-images
$ gcloud compute images list --no-standard-images
6.11. 既存のビルドからの新しいイメージの作成
Insights Images を使用して、既存のカスタマイズされた RHEL イメージから新しいイメージを作成できます。Insights Images は、別の UUID を使用して正確なイメージを再作成します。この UUID は、Hybrid Cloud Console でイメージを識別するのに使用できます。新しいイメージはパッケージの更新も取得し、それらの更新でコンテンツを更新します。この新しいイメージは、要件に合わせてカスタマイズできます。
失敗したビルドからイメージを再作成できます。
前提条件
- Insights Images で AWS イメージを作成している。
手順
- Images ダッシュボードから、カスタマイズイメージの作成元となるイメージを選択します。
Node options メニュー (⫶) をクリックし、Re-create image を選択します。Create image ウィザードが開きます。
注記イメージのステータスが
Expired
の場合は、 ボタンをクリックします。- オプション: Navigation パネルを使用してステップを開いて変更を加えることで、新しいイメージをカスタマイズできます。 をクリックします。
- Review ページで、 をクリックします。
Insights Images ダッシュボードが開きます。イメージの再作成が開始し、次の情報がリストされます。
- イメージ名
- UUID
- クラウドターゲット環境
- イメージのオペレーティングシステムのリリース
- イメージ作成のステータス
検証
-
Status 列から、イメージが
Ready
かどうかを確認します。 - オプション: Image details をクリックして、再作成されたイメージに関する追加情報を表示します。
6.12. JSON 作成リクエストのダウンロード
イメージの .json
作成リクエストをダウンロードすると、Image Builder API
を使用して、次のようなイメージビルドタスクを自動化できます。
- 追加パッケージを使用したイメージのカスタマイズ
- パーティションレイアウトのカスタマイズ
- アクティベーションキーの埋め込み
前提条件
- Insights Images でイメージを作成している。
手順
-
Images のテーブルから、
.json
作成リクエストとしてダウンロードするイメージを選択します。 Node options (
⫶
) メニューをクリックし、Download compose request (.json) を選択します。.json
作成リクエストは、ホストサーバーに保存されます。Image Builder API を使用するには、Using hosted image builder via its API を参照してください。
第7章 Insights Image Builder を使用したクラウドプラットフォームでの RHEL カスタマイズイメージの起動
7.1. カスタマイズした RHEL イメージの AWS での起動
カスタマイズした RHEL イメージを AWS クラウド環境で起動できます。
前提条件
- RHEL サブスクリプションがある。
- AWS アカウント を作成している。
- カスタマイズした RHEL イメージが正常にビルドされていて、新しいインスタンスを起動する リージョンと共有 されている。
- ビルドした RHEL カスタマイズイメージが同じ AWS インテグレーションアカウントと共有されている。
- AWS インテグレーションアカウント を Hybrid Cloud Console に追加している。
- "Launch on AWS User" ロールが割り当てられている。ユーザーにロールを割り当てる方法 を参照してください。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
- All images リストで、パブリッククラウド環境で起動するイメージを見つけて、Instance 列の をクリックします。Launch ウィザードが開きます。
Account and customization ページで、以下の手順を実行します。
- Select account ドロップダウンメニューから、使用するアカウントを選択します。
- Select region ドロップダウンメニューから、インスタンスを実行するリージョンを選択します。
オプション: Select template ドロップダウンメニューから、使用するテンプレートを選択します。
テンプレートを指定しない場合は、デフォルトのセキュリティーグループでイメージを起動します。デフォルトのセキュリティーグループが、SSH トラフィックを許可していることを確認してください。
- Select instance type ドロップダウンメニューから、インスタンスタイプの設定を選択します。
Count フィールドで、起動するイメージの数を選択します。 をクリックします。
起動しようとするイメージが多すぎると、ウィザードによって通知されます。AWS アカウントに十分なリソースがあることを確認してください。
注記AWS アカウントにデフォルトの Virtual Private Cloud (VPC) とセキュリティーグループが必要です。これらがない場合は、AWS サポートに連絡して再作成してください。
SSH key authentication ページで、以下のいずれかのオプションを選択します。
- Select existing SSH public key。Select public key ドロップダウンメニューから、既存の SSH 公開鍵を追加します。
- Add and save a new SSH public key。新しい SSH 公開鍵の名前を入力し、新しい SSH 公開鍵ファイルをドラッグまたはアップロードします。 をクリックします。
- Review ページで、イメージ起動プロセスの詳細を確認し、 をクリックします。
検証
- Launch ウィザードには緑色のチェックマークが表示され、System launched successfully というメッセージが表示されます。
-
インスタンスが実行していることを確認するには、画面に表示される
ssh
コマンドをターミナルにコピーし、インスタンスに接続します。
実行中のインスタンスを停止するには、AWS コンソールのドキュメントを参照してください。
7.2. カスタマイズした RHEL イメージの Microsoft Azure での起動
前提条件
- RHEL サブスクリプションがある。
- Microsoft Azure アカウントを作成 している。
- カスタマイズした RHEL イメージが正常にビルドされている。
- ビルドした RHEL カスタマイズイメージが同じ Microsoft Azure インテグレーションアカウントと共有されている。
- Microsoft Azure インテグレーションアカウント を Hybrid Cloud Console に追加している。
- "Launch on Azure User" ロールが割り当てられている。ユーザーにロールを割り当てる方法 を参照してください。
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
- All images リストで、パブリッククラウド環境で起動するイメージを見つけて、Instance 列の をクリックします。Launch ウィザードが開きます。
Account and customization ページで、以下の手順を実行します。
- Select account ドロップダウンメニューから、使用するアカウントを選択します。
Azure resource group のドロップダウンメニューから、インスタンスを実行するリソースグループを選択します。
これにより、このリソースグループが配置されているのと同じリージョンにリソースが作成されます。このフィールドを空のままにすると、イメージと同じリソースグループでインスタンスを実行できます。
- Select instance size ドロップダウンメニューから、インスタンスタイプの設定を選択します。
Count フィールドで、起動するイメージの数を選択します。 をクリックします。
起動しようとするイメージが多すぎると、ウィザードによって通知されます。大規模なイメージセットを起動する場合は、Microsoft Azure サブスクリプションに十分なクォータがあることを確認してください。
SSH key authentication ページで、既存の SSH キーを使用するか、新しい SSH キーを追加するかを選択します。
- 既存の SSH 公開キーを選択するには、次の手順に従います。
- Select public key ドロップダウンメニューから、既存の SSH 公開鍵を選択します。
- をクリックします。
- 新しい SSH 公開キーを追加して保存するには、次の手順に従います。
- Name フィールドに、新しい SSH 公開キーの名前を入力します。
- SSH 公開キーで、新しい SSH 公開キーファイルをドラッグまたはアップロードします。
- 注記
Microsoft Azure は
ed25519
SSH キーをサポートしていません。
- Review ページで、イメージ起動プロセスの詳細を確認し、 をクリックします。
起動プロセスでは、Microsoft Azure クラウドプラットフォームでインスタンスを起動するのに数分かかります。
検証
- Launch ウィザードには緑色のチェックマークが表示され、System launched successfully というメッセージが表示されます。
-
インスタンスが実行していることを確認するには、画面に表示される
ssh
コマンドをターミナルにコピーし、インスタンスに接続します。
7.3. カスタマイズした RHEL イメージの Google Cloud Platform での起動
前提条件
- RHEL サブスクリプションがある。
- Google Cloud Platform (GCP) プロジェクトが作成されている。
- カスタマイズした RHEL イメージが正常にビルドされている。
- ビルド済みのカスタマイズした RHEL イメージが、同じ GCP プロジェクトと共有されている。
- "Launch on Google User" ロールが割り当てられている。ユーザーにロールを割り当てる方法 を参照してください。
- GCP プロジェクト を Hybrid Cloud Console に追加している。
GCP プロジェクトで次の API を有効にしている。
- Compute Engine API
- Identity and Access Management API
手順
- Hybrid Cloud Console Insights にアクセスし、 → をクリックします。
- All images リストで、パブリッククラウド環境で起動するイメージを見つけて、Instance 列の をクリックします。Launch ウィザードが開きます。
Account and customization ページで、以下の手順を実行します。
- Select account ドロップダウンメニューから、使用するアカウントを選択します。
オプション: Select template ドロップダウンメニューから、使用するテンプレートを選択します。
テンプレートを指定しない場合は、ファイアウォールルールを使用してデフォルトの Virtual Private Cloud (VPC) でイメージを起動します。
- Select machine type ドロップダウンメニューから、マシン設定を選択します。
- Count フィールドで、起動するイメージの数を選択し、 をクリックします。
SSH key authentication ページで、以下のいずれかのオプションを選択します。
- Select existing SSH public key。Select public key ドロップダウンメニューから、既存の SSH 公開鍵を選択します。 をクリックします。
- Add and save a new SSH public key。新しい SSH 公開鍵の名前を入力し、新しい SSH 公開鍵ファイルをドラッグまたはアップロードします。 をクリックします。
- Review ページで、イメージ起動プロセスの詳細を確認し、 をクリックします。
検証
- Launch ウィザードには緑色のチェックマークが表示され、System launched successfully というメッセージが表示されます。
-
インスタンスが実行していることを確認するには、画面に表示される
ssh
コマンドをターミナルにコピーし、インスタンスに接続します。
7.4. 起動通知の設定
起動プロセスのさまざまなイベントの通知を設定できます。Red Hat Hybrid Cloud Console で通知を設定する方法は、Red Hat Hybrid Cloud Console での通知の設定 を参照してください。
起動イベント
- Launch failed
- イメージの起動に失敗すると、通知が送信されます。
- Launch completed
- イメージの起動が成功すると、通知が送信されます。
メール通知を選択した場合、これらの通知にはイベントに関する詳細情報が含まれることに注意してください。たとえば、Launch completed イベントがトリガーされた場合、メール通知には起動されたインスタンスのリストが含まれます。
第8章 カスタマイズしたイメージのデプロイ
VMWare vSphere プライベートクラウド用にカスタマイズしたイメージを作成した後、そのイメージを VMware vSphere にデプロイできます。ゲストイメージ (.qcow2
) およびインストーラー (.iso
) の場合は、これらのイメージをダウンロードして仮想マシンにデプロイできます。
カスタマイズされたイメージは、Hybrid Cloud Console から AWS、GCP、Azure のパブリッククラウドにのみ直接起動できます。VMDK のカスタマイズされたイメージをまず VMware vSphere にアップロードし、そこにデプロイしてから、仮想マシンを作成する必要があります。ゲストイメージ (.qcow2
) とインストーラー (.iso
) の場合は、これらのイメージをダウンロードして仮想マシンに直接展開できます。
8.1. cloud-init を使用してデプロイされたシステムにアクセスするための認証情報を設定する
Red Hat Insights イメージ UI インターフェイスを使用してブループリントにユーザー名とパスワードを追加することはできません。イメージにユーザー名とパスワードを追加するには、cloud-init
ツールを使用します。
次の例は、Insights Image Builder で作成された VMware OVA イメージタイプに認証情報を追加する方法を示しています。この方法を使用すると、他のイメージタイプに認証情報を追加できます。
Open virtualization format (.ova
) は、仮想ハードウェアに関する追加のメタデータを含む .vmdk
イメージです。.ova
イメージには、たとえば user-data
ファイルを使用してユーザーをプロビジョニングするために使用できる cloud-init
パッケージがインストールされています。
ホストされたサービスにログイン認証情報を共有する代わりに、イメージ内にインストールされ、デフォルトで有効になっている cloud-init
と open-vm-tools
を使用します。たとえば、cloud-init
を使用して VMware vSphere Cloud Director に認証情報を渡すことができます。
前提条件
-
Hybrid Cloud Console を使用して、
.ova
形式のイメージを作成した。
手順
-
.ova
イメージをダウンロードしたディレクトリーにアクセスします。 metadata.yaml
という名前のファイルを作成し、そのファイルに次の情報を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow instance-id: cloud-vm local-hostname: vmname
instance-id: cloud-vm local-hostname: vmname
userdata.yaml
ファイルを作成します。以下の情報をファイルに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow #cloud-config users: - name: admin sudo: "ALL=(ALL) NOPASSWD:ALL" ssh_authorized_keys: - ssh-rsa AAA...fhHQ== your.email@example.com
#cloud-config users: - name: admin sudo: "ALL=(ALL) NOPASSWD:ALL" ssh_authorized_keys: - ssh-rsa AAA...fhHQ== your.email@example.com
このファイルには、初回起動後にシステムにアクセスして追加ユーザーを作成するために使用できる、管理者または root ユーザーのパスワード以外の認証情報が含まれています。
ssh_authorized_keys
フィールドは SSH 公開鍵です。~/.ssh/id_rsa.pub
で SSH 公開鍵を確認できます。
次のステップ
- イメージを、CLI を使用して vSphere にデプロイ するか、vSphere GUI にデプロイします。
8.2. API を使用してデプロイされたシステムにアクセスするための認証情報を設定する
Red Hat Insights イメージ UI インターフェイスを使用してブループリントにユーザー名とパスワードを追加することはできません。イメージにユーザー名とパスワードを追加するには、Image-builder service API を使用します。
次の例は、Insights Image Builder で作成された VMware OVA イメージタイプに認証情報を追加する方法を示しています。この方法を使用して、他のイメージタイプに認証情報を追加することもできます。
前提条件
- Hybrid Cloud Console にアクセスできる。
- OAuth 2.0 認可。
- Image Builder API を使用してアクセストークンが作成されている。Image Builder API クエリーのアクセストークンの生成 を参照してください。
-
jq
ツールがインストールされている。
手順
Image Builder API クエリーのアクセストークンの生成の手順に従って、API クエリーのアクセストークン を生成します。
重要アクセストークンは 15 分後に期限切れになります。有効期限は JSON 応答内に含まれます。有効期限が切れる前にトークンがローテーションされるように、アクセストークンを取得するプロセスを約 10 分ごとに繰り返す必要があります。
システムで、
.json
形式のファイルを作成してイメージを作成します。次の例は、x86_64 CPU アーキテクチャー用の最新の RHEL 9.4ova
イメージを作成する方法を示しています。Copy to Clipboard Copied! Toggle word wrap Toggle overflow request.json
$ request.json { "image_name": "ova_image_name", "distribution": "rhel-94", "image_requests": [ { "architecture": "x86_64", "image_type": "vsphere-ova", "upload_request": { "type": "vmdk", "options": {} } } ], "customizations": { "users": [ { "name": "user-name", "ssh_key": "ssh-rsa AAAAB...qfGI+vk", "password": "password" } ] } }
Image Builder API に作成リクエストを送信します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --silent \ --request POST \ --header "Authorization: Bearer $access_token" \ --header "Content-Type: application/json" \ --data @request.json \ https://console.redhat.com/api/image-builder/v1/compose
$ curl --silent \ --request POST \ --header "Authorization: Bearer $access_token" \ --header "Content-Type: application/json" \ --data @request.json \ https://console.redhat.com/api/image-builder/v1/compose
リクエストが成功すると、次のようなイメージ ID の出力が表示されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow {"id":"fd4ecf3c-f0ce-43dd-9fcc-6ad11208b939"}
{"id":"fd4ecf3c-f0ce-43dd-9fcc-6ad11208b939"}
イメージビルドのステータスを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl \ --silent \ --header "Authorization: Bearer $access_token" \ "https://console.redhat.com/api/image-builder/v1/composes/$compose_id" \ | image_ID.
$ curl \ --silent \ --header "Authorization: Bearer $access_token" \ "https://console.redhat.com/api/image-builder/v1/composes/$compose_id" \ | image_ID.
リクエストが成功すると、次のようなイメージ ID の出力が表示されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow {"id":"fd4ecf3c-f0ce-43dd-9fcc-6ad11208b939"}
{"id":"fd4ecf3c-f0ce-43dd-9fcc-6ad11208b939"}
Red Hat Hybrid Cloud Console にアクセスして、イメージビルドの進行状況を確認することもできます。
イメージがビルドされると、次の出力が表示されます。
リクエストが成功すると、次のようなイメージ ID の出力が表示されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow { "image_status": { "status": "success", "upload_status": { "options": { "url": "https://image-builder-service-production.s3.amazonaws.com/composer-api-76...-disk.ova?e42..." }, "status": "success", "type": "aws.s3" } } }
{ "image_status": { "status": "success", "upload_status": { "options": { "url": "https://image-builder-service-production.s3.amazonaws.com/composer-api-76...-disk.ova?e42..." }, "status": "success", "type": "aws.s3" } } }
イメージの作成が完了したら、イメージをダウンロードします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --location --output vsphere-ova.vmdk \ “https://image-builder-service-production.s3.amazonaws.com/composer-api-76...-disk.ova?e42...”
$ curl --location --output vsphere-ova.vmdk \ “https://image-builder-service-production.s3.amazonaws.com/composer-api-76...-disk.ova?e42...”
イメージはシステムに保存され、使用できる状態になります。
次のステップ
- イメージを、CLI を使用して vSphere にデプロイ するか、vSphere GUI にデプロイします。
8.3. VMDK イメージのアップロードと vSphere での RHEL 仮想マシンの作成
イメージの作成を設定を完了した後、CLI を使用してそれを VMware vSphere にデプロイし、仮想マシンを作成してログインできます。
前提条件
-
cloud-init
ツールを使用して、デプロイされたシステムにアクセスするための認証情報を設定した。デプロイされたシステムにアクセスするための認証情報の設定 を参照してください。 環境で次の値を使用して
govc
VMware CLI ツールクライアントを設定した。Copy to Clipboard Copied! Toggle word wrap Toggle overflow GOVC_URL GOVC_DATACENTER GOVC_FOLDER GOVC_DATASTORE GOVC_RESOURCE_POOL GOVC_NETWORK
GOVC_URL GOVC_DATACENTER GOVC_FOLDER GOVC_DATASTORE GOVC_RESOURCE_POOL GOVC_NETWORK
手順
以下のように
gzip
で圧縮し、base64
でエンコードしてmetadata.yaml
とuserdata.yaml
ファイルを環境にエクスポートします。これは、追加の手順で使用されます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow export METADATA=$(gzip -c9 <metadata.yaml | { base64 -w0 2>/dev/null || base64; }) \ USERDATA=$(gzip -c9 <userdata.yaml | { base64 -w0 2>/dev/null || base64; })
export METADATA=$(gzip -c9 <metadata.yaml | { base64 -w0 2>/dev/null || base64; }) \ USERDATA=$(gzip -c9 <userdata.yaml | { base64 -w0 2>/dev/null || base64; })
metadata.yaml
およびuserdata.yaml
ファイルを使用して vSphere でイメージを起動します。.vmdk
イメージを vSphere にインポートします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow govc import.vmdk ./composer-api.vmdk foldername
$ govc import.vmdk ./composer-api.vmdk foldername
電源をオンにせずに vSphere に仮想マシンを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow govc vm.create \ -net.adapter=vmxnet3 \ -m=4096 -c=2 -g=rhel8_64Guest \ -firmware=bios -disk=”foldername/composer-api.vmdk” \ -disk.controller=ide -on=false \ vmname
govc vm.create \ -net.adapter=vmxnet3 \ -m=4096 -c=2 -g=rhel8_64Guest \ -firmware=bios -disk=”foldername/composer-api.vmdk” \ -disk.controller=ide -on=false \ vmname
仮想マシンを変更して、
ExtraConfig
変数のcloud-init
設定を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow govc vm.change -vm vmname \ -e guestinfo.metadata="${METADATA}" \ -e guestinfo.metadata.encoding="gzip+base64" \ -e guestinfo.userdata="${USERDATA}" \ -e guestinfo.userdata.encoding="gzip+base64"
govc vm.change -vm vmname \ -e guestinfo.metadata="${METADATA}" \ -e guestinfo.metadata.encoding="gzip+base64" \ -e guestinfo.userdata="${USERDATA}" \ -e guestinfo.userdata.encoding="gzip+base64"
仮想マシンの電源をオンにします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow govc vm.power -on vmname
govc vm.power -on vmname
仮想マシンの IP アドレスを取得します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HOST=$(govc vm.ip vmname)
HOST=$(govc vm.ip vmname)
SSH を使用して、
cloud-init
ファイル設定に指定された user-data を使用して仮想マシンにログインします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh admin@HOST
$ ssh admin@HOST
関連情報
8.4. OVA VMDK イメージの vSphere GUI へのデプロイ
open virtualization format (.ova
) で .vmdk
イメージを作成した後、vSphere GUI クライアントを使用してそれを VMware vSphere にデプロイできます。起動前にさらにカスタマイズできる仮想マシンが作成されます。
前提条件
- ブラウザーで vSphere UI にログインしている。
-
.ova
イメージをダウンロードしている。
手順
- vSphere Client で、Actions メニューから Deploy OVF Template を選択します。
- Deploy OVF Template ページで、各設定オプションの設定を完了し、 をクリックします。
.ova
イメージのデプロイが開始されます。イメージのデプロイが完了すると、
.ova
イメージから新しい仮想マシン (VM) が作成されます。デプロイされたイメージのページで、次の手順を実行します。
- Actions メニューから Edit Setting を選択します。
Virtual Hardware タブで、CPU やメモリーなどのリソースを設定し、新しいネットワークアダプターを追加します。
CD/DVD drive 1 オプションでは、起動時にユーザーをプロビジョニングするために、
cloud-init.iso
を含む CD または DVD ドライブを接続します。これで、
cloud-init.iso
ファイルのユーザー名とパスワードを使用して仮想マシンを起動する準備が整いました。
8.5. カスタマイズされた RHEL ゲストシステムイメージからの仮想マシンの作成
Insights Images を使用して作成した QCOW2 イメージから仮想マシン (VM) を作成できます。
前提条件
- Insights Images を使用して QCOW2 イメージを作成し、ダウンロードしました。
手順
- .qcow2 イメージをダウンロードしたディレクトリーにアクセスします。
meta-data
という名前のファイルを作成します。このファイルに以下の情報を追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow instance-id: nocloud local-hostname: vmname
instance-id: nocloud local-hostname: vmname
user-data
という名前のファイルを作成します。以下の情報をファイルに追加します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow #cloud-config user: admin password: password chpasswd: {expire: False} ssh_pwauth: True ssh_authorized_keys: - ssh-rsa AAA...fhHQ== your.email@example.com
#cloud-config user: admin password: password chpasswd: {expire: False} ssh_pwauth: True ssh_authorized_keys: - ssh-rsa AAA...fhHQ== your.email@example.com
-
ssh_authorized_keys
は、SSH 公開鍵になります。~/.ssh/id_rsa.pub
で SSH 公開鍵を確認できます。
-
genisoimage
コマンドを使用して、user-data
ファイルおよびmeta-data
ファイルを含む ISO イメージを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow genisoimage -output cloud-init.iso -volid cidata -joliet -rock user-data meta-data
# genisoimage -output cloud-init.iso -volid cidata -joliet -rock user-data meta-data I: -input-charset not specified, using utf-8 (detected in locale settings) Total translation table size: 0 Total rockridge attributes bytes: 331 Total directory bytes: 0 Path table size(bytes): 10 Max brk space used 0 183 extents written (0 MB)
virt-install
コマンドを使用して、KVM ゲストイメージから新しい仮想マシンを作成します。仮想マシンイメージへのアタッチメントとして、手順 4 で作成した ISO イメージを含めます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow virt-install \ --memory 4096 \ --vcpus 4 \ --name myvm \ --disk composer-api.qcow2,device=disk,bus=virtio,format=qcow2 \ --disk cloud-init.iso,device=cdrom \ --os-variant rhel1-latest \ --virt-type kvm \ --graphics none \ --import
# virt-install \ --memory 4096 \ --vcpus 4 \ --name myvm \ --disk composer-api.qcow2,device=disk,bus=virtio,format=qcow2 \ --disk cloud-init.iso,device=cdrom \ --os-variant rhel1-latest \ --virt-type kvm \ --graphics none \ --import
詳細は以下のようになります。
- --graphics none - ヘッドレス RHEL 仮想マシンであることを示します。
- --vcpus 4 - は 4 つの仮想 CPU を使用することを示します。
- --memory 4096 - 4096 MB の RAM を使用することを示します。
仮想マシンのインストールが起動します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Starting install... Connected to domain myvm ... [ OK ] Started Execute cloud user/final scripts. [ OK ] Reached target Cloud-init target. Red Hat Enterprise Linux 1-latest (Ootpa) Kernel 4.18.0-221.el8.x86_64 on an x86_64
Starting install... Connected to domain myvm ... [ OK ] Started Execute cloud user/final scripts. [ OK ] Reached target Cloud-init target. Red Hat Enterprise Linux 1-latest (Ootpa) Kernel 4.18.0-221.el8.x86_64 on an x86_64
8.6. カスタマイズされた RHEL ISO システムイメージのベアメタルシステムへのインストール
Insights Image Builder を使用して作成した ISO イメージから仮想マシン (VM) を作成できます。
前提条件
- Insights Image Builder を使用して ISO イメージを作成し、ダウンロードしました。
- 8 GB の USB フラッシュドライブ。
手順
- ISO イメージをダウンロードしたディレクトリーにアクセスします。
- ブート可能な ISO イメージファイルを USB フラッシュドライブに配置します。
- USB フラッシュドライブを、起動するコンピューターのポートに接続します。
- USB フラッシュドライブから ISO イメージを起動します。
カスタマイズされた起動可能な ISO イメージをインストールする手順を実行します。
起動画面に以下のオプションが表示されます。
- Install Red Hat Enterprise Linux 1-latest
- Test this media & install Red Hat Enterprise Linux 1-latest
関連情報
8.7. OCI での QCOW2 イメージのインポートと実行
カスタマイズした .qcow2
イメージを Oracle Cloud Infrastructure (OCI) にインポートできます。その後、カスタマイズした .qcow2
イメージを仮想マシン上で起動できます。
前提条件
- ブラウザーで Oracle Cloud UI にログインしている。
-
.qcow2
イメージをダウンロードしている。 -
Images ダッシュボードの Insights Instance 列から、
.qcow2
イメージの Image Link URL をコピーしている。
手順
- Oracle Cloud UI ダッシュボードで、Compute > Custom Images をクリックします。
- Custom Images ダッシュボードで、Import image をクリックします。
Import image ウィンドウで、次のように設定します。
- Import from an object storage URL オプションを選択します。
- Object Storage URL フィールドに、Insights イメージで指定された URL を貼り付けます。
- QCOW2 イメージタイプを選択します。
- Launch mode で、Paravirtualized mode オプションを選択します。
- をクリックします。
システムがイメージのインポートを完了すると、カスタマイズしたイメージを OCI 環境で実行できます。
第9章 Image Builder API の使用
Image Builder API には、さまざまなタイプの要求を使用する例が含まれています。管理者と開発者は、Image Builder API を使用してカスタムスクリプトを作成し、Image Builder サービスをサードパーティーアプリケーションと統合できます。
9.1. Image Builder API クエリーのアクセストークンを生成する
Image Builder API クエリーにはアクティブなアクセストークンが必要です。アクセストークンは、作成から 900 秒後に期限切れになります。アクセストークンを生成するには、以下の手順に従います。
前提条件
- RHEL サブスクリプションがある。
- Red Hat Hybrid Cloud Console に サービスアカウント がある。詳細は、サービスアカウントの作成 を参照してください。
手順
アクセストークンを生成するには、スクリプトの Authorization ヘッダーに
Bearer $ACCESS_TOKEN
を値として指定した次のコードを含めます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow CLIENT_ID="YOUR_CLIENT_ID" CLIENT_SECRET="YOUR_CLIENT_SECRET" ACCESS_TOKEN=$( \ curl -d "client_id=$CLIENT_ID" \ -d "client_secret=$CLIENT_SECRET" \ -d "grant_type=client_credentials" \ "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token" \ -d "scope=api.console" \ | jq -r .access_token \ )
CLIENT_ID="YOUR_CLIENT_ID" CLIENT_SECRET="YOUR_CLIENT_SECRET" ACCESS_TOKEN=$( \ curl -d "client_id=$CLIENT_ID" \ -d "client_secret=$CLIENT_SECRET" \ -d "grant_type=client_credentials" \ "https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token" \ -d "scope=api.console" \ | jq -r .access_token \ )
YOUR_CLIENT_ID は サービスアカウント のクライアント ID に、YOUR_CLIENT_SECRET はクライアントシークレットに置き換えます。
関連情報
- Image Builder API の詳細は、Image Builder API カタログ を参照してください。
Red Hat ドキュメントへのフィードバック (英語のみ)
Red Hat ドキュメントに関するフィードバックをお寄せください。いただいたご要望に迅速に対応できるよう、できるだけ詳細にご記入ください。
前提条件
- Red Hat カスタマーポータルにログインしている。
手順
フィードバックを送信するには、以下の手順を実施します。
- Create Issue にアクセスします。
- Summary テキストボックスに、問題または機能拡張に関する説明を入力します。
- Description テキストボックスに、問題または機能拡張のご要望に関する詳細を入力します。
- Reporter テキストボックスに、お客様のお名前を入力します。
- ボタンをクリックします。
これによりドキュメントに関するチケットが作成され、適切なドキュメントチームに転送されます。フィードバックをご提供いただきありがとうございました。
Red Hat サポートでのサポートケースの作成
以下の手順を実行して、Red Hat サポートで Red Hat Insights からサポートケースを作成します。
前提条件
- Red Hat カスタマーポータルにログインしている。
手順
- Red Hat Hybrid Cloud Console にアクセスします。
Open a support case を選択します。
をクリックし、Customer support ページにリダイレクトされます。
- Get Support ページで、報告する問題の種類を選択し、 をクリックします。
Summarize ページで、次の手順を実行します。
Summary フィールドに問題の説明を記入します。
注記Red Hat Insights が自動で選択されない場合は、手動で選択する必要があります。
- Product ドロップダウンメニューから、Red Hat Insights を選択します。
- Version ドロップダウンメニューから、問題があるコンポーネントを選択します。
Review ページで、 をクリックします。
サポートケースが作成されます。