0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VMware vSphere ESXi 上の RHEL8.6 を RHEL8.10 にオフラインアップデートする

Posted at

はじめに

2024年5月22日に、 Red Hat Enterprise Linux 8.10 がリリースされました。

閉域環境等、Red Hat のリポジトリに接続できない環境から RHEL8.6 を RHEL8.10 にアップデートしましたので、参考としてその記録を残します。

単純に言うと、 VMware および Red Hat が公開しているいくつかの公式手順を組み合わせて実施しました。

RHEL の OS をオフラインアップデートする手順としては、下記を利用します。

利用する ISO は、下記よりダウンロードします。

また、 RHEL の VM は ESXi 上にあったため、ISO のマウント等は vSphere Client (vCenter Server)、または VMware Host Client (ESXi Server) 経由で行います。

手順としては下記を参照しました。

環境

  • VMware vSphere 7.0 (ESXi + vCenter Server)
  • Red Hat Enterprise Linux 8.6 (構築時はインターネットに接続可能な環境で Red Hat のリポジトリを利用してインストール、その後閉鎖環境に移動)

流れ

大まかな流れは下記の通りです。

  • Red Hat のサイトから ISO をダウンロード
  • ISO をデータストアにアップロード
  • VM に ISO を接続
  • リポジトリの構成
  • アップデートの実施
  • OS 再起動の実施
  • VM と ISO ファイルの接続を解除

以下、各手順について補足していきます。

手順

Red Hat のサイトから ISO をダウンロード

のサイトから ISO ファイルをダウンロードします。

「Full installation image」と記載されている、 13.3GB のバイナリファイルをダウンロードします。ダウンロード後、 sha256sum コマンドを利用し、 CheckSum を確認しておくとよいでしょう。

ISO をデータストアにアップロード

ISO をデータストアにアップロードします。

vSphere Client (vCenter Server の Web UI)、または VMware Host Client (ESXi Server の Web UI) から行えます。

手順は下記です。

VM に ISO を接続

VM の設定の編集をクリックし、「CD/DVD Drive」の項目から「Datastore ISO file」を選択します。

アップロードした ISO ファイルをクリックし、「Connect」のチェックボックスをクリックすることで VM に ISO を接続できます。

手順は以下の通りです。前提条件として「仮想マシンがパワーオフされていること」とありますが、私の検証環境では起動したままでも実施できました。

正常に完了すると、 VM から /dev/cdrom のパスで ISO ファイルにアクセスできるようになります。

リポジトリの構成

下記のナレッジに従い、リポジトリを構成します。

BaseOS という名称のリポジトリと、 AppStream という名称のリポジトリを作成することができると思います。

アップデートの実施

リポジトリが構成できたら、アップデートを実施します。実行前後で VM のスナップショットを取得しておくとよいでしょう。

dnf --disablerepo=* --enablerepo=BaseOS,AppStream update

私の検証環境では、なぜか依存関係がうまく解決されず、以下のようなエラーが発生しました。

Problem: package python3-policycoreutils-2.9-25.el8.noarch requires python3-libsemanage >= 2.9-7, but none of the providers can be installed
  - package policycoreutils-python-utils-2.9-25.el8.noarch requirespython3-policycoreutils = 2.9-25.el8, but none of the providers can be installed
  ...(以下略)

不足していると言われたパッケージを個別にインストールすることで解消され、その後再度アップデートを実行すると正常に完了しました。

dnf --disablerepo=* --enablerepo=BaseOS install python3-libsemanage

OS の再起動

kernel のアップデートに伴い再起動が必要なので、 OS の再起動を行います。

OS を停止、 vSphere Client 等管理コンソール画面から起動します。

shutdown -h now

VM と ISO ファイルの接続を解除

最後に、 VM と ISO ファイルの接続を解除します。必須ではありませんが、私の作業においては 4台の VM を順次アップデートせねばならなかったため、この手順が必須でした。

VM に接続された ISO を他の VM に接続するためには、一度元の VM との接続を解除する必要があるためです。

下記の手順の通り、 VM上で eject cdrom コマンドを実行します。

その後 VM の設定編集画面を確認すると、「Connect」のチェックボックスのチェックが外れていることが確認できます。

手順は下記です。

こちらに記載してある通り、 eject cdrom を実行せず、「Connect」のチェックボックスを手動で外す操作によって ISO の接続を解除しようとすると、 VM が一時的に応答を停止するため注意してください。

おわりに

以上です。ご参考になれば幸いです。

なお実施に際しては参考程度にとどめ、 実際に実施する際は検証環境でのテスト、各種ベンダサポートの利用等をご検討いただけますようお願いします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?