Convert2RHELでCentOS7をRHEL7へ変換する

# はじめに
2022年5月17日現在、Red Hat株式会社ではCentOSもしくはOracle LinuxをRed Hat Enterprise Linuxへ変換するツールConvert2RHELを提供しています。
今回は実際にConvert2RHELを使い、CentOS7をRed Hat Enterprise Linux7へと変換してみました。

# 目次
[1.前提条件](#1-前提条件)
[2.準備](#2-準備)
[3.Convert2RHELのインストール](#3-convert2rhelのインストール)
[4.Red Hat Enterprise Linuxへの変換](#4-red-hat-enterprise-linuxへの変換)
[5.参考文献](#5-参考文献)

# 1. 前提条件
Mac上のVirtual BoxにインストールされたCentOS バージョン7.9をConvert2RHELを使い、Red Hat Enterprise Linux バージョン7.9へ変換する。
変換できるOSやバージョンについては以下に記載があります。
参考：[サポート対象の変換パス](https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html/converting_from_an_rpm-based_linux_distribution_to_rhel/con_supported-conversion-paths_converting-from-a-linux-distribution-to-rhel "サポート対象の変換パス")
参考：[Convert2RHEL Support Policy](https://access.redhat.com/support/policy/convert2rhel-support?extIdCarryOver=true&sc_cid=701f2000001Css5AAC "Convert2RHELSupportPolicy")

# 2. 準備
まずはじめに、依存関係の問題を解決するためにCent OSをアップデートします。
参考：[convert2rhel fails on Centos 7 with "CRITICAL - The following kernel modules are not supported in RHEL: /lib/modules/3.10.0-1160.25.1.el7.x86_64/kernel/net/netfilter/nfnetlink.ko.xz"](https://access.redhat.com/solutions/6115321 "CentOSUpdate")

　1. Cent OSのOSのバージョンを確認します
```
cat /etc/redhat-release
```
![_00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/5b1e3f8b-74ae-8c11-3e55-4424c2fc3a28.png)

　2. キャッシュを削除します
 ```
 # yum clean all
 ```
![_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/7dda65cc-87af-dde6-2c67-cd5917c46499.png)

　3.アップデートを実行します
 ```
 # yum update -y
 ```
![_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/f892f5c0-f8bd-1375-93b5-d6459d0b582f.png)

　4. 再起動します
 ```
 # reboot
 ```
![_04reboot.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/cd1e07e2-ccb7-505b-8d60-4726a8ec2c26.png)

　5. カーネルの情報が最新であることを確認します。
 ```
 # uname -r
 ```
![_05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/68c14ec8-f24c-d79f-f54c-8ee6baa79be0.png)


# 3. Convert2RHELのインストール
　1. Red Hat GPGキーをダウンロードします
 ```
 # curl -o /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 
https://www.redhat.com/security/data/fd431d51.txt
 ```
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/e0e53de6-6f55-4894-0e1a-d25786ecd8bb.png)

　2. Convert2RHELリポジトリーを含む https://cdn.redhat.com サーバーのSSL証明書をダウンロードします
 ```
 # curl --create-dirs -o /etc/rhsm/ca/redhat-uep.pem https://ftp.redhat.com/redhat/convert2rhel/redhat-uep.pem
 ```
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/7984aae9-346d-0436-198a-439144a10253.png)

　3. Convert2RHELリポジトリーファイルをインストールします
 ```
 # curl -o /etc/yum.repos.d/convert2rhel.repo https://ftp.redhat.com/redhat/convert2rhel/7/convert2rhel.repo
 ```
![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/b68a4c6e-1eb7-9171-57d2-4296653bc18a.png)

　   OSのバージョンが8のときは、以下を実行してください
 ```
 # curl -o /etc/yum.repos.d/convert2rhel.repo 
https://ftp.redhat.com/redhat/convert2rhel/8/convert2rhel.repo
 ```
　4. Convert2RHELユーティリティーをインストールします
 ```
 # yum -y install convert2rhel
 ```
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/231a5bf6-1b16-ff6d-8f47-b4e1facc9350.png)

# 4. Red Hat Enterprise Linuxへの変換
　1. 今回はRHSMでユーザー名、パスワード、プールIDを指定してサブスクリプションの認証を行います
 ```
 # convert2rhel --username username --password password --pool pool_ID
 ```
![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/1745f751-79d3-10ef-73c2-4e4bcfe7099d.png)

　   組織IDとアクティベーションキーを指定してサブスクリプションの認証を行う場合は以下を実行します
 ```
 # convert2rhel --org organization_ID --activationkey activation_key
 ```
　2. 変換が始まります
![08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/b5783b78-67be-e868-4276-d9e9c19f220c.png)

　3. 変換を続けるか確認されるので、「y」と入力し、Enterキーを押します
![09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/1c78a726-0925-70c0-0b58-53f36f7dab8e.png)

　   変換作業が再開されます
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/86c44095-a31b-f6b4-2eb3-018f3fb38438.png)

　4. 再び変換を続けるか確認されるので、「y」と入力し、Enterキーを押します
![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/efad06fa-bc8e-30ae-d4cd-cdc032a0d307.png)

　   変換作業が再開されます
![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/ac597731-c8b7-32ff-cb60-69348d66400a.png)

　5. 変換作業が完了します
![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/a4fbc1f7-5969-090e-e41b-0731602f429b.png)

　6. rebootコマンドで再起動します
 ```
 # reboot
 ```
![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/f70863fc-b5a8-fea4-5b36-2b52be158b09.png)

　7. 再起動する際、Red Hat Enterprise Linuxのカーネルが選択できるので、Red Hat Enterprise Linuxのカーネルを選択します
![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/d7e74403-3b6c-b216-58fc-47c5c26c44c5.png)

　8. Red Hat Enterprise Linuxが起動します
![16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/c312ce38-4aca-2570-8784-84258ac302bc.png)

　9. Red Hat Enterprise Linuxへ変換されたことを確認します
 ```
 cat /etc/redhat-release
 ```
![17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2668052/dbada9c8-81d0-f789-d0a9-9fa5a5dca001.png)




以上となります。

# 5. 参考文献
* [CentOS LinuxからRed Hat Enterprise LinuxまたはCentOS Streamに移行](https://www.redhat.com/ja/technologies/linux-platforms/enterprise-linux/centos-migration?options=%E5%80%8B%E4%BA%BA%E9%96%8B%E7%99%BA%E8%80%85%E5%90%91%E3%81%91%E7%84%A1%E6%96%99-rhel "CentOS LinuxからRed Hat Enterprise LinuxまたはCentOS Streamに移行")
* [公式ドキュメント](https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html/converting_from_an_rpm-based_linux_distribution_to_rhel/index "公式ドキュメント")