自宅に構築したOpenStack環境にインスタンスを立ち上げてみるまでの話…

##目次

 - あらすじ
 - プロジェクト
 - ネットワーク設定
 - イメージの登録
 - フレーバーの登録
 - 公開鍵のインポート
 - インスタンスの起動
 - 参考

##あらすじ
以前、[自宅環境にOpenstack環境の構築を行った。](https://qiita.com/A0yama_anpl/items/126dfdaffe884c0bd6cf)
今回はそこへインスタンスの立ち上げを試みる。
※結果を先にお伝えしますと、VMは立ち上がったが、仮想マシンのNIC不足により疎通の確認がまだとれていないという状態で終わります。

![2020-02-14 (4).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/0869b198-8f27-e08d-0cd7-3efea988cc94.png)

##プロジェクト
Demoというプロジェクトがすでに存在しているので、それをベースに今回は進める。
![2020-08-20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/7306d531-1ad4-8b23-3a07-993160cd74a4.png)

[ユーザー管理]>[プロジェクト]に表示されているdemoを選択し、
プロジェクトメンバーにadminを追加。
権限も全てつけてしまう。

![2020-08-20 (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/c96bfbec-8841-b767-dc94-c8ad830f291e.png)
![2020-08-20 (16).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/bde43a71-86ec-a106-bc2c-b0c3eb8a9182.png)
画面左上からプロジェクトをdemoへ切り替える。
![2020-08-20 (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/2fb3e4be-18ec-d7dc-4706-0f1c5c51ccf7.png)

##ネットワーク設定
[ネットワーク]>[ネットワーク]を確認すると、内部通信用に1つ、外部通信用に１つ作成されている。
![2020-08-20 (4).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/090aafb4-3a6a-6a33-f51a-e9bf54ee5962.png)

試しに、内部通信用のNWをもう一つ作ってみる。
![2020-08-20 (5).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/5b717418-c15e-520d-c8df-6f5d160696ee.png)
![2020-08-20 (6).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/420bbf64-17b0-bf70-fb2e-9e60efac264d.png)
![2020-08-20 (7).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/c6b945a6-2019-4772-7120-53194aa7bbb0.png)

名前：private_2
ネットワークアドレス：10.0.100.0/24
DHCP：有効
10.0.100.100～10.0.100.199までのアドレスを振られるように設定

[ネットワーク]>[ネットワークトポロジー]にて、NWの接続を確認できる。
![2020-08-20 (9).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/bf9b9087-d627-d962-0fac-926e0d72ab80.png)
作成したオレンジ色のprivate_2は外部どこにも接続がされていないので、ルーターへ繋ぎ、外部通信をできるようにする。

ルーターのアイコンをクリックし、「＋インターフェースの追加」を選択する。
![2020-08-20 (10).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/4cd116fd-7ce4-7259-e597-e7a0c48d02b4.png)
![2020-08-20 (11).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/0b053ffa-2bef-5b41-efb8-739a1b92f07b.png)
サブネットのみを選択し送信を押すと、ルーターとprivate_2が接続された。
![2020-08-20 (12).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/9bdc23d4-9001-9b68-b70e-c83fbc38b80f.png)

次にセキュリティ設定を行う。
[ネットワーク]>[セキュリティ]から、defaultにSSHとICMPのルールを追加する。
![security1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/0c44061c-542f-40e6-7a65-1355f9138833.png)
![security2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/8e393f53-a52a-e51f-c22d-057e4b2b2921.png)
![security3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/400cdfca-0b6b-eeb8-1716-91497a8fbd2e.png)
![security4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/9cff7384-f13d-2a48-c80d-3ce7be71caf9.png)

この二つのルールを追加することでインスタンスへのSSH接続が可能になる。

##イメージの登録
イメージにはqcow2を使用する。
今回は下記リンクよりCENTOS7を選択した。
https://docs.openstack.org/ja/image-guide/obtain-images.html

[コンピュート]>[イメージ]より、イメージの登録を行なう。
![2020-08-20 (14).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/2e6e2b17-2436-63e9-2e1b-62958091599a.png)
![2020-08-20 (15).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/f4c7053b-a453-cad9-a0d9-190d1b300744.png)
これでOPENSTACK環境にOSのイメージが登録された。

##フレーバーの登録
インスタンスのCPUやメモリ、HDDの設定値はフレーバーによって決められる。
[コンピュート]>[フレーバー]にはデフォルトでいくつかのフレーバーが用意されている。
![2020-08-20 (17).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/d846e356-d726-dab4-7886-4a85cb3d5cbe.png)

今回はCPU2コア、メモリ2GBのフレーバーを作成した。
![2020-08-20 (18).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/7aff3133-2d2d-2a9f-8dd2-b18b00a4221a.png)
![2020-08-20 (20).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/9225c237-6604-a25f-1630-0524d64c2ca3.png)

##公開鍵のインポート
鍵を作成し、インポートを行う。

```console
# ssh-keygen -t rsa -f demo.key
Generating public/private rsa key pair.
```
作成されたdemo.key.pubを一度ホストPCへ転送し、HORIZON画面からインポートを行う。
![2020-08-20 (38).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/4a8c0879-0abf-9ea2-d823-71a880fecb24.png)

##インスタンスの起動
[コンピュート]>[インスタンス]から、「インスタンスの起動」を選択し、上記で作成・設定した値を入力していく。
![2020-08-20 (39).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/c751725d-d1d3-75d3-e984-45c369506dc4.png)

![2020-08-20 (40).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/a9ca5dc4-9c51-1378-be71-2a40265c1b80.png)
![2020-08-20 (41).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/ad5b4159-ae3b-80f3-c339-65fbc839ef9a.png)
![2020-08-20 (42).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/c0bf8b49-249e-2eee-fbe1-ab932301cf43.png)
![2020-08-20 (43).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/e043d594-afe8-e0b2-7485-1bef6b0d5d11.png)
必要項目を入力し、インスタンスの起動を押すと、インスタンスの作成が始まる。
![2020-08-20 (44).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/8f9882ff-ff56-5b38-640a-2c1ce13e9fe6.png)

インスタンス作成中からはCUIでもステータスを見ることができる。

```console
# source keystonerc_demo
# nova list
+--------------------------------------+---------+--------+----------------------+-------------+----------+
| ID                                   | Name    | Status | Task State           | Power State | Networks |
+--------------------------------------+---------+--------+----------------------+-------------+----------+
| 77700ff1-45e9-4c78-883f-4646aa020d82 | CentOS7 | BUILD  | block_device_mapping | NOSTATE     |          |
+--------------------------------------+---------+--------+----------------------+-------------+----------+
# openstack server list
+--------------------------------------+---------+--------+----------+-------+---------+
| ID                                   | Name    | Status | Networks | Image | Flavor  |
+--------------------------------------+---------+--------+----------+-------+---------+
| 77700ff1-45e9-4c78-883f-4646aa020d82 | CentOS7 | BUILD  |          |       | 2CPU2GB |
+--------------------------------------+---------+--------+----------+-------+---------+
```
無事に立ち上がるとDHCPのアドレスが割り当てられ、稼動中となる。
![2020-08-20 (45).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/67b69b94-beac-2436-19a0-054c8a2fd2b5.png)

```console
# nova list
+--------------------------------------+---------+--------+------------+-------------+------------------------+
| ID                                   | Name    | Status | Task State | Power State | Networks               |
+--------------------------------------+---------+--------+------------+-------------+------------------------+
| 77700ff1-45e9-4c78-883f-4646aa020d82 | CentOS7 | ACTIVE | -          | Running     | private_2=10.0.100.131 |
+--------------------------------------+---------+--------+------------+-------------+------------------------+
# openstack server list
+--------------------------------------+---------+--------+------------------------+-------+---------+
| ID                                   | Name    | Status | Networks               | Image | Flavor  |
+--------------------------------------+---------+--------+------------------------+-------+---------+
| 77700ff1-45e9-4c78-883f-4646aa020d82 | CentOS7 | ACTIVE | private_2=10.0.100.131 |       | 2CPU2GB |
+--------------------------------------+---------+--------+------------------------+-------+---------+
```

インスタンス横のプルダウンから「floatingIPの割り当て」を選択する。
![2020-08-20 (46).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/81f6f889-1f88-e719-16d9-c74aa16c1b4e.png)

クリックをしていくだけで、自動的に割り当てられた。

![2020-08-20 (48).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/c5d87fc0-65d9-4bda-6cf1-4ed04d5be776.png)
![2020-08-20 (49).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/dbcc2911-8689-ecd5-14c9-2558db9b07c3.png)
![2020-08-20 (50).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/d7f041cd-63da-ad3d-0cb1-977ace601801.png)
![2020-08-20 (51).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/519662/664706b1-7de3-ab44-dc81-77c3f73304cb.png)

```console
[root@localhost tmp(keystone_demo)]# nova list
+--------------------------------------+---------+--------+------------+-------------+--------------------------------------+
| ID                                   | Name    | Status | Task State | Power State | Networks                             |
+--------------------------------------+---------+--------+------------+-------------+--------------------------------------+
| 77700ff1-45e9-4c78-883f-4646aa020d82 | CentOS7 | ACTIVE | -          | Running     | private_2=10.0.100.131, 172.24.4.145 |
+--------------------------------------+---------+--------+------------+-------------+--------------------------------------+
```

ここまで順調に思えていたが、仮想OSを立てた時にポートを1つしか設定しなかったため、
br-exに割り当てられるポートが無い。
router1の外部接続用アドレスを確認していなかったため、気付かず夢中になってしまった。
次回はポートを追加し、NW周りの設定を修正を行う予定。

##参考
 [第3回 クラウド環境構築ソフトウェア 「OpenStack」」 (3/4)](https://www.nedia.ne.jp/blog/tech/2014/12/18/4194)