[OCI] コンピュートのテナント間の移行を試してみる

# はじめに

OCIのお試し環境で構築した仮想サーバー(コンピュート)を本番利用のテナントに移行したり、OCIの海外リージョンで作成したコンピュートを、日本のリージョンへ移行したりといったケースはよくあります。

今回はコンピュートのテナントを跨いだ移行の手順と実際の操作について確認してみます。

# お試し環境

既存テナントのコンピュートを、新たに用意した新テナントへ移行してみます。

**移行元のOS** は、**CentOS 7** のコンピュートでおこないます。各OSの対応可否については、以下のドキュメントで確認できます。

[イメージのインポート/エクスポート](https://docs.oracle.com/ja-jp/iaas/Content/Compute/Tasks/imageimportexport.htm)
![image-20210301161246614.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/5f1c345c-c434-5b67-1ac5-165b12b41e27.png)
# 移行手順

上記構成図に記載があるように、テナントを跨いでコンピュートを移行するには、大筋以下のステップを実行します。

**移行元のテナントにて**
1. コンピュートのカスタム・イメージを作成する
2. カスタム・イメージをオブジェクト・ストレージへエクスポートする　

**移行先のテナントにて**
3. カスタム・イメージをオブジェクト・ストレージからインポートする　
4. カスタム・イメージからコンピュートを作成する

# 準備

オブジェクト・ストレージを介してカスタム・イメージのエクスポート／インポートを行うため、オブジェクト・ストレージが必要です。

また、オブジェクト・ストレージが移行先から読み取りできるように、**事前認証済リクエストを作成**しておく必要があります。

## オブジェクト・ストレージの作成

ナビゲーションメニューから[オブジェクト・ストレージ]-[オブジェクト・ストレージ]を選択し、**バケットの作成**をクリックします。
![image-20210226164712595.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/1a2296f4-1f05-22d5-f777-7a1f9cecb81f.png)
![image-20210226164838978.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/6dc9efda-018b-c9f5-eeda-7b31408134a7.png)

**[バケット名]** 任意の名前を入力 例）bucket4migration

その他項目はデフォルトのままとします。**作成** をクリックし、バケットが作成されました。
![image-20210226165025165.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/da9dbc34-4479-631b-7862-853c4d12ddde.png)

この段階で作成されたバケット全体に**事前認証済リクエストを作成**しておくことも可能です。本稿ではバケットにカスタム・イメージをエクスポートした後に、カスタム・イメージに対して**事前認証済リクエストを作成**を設定します。（後述）

## 移行元のコンピュート
![image-20210226170644658.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/5f7cdc3f-3c86-41f2-e264-598eefd85bc6.png)
移行元のコンピュートは既存のosaka03 サーバー(CentOS-7)とし、移行後の識別のためにファイルを１つ作成しておきます。
![image-20210226170236837.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/8f9ca5e3-bf96-53a6-5384-0c1e01ff523d.png)
# 1. カスタム・イメージの作成

ナビゲーションメニューから[コンピュート]を選択し、移行対象となるコンピュートをクリック。**他のアクション**から**カスタム・イメージの作成**を選択します。

※ インスタンス実行中にカスタム・イメージの作成を実行すると、実行中にオフラインになるためインスタンスを停止してからカスタム・イメージの作成をおこないます。
![image-20210226171327192.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/3f5dcdc7-ccd6-fa0e-0e6d-f715e14b7d3d.png)
カスタム・イメージを作成します。
![image-20210301172338452.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/d2ada916-43ba-331a-babd-d64708e2a6cb.png)
**[コンパートメントに作成]** 既存の任意のコンパートメントを選択
**[名前]** 任意の名前を入力 例）osaka03-customimage
**カスタム・イメージの作成**をクリックし実行します。カスタム・イメージが作成されます。

# 2. カスタム・イメージのエクスポート

続けて、作成されたカスタム・イメージの詳細画面から **エクスポート** をクリックします。
![image-20210226172718155.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/eee48c2b-62de-7dfb-930c-9b647ac139df.png)
![image-20210226173828818.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/ec2c3f91-dc22-5b1e-e048-fcc7216da9ad.png)
**オブジェクト・ストレージ・バケットにエクスポート**を選択（デフォルトのまま）
**[コンパートメント名のバケット]** バケットを選択
**[イメージ名]** 任意のイメージ名を入力
**[イメージの形式]** **QCOW2イメージとOCIメタデータ(.oci)を含むOracle Cloud Infrastructureファイル** を選択（デフォルトのまま）

**イメージ・エクスポート** をクリックしエクスポートを実行します。

元は47GB のブート・ボリュームを持つコンピュートのカスタム・イメージですが、エクスポートに約７～８分を要しました。
![image-20210226174904560.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/b27175a3-78c7-0a9a-678d-53f0c3e9b76f.png)

## 事前認証済みリクエストの作成

ナビゲーションメニューから[オブジェクト・ストレージ]-[オブジェクト・ストレージ]を選択し、対象のバケットの詳細を見ると、カスタム・イメージのがエクスポートされていることが確認できます。
![image-20210226175253603.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/8eba2501-8895-2ae5-1cba-ec49a59838bd.png)
エクスポートされたカスタム・イメージが移行先のテナントから読み取りできるように**事前認証済みリクエストの作成** を実行します。
![image-20210226175506483.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/4466bc60-0aeb-b34f-d80d-d9b576a6bab0.png)
すべてデフォルトのままで、**事前認証済みリクエストの作成**をクリック。
![image-20210226175717192.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/10963118-00d7-af18-32ec-e7ad91e74c05.png)

**事前認証済みリクエストのURL**が表示されるので、コピーして保存しておきます。カスタム・イメージをインポートする際に使います。
![image-20210226180021880.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/7f7a3fbf-c799-f072-66fb-7728602e2236.png)

# 3. カスタム・イメージのインポート
## 移行先のテナントにサインイン

別のテナントにサインインします。
![image-20210302085303993.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/fc94d570-4d3c-99af-d5b4-00ee815e67f3.png)
## カスタム・イメージのインポート

ナビゲーションメニューから[コンピュート]-[カスタム・イメージ]を選択します。カスタマ・イメージの画面上部に**テナンシおよびリージョン間でのイメージのエクスポートとインポート** がおこなえる旨の記述もあります。
![image-20210302094405823.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/94627ce8-6ea0-9376-8ded-84a7a45d9bba.png)
**イメージのインポート**をクリックします。ここでは移行先のテナントで、コンパートメントやネットワークが既に作成されていることを前提とします。
![image-20210301134535161.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/eb1ec949-676f-7cee-b3c3-b4bbda4ab83a.png)
**[コンパートメントに作成]** 任意の既存コンパートメントを指定
**[名前]** デフォルトのまま
**[オペレーティング・システム]** **Linux**を選択(デフォルトのまま)
**オブジェクト・ストレージURLからインポート**を選択
**[イメージ・タイプ]** **OCI** を選択

**イメージのインポート** を実行します。約10分ほどでインポートに成功したようです。
![image-20210301144754780.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/3ffe03ce-f7ef-e2be-8d3c-d3b98612b1f6.png)



# 4. コンピュートの作成
インポートされたカスタム・イメージの詳細画面の上部の**インスタンス作成**をクリックしてインスタンスを作成します。
![image-20210301145641696.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/025632ed-0970-62ec-0a09-2da0941ab280.png)
**[名前]** 任意の名前を入力 
**[コンパートメントに作成]** 任意の既存コンパートメントを指定
その他項目はデフォルトのまま
続けて、、、
![image-20210301150024771.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/df2f7a5d-e301-faae-bb09-33d338e58afd.png)
**[シェイプ]** E3.Flexに変更しました。
**[ネットワーク]** 任意のネットワーク環境を指定（ここではデフォルトのまま）
**[SSHキーの追加]** SSH公開キーファイルをアップロード
ブートボリュームの設定は何もせずに、デフォルトのままで**作成** をクリックしインスタンスを作成します。

移行先テナントにコンピュート・インスタンスが作成されました。
![image-20210301150822009.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/2fbf15ea-dd71-1bff-5d6a-d827d282e37b.png)

## コンピュートの移行確認
移行先のコンピュートに接続し、移行元のコンピュートがちゃんと移行できたかを確認します。
接続後、移行前にコンピュートの識別のために作成したファイルをリスト表示することができ、無事テナントを跨いでコンピュート・インスタンスを移行できたことが確認できました。
![image-20210301151424045.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/496842/b9d3f102-9bf9-2951-7d59-d777ae93d1c5.png)

# 参考URL
[イメージのインポート/エクスポート](https://docs.oracle.com/ja-jp/iaas/Content/Compute/Tasks/imageimportexport.htm)