Satellite ロケーションで仮想化をセットアップする
ご使用の Satellite ロケーションで Red Hat OpenShift 仮想化を使用するように Bare Metal Servers をセットアップできます。 仮想化を使用すると、管理対象 Red Hat OpenShift スペース内の Bare Metal Servers 上に Windows またはその他の仮想マシンをプロビジョンできます。
- サポートされるホスト・オペレーティング・システム
- Red Hat CoreOS (RHCOS)
前提条件
- RHCOS 対応のロケーションを作成します。 あなたの地域でRHCOSが有効になっているかどうかを確認するには、私の位置情報は有効になっていますか?Red HatCoreOS?。 ロケーションが有効になっていない場合は、 RHCOS を使用して新しいロケーションを作成します。
- ロケーションにホストを取り付け、 ロケーションコントロールプレーンを セットアップする。
- ベア・メタル・ホスト名を見つけて記録します。
- ベアメタル・サーバーのネットワーク情報を見つけます。 ご使用のシステムのパブリック・インターフェースとプライベート・インターフェースの CIDR およびゲートウェイ情報を記録します。
- IBM Cloud Object Storage を使用してイグニッション・ファイルを保管する場合は、バケットを作成または識別します。
- サポートされるオペレーティング・システムを実行する Satellite ロケーション内でクラスターを作成または識別します。例えば、このチュートリアルでは、 4.11を実行している Red Hat OpenShift クラスターを使用します。
- OpenShift Data Foundation をストレージ・ソリューションとして使用する場合は、プロビジョン時に Bare Metal Servers のそれぞれに 2 つのストレージ・ディスクを追加します。
Bare Metal Server Satellite
仮想化をセットアップするには、 Bare Metal Server が以下の要件を満たしている必要があります。
- 仮想化テクノロジーをサポートする必要があります。
- Intel CPU の場合、仮想化のサポートは
Intel VT
またはVT-x
と呼ばれます。 - AMD CPU の場合、仮想化のサポートは
AMD Virtualization
またはAMD-V
と呼ばれます。
- Intel CPU の場合、仮想化のサポートは
- 最小 8 コアと 32 GB RAM、および vCPU オーバーヘッドに必要な追加コアを備えている必要があります。 詳しくは、 Red Hat OpenShift 資料の CPU オーバーヘッド を参照してください。
- ワークロードのニーズに対応する十分なメモリーを含める必要があります。 例:
360 MiB + (1.002 * requested memory) + 146 MiB + 8 MiB * (number of vCPUs) + 16 MiB * (number of graphics devices)
詳しくは、 Red Hat OpenShift 資料の メモリー・オーバーヘッド を参照してください。 - オペレーティング・システムがインストールされていません。 Red Hat CoreOS オペレーティング・システムは、このプロセスの後半でインストールされます。
- OpenShift Data Foundation をストレージ・ソリューションとして使用する場合は、プロビジョン時に Bare Metal Servers のそれぞれに 2 つのストレージ・ディスクを追加します。
ご使用のサーバーがこれらの要件を満たしていない場合は、 Bare Metal Serverを作成 できます。 ベア・メタル・オプションのリストについては、 ベア・メタル・サーバーで使用可能なオプション を参照してください。
お客様のロケーションへのベア・メタル・サーバーの接続
以下の一般的な手順に従って、ベア・メタル・サーバーをロケーションに接続します。 これらのステップは、ご使用のハードウェアによって異なる場合があります。 完全なチュートリアルについては、 IBM Cloud Bare Metal Servers for Classic ホストのベア・メタル・サーバー を参照してください。
-
Red Hat CoreOS ISOをダウンロードします。 使用する Red Hat OpenShift バージョンに一致する対応する ISO バージョンを見つけます。 例えば、バージョン 4.11を使用する場合は、 4.11用の RHCOS のバージョンをダウンロードします (
rhcos-4.11.9-x86_64-live.x86_64.iso
など)。 -
ベアメタル・サーバーにログインします。
-
BIOS 設定で、仮想化が有効になっていることを確認します。
-
ステップ 1 でダウンロードした Red Hat CoreOS ISO ファイルをブートするためのブート順序をセットアップします。
-
システムをブートして ISO をインストールします。
-
Red Hat CoreOS がメモリー内にブートされたら、ロケーション点火ファイルを指定してサーバーを自分のロケーションに接続できるように、ネットワーク接続をセットアップします。
-
Satellite、イグニッションスクリプトをダウンロードしてください。
ibmcloud sat host attach --location <location_name> --operating-system RHCOS
-
イグニッション・ファイルを編集して、ベア・メタル・ホスト名とネットワーク情報を含めます。 これらの詳細の追加について詳しくは、 イグニッション・ファイルの構成 を参照してください。 ロケーションに添付するベア・メタル・サーバーごとに、イグニッション・ファイルを編集する必要があることに注意してください。
-
ベアメタル・サーバーがアクセスできる場所に点火ファイルを配置します。 例えば、 IBM Cloud Object Storage バケットにアップロードすることができます。
-
イグニッション・スクリプトをベア・メタル・サーバーにダウンロードします。
curl <ignition_file_location > ignition.ign
- 以下の
install
コマンドを実行して、ignnition ファイルを開始します。<diskName>
は、 Red Hat CoreOS をインストールするディスク・ロケーションの絶対パスに置き換え、<filename>
は点火ファイルのパスに置き換えます。
sudo coreos-installer install <diskName> --ignition-file <filename>
インストール・プロセスは、完了までに 1 時間から 2 時間かかることがあります。
- インストールが完了したら、RHCOS ISO ファイルのプラグを抜き、ハード・ディスクからリブートします。
- Satellite のロケーションを調べて、ベア・メタル・サーバーが接続されていることを確認します。
- ロケーションに接続したい各ベアメタルホストについて、この手順を繰り返します。
Bare Metal Server ホストを Red Hat OpenShift クラスターに割り当てる
Bare Metal Server を自分のロケーションに接続した後、それを Red Hat OpenShift クラスター・ワーカー・プールに割り当てることができます。
-
Red Hat OpenShift クラスター・ワーカー・プールに追加するホストを見つけます。
ibmcloud sat hosts --location <locationID>
-
Bare Metal Server を Red Hat OpenShift クラスター・ワーカー・プールに割り当てます。
ibmcloud sat host assign --location <locationID> --cluster <clusterID> --host <hostID> --worker-pool default --zone <zone>
これらのステップを繰り返して、追加の Bare Metal Servers をクラスターに割り当てます。
Bare Metal Server がワーカー・プールに割り当てられたので、 Red Hat OpenShift 仮想化をセットアップできます。
クラスター用のストレージのセットアップ
このシナリオ例では、 Bare Metal Servers上の使用可能なストレージ・ディスクを自動的に検出することで、クラスター内の 3 つのノードに OpenShift Data Foundation をデプロイします。
少なくとも 3 つの Bare Metal Servers をロケーションに接続し、それらをクラスター内のワーカー・ノードとして割り当てた後、 odf-local
Satellite ストレージ・テンプレートを使用して OpenShift Data Foundation をデプロイできます。
- Satellite ロケーション・コンソールから、自分のロケーションをクリックし、 「ストレージ」>「ストレージ構成の作成」 をクリックします。
- 設定に名前をつける。
- 「OpenShift Data Foundation for local devices」 を選択し、バージョン 4.10 を選択します。
- この例では、残りのデフォルト設定のままにして、 「次へ」 をクリックします。
- ODF がデプロイされるまで待ちます。 次に、
openshift-storage
名前空間内のポッドをリストして、ポッドの準備ができていることを確認します。
出力例oc get pods -n openshift-storage
NAME READY STATUS RESTARTS AGE ocs-metrics-exporter-5b85d48d66-lwzfn 1/1 Running 0 2d1h ocs-operator-86498bf74c-qcgvh 1/1 Running 0 2d1h odf-console-68bcd54c7c-5fvkq 1/1 Running 0 2d1h rook-ceph-mgr-a-758845d77c-xjqkg 2/2 Running 0 2d1h rook-ceph-mon-a-85d65d9f66-crrhb 2/2 Running 0 2d1h rook-ceph-mon-b-74fd78856d-s2pdf 2/2 Running 0 2d1h rook-ceph-mon-c-76f9b8b5f9-gqcm4 2/2 Running 0 2d1h rook-ceph-operator-5d659cb494-ctkx6 1/1 Running 0 2d1h rook-ceph-osd-0-846cf86f79-z97mc 2/2 Running 0 2d1h rook-ceph-osd-1-7f79ccf77d-8g4cn 2/2 Running 0 2d1h rook-ceph-osd-2-549cc486b4-7wf5k 2/2 Running 0 2d1h rook-ceph-osd-prepare-ocs-deviceset-0-data-0z6pn9-6fwqr 0/1 Completed 0 10d rook-ceph-osd-prepare-ocs-deviceset-1-data-0kkxrw-cppk9 0/1 Completed 0 10d rook-ceph-osd-prepare-ocs-deviceset-2-data-0pxktc-xm2rc 0/1 Completed 0 10d rook-ceph-rgw-ocs-storagecluster-cephobjectstore-a-54c58859nc8j 2/2 Running 0 2d1h ... ...
仮想化オペレーターのインストール
virtctl
CLIのセットアップ
手順に従って、 virtctl
CLI ツールをダウンロードしてインストールします。
仮想マシンのデータ・ボリュームの作成
OpenShift Data Foundation をデプロイした後、 sat-ocs-ceprbd-gold
ストレージ・クラスを使用して、仮想マシンにストレージを使用するためのデータ・ボリュームを作成できます。
- 以下のサンプル・データ・ボリュームをコピーして、
datavol.yaml
というファイルに保存します。apiVersion: cdi.kubevirt.io/v1beta1 kind: DataVolume metadata: name: fedora-1 namespace: default spec: source: registry: pullMethod: node url: docker://quay.io/containerdisks/fedora@sha256:29b80ef738f9b09c19efc245aac3921deab9acd542c886cf5295c94ab847dfb5 pvc: accessModes: - ReadWriteMany resources: requests: storage: 10Gi volumeMode: Block storageClassName: sat-ocs-cephrbd-gold
- データ・ボリュームを作成します。
oc apply -f datavol.yaml
- データ・ボリュームおよび対応する PVC が作成されたことを確認します。
出力例。oc get dv,pvc -n default
NAME PHASE PROGRESS RESTARTS AGE datavolume.cdi.kubevirt.io/fedora-1 Succeeded 100.0% 16h NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE persistentvolumeclaim/fedora-1 Bound pvc-fd8b1a5b-cc32-42bd-95d0-4ccf2e40bca7 10Gi RWX sat-ocs-cephrbd-gold 16h
仮想マシンの作成
-
以下の
VirtualMachine
構成をコピーし、vm.yaml
というファイルに保存します。 OpenShift Web コンソールを使用して仮想マシンを作成することもできます。apiVersion: kubevirt.io/v1 kind: VirtualMachine metadata: labels: app: fedora-1 name: fedora-1 namespace: default spec: running: false template: metadata: labels: kubevirt.io/domain: fedora-1 spec: domain: cpu: cores: 1 sockets: 2 threads: 1 devices: disks: - disk: bus: virtio name: rootdisk - disk: bus: virtio name: cloudinitdisk interfaces: - masquerade: {} name: default rng: {} features: smm: enabled: true firmware: bootloader: efi: {} resources: requests: memory: 8Gi evictionStrategy: LiveMigrate networks: - name: default pod: {} volumes: - dataVolume: name: fedora-1 name: rootdisk - cloudInitNoCloud: userData: |- #cloud-config user: cloud-user password: 'fedora-1-password' chpasswd: { expire: False } name: cloudinitdisk
-
クラスター内に仮想マシンを作成します。
oc apply -f vm.yaml
-
仮想マシンを始動します。
virtctl start fedora-1 -n default
-
仮想マシンが稼働していることを確認します。
oc get vm -n default
出力例。
NAME AGE STATUS READY virtualmachine.kubevirt.io/fedora-1 16h Running True
-
OpenShift Web コンソールから、 VirtualMachine 構成で指定したユーザー名とパスワードを使用して VM にログインします。 例えば、
user: cloud-user
やpassword: 'fedora-1-password'
などです。
おめでとうございます! Fedora 仮想マシンを Satellite クラスターにデプロイしました。
次に行う作業について詳しくは、 OpenShift Virtualization Hands-on Labを参照してください。