第3章 AWS への RHEL AI のインストール


AWS に Red Hat Enterprise Linux AI をインストールしてデプロイする方法は複数あります。

RAW ファイルを使用して RHEL AI をインストールおよびデプロイするには、まず RHEL AI イメージを Amazon Machine Image (AMI) に変換する必要があります。

3.1. RHEL AI イメージの AWS AMI への変換

RHEL AI を AWS マシンにデプロイする前に、S3 バケットを設定し、RHEL AI イメージを AWS AMI に変換する必要があります。

次のプロセスでは、次のリソースを作成します。

  • RHEL AI イメージを含む S3 バケット
  • AWS EC2 スナップショット
  • AWS AMI
  • AWS インスタンス

前提条件

手順

  1. AWS のドキュメント に従って、AWS コマンドラインツールをインストールします。
  2. S3 バケットを作成し、イメージファイルの AWS スナップショットへの変換を許可する権限を設定する必要があります。

    1. 次のコマンドを実行して、必要な環境変数を作成します。

      $ export BUCKET=<custom_bucket_name>
      $ export RAW_AMI=nvidia-bootc.ami
      $ export AMI_NAME="rhel-ai"
      $ export DEFAULT_VOLUME_SIZE=1000
      Copy to Clipboard Toggle word wrap
      注記

      AWS では、DEFAULT_VOLUME_SIZE は GB 単位で測定されます。

    2. 以下のコマンドを実行して S3 バケットを作成できます。

      $ aws s3 mb s3://$BUCKET
      Copy to Clipboard Toggle word wrap
    3. バケットに S3 ロールを生成するために必要な設定で trust-policy.json ファイルを作成する必要があります。

      $ printf '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "vmie.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals":{ "sts:Externalid": "vmimport" } } } ] }' > trust-policy.json
      Copy to Clipboard Toggle word wrap
    4. 名前を付けることができるバケットの S3 ロールを作成します。以下のコマンド例では、vmiport がロールの名前です。

      $ aws iam create-role --role-name vmimport --assume-role-policy-document file://trust-policy.json
      Copy to Clipboard Toggle word wrap
    5. バケットにポリシーを生成するために必要な設定で role-policy.json ファイルを作成する必要があります。

      $ printf '{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket" ], "Resource":[ "arn:aws:s3:::%s", "arn:aws:s3:::%s/*" ] }, { "Effect":"Allow", "Action":[ "ec2:ModifySnapshotAttribute", "ec2:CopySnapshot", "ec2:RegisterImage", "ec2:Describe*" ], "Resource":"*" } ] }' $BUCKET $BUCKET > role-policy.json
      Copy to Clipboard Toggle word wrap
    6. 以下のコマンドを実行してバケットのポリシーを作成します。

      $ aws iam put-role-policy --role-name vmimport --policy-name vmimport-$BUCKET --policy-document file://role-policy.json
      Copy to Clipboard Toggle word wrap
  3. S3 バケットがセットアップされました。Red Hat Enterprise Linux AI ダウンロードページ から RAW イメージをダウンロードする必要があります。
  4. RAW イメージリンクをコピーし、次のコマンドに追加します。

    $ curl -Lo disk.raw.gz <link-to-raw-file>
    Copy to Clipboard Toggle word wrap
  5. 次のコマンドで raw.gz ファイルを展開します。

    $ gunzip disk.raw.gz
    Copy to Clipboard Toggle word wrap
  6. 次のコマンドを使用して、イメージを S3 バケットにアップロードします。

    $ aws s3 cp disk.raw s3://$BUCKET/$RAW_AMI
    Copy to Clipboard Toggle word wrap
  7. 次のコマンドを実行して、イメージをスナップショットに変換し、task_id 変数名に保存します。

    $ printf '{ "Description": "my-image", "Format": "raw", "UserBucket": { "S3Bucket": "%s", "S3Key": "%s" } }' $BUCKET $RAW_AMI > containers.json
    Copy to Clipboard Toggle word wrap
    $ task_id=$(aws ec2 import-snapshot --disk-container file://containers.json | jq -r .ImportTaskId)
    Copy to Clipboard Toggle word wrap
  8. 次のコマンドを使用して、ディスクイメージからスナップショットへの変換ジョブの進行状況を確認できます。

    $ aws ec2 describe-import-snapshot-tasks --filters Name=task-state,Values=active
    Copy to Clipboard Toggle word wrap
  9. 変換ジョブが完了したら、次のコマンドを実行してスナップショット ID を取得し、それを snapshot_id という変数に保存できます。

    $ snapshot_id=$(aws ec2 describe-import-snapshot-tasks | jq -r '.ImportSnapshotTasks[] | select(.ImportTaskId=="'${task_id}'") | .SnapshotTaskDetail.SnapshotId')
    Copy to Clipboard Toggle word wrap
  10. 次のコマンドを実行して、スナップショットにタグ名を追加し、識別しやすくします。

    $ aws ec2 create-tags --resources $snapshot_id --tags Key=Name,Value="$AMI_NAME"
    Copy to Clipboard Toggle word wrap
  11. 次のコマンドを使用して、スナップショットから AMI を登録します。

    $ ami_id=$(aws ec2 register-image  \
        --name "$AMI_NAME" \
        --description "$AMI_NAME" \
        --architecture x86_64 \
        --root-device-name /dev/sda1 \
        --block-device-mappings "DeviceName=/dev/sda1,Ebs={VolumeSize=${DEFAULT_VOLUME_SIZE},SnapshotId=${snapshot_id}}" \
        --virtualization-type hvm \
        --ena-support \
        | jq -r .ImageId)
    Copy to Clipboard Toggle word wrap
  12. 次のコマンドを実行して、別のタグ名を追加して AMI を識別できます。

    $ aws ec2 create-tags --resources $ami_id --tags Key=Name,Value="$AMI_NAME"
    Copy to Clipboard Toggle word wrap
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat