基盤構築演習
Cloud Infrastructure Design and Deployment
7. の基本操作
ン ー OpenStack環境構築の演習
2017.v1
1
Table of contents
本演習 ー コ ン ン ー 利
用 OpenStack 基本操作 実施 1 台 ー
ー 全 OpenStack 機能 ン ー All-in-
One 環境 構築
ー 利用 環境構築
コ ン ン 利用 基礎操作
All-in-One環境 構築
OpenStack環境 探索
ン演習
o 仮想 ー 利用
o Boot From Volume
o ー 利用
演習環境 つい
3
演習環境の概要
演習用 OpenStack環境上 各自割 当 ン 内 演習 行い
o 各環境 生徒 独立 い
最初 演習 実施 前 共通演習環境 構築 実施 必要 あ
前回 演習環境 残 い 場合 演習環境 削除方法 実施 く い
openstack
tenant-XX / student-XX tenant-YY / student-YY ・・・
抽象化層
ン
( )
仮想 ー ー
内部ネ ワー
192.168.199.0/24
共通演習環境
演習環境 演習環境
共通演習環境 構築 実施
構築: 第N回 演習環境 構築 作成
削除: 演習環境 削除方法 実施
各自 端末 操作 行う
演習環境の削除方法
各演習回の前 前回の環境を削除す ため 実施
5
演習環境を構築す 前の状態
各演習環境 構築 前 以下 状態 い 事 確認 く い
o default 以外 存在 い い
default 共通演習環境 作成
o キ ー 以外 ー 存在 い い
以下 3 画面 確認 く い
o 何 ー や 残 い 場合 次項 手順 削除 く い
default
存在 い
Security Groups 以
外 消費 い い
3 存在
い
Stacks の確認
以下 確認
o Orchestration → Stacks default 以外 存在 い い
default 以外 存在 い 場合 対象 削除
o 削除 default 以外 選択 Delete Stacks 押下
7
default
存在 い
例 hands-on-3 選
択
ソー 消費量の確認
以下 確認
o Compute → Overview Limit Summary Security Groups 以外 消費 0
状態 い
ー 残 い 場合 前項 手順 Stacks 確認 不要
削除 く い
ー 残 い 場合 次項 手順 個別 ー 削除 く
い
Security Groups 以外 消費
い い 0 状態 確認
個別の ソー 削除
ー 一覧 表示 残 い ー 削除
o 以下 削除例
9
ン ン 削除
Floating IP 削除
キ ー 削除
ワー の状態
以下 確認
o Network → Network Topology [public] - [Ext-Router] - [work-net] 状態
い
余分 ー 作成 い 場合 個別 削除 く い
3 存在
い
ュ ー を利用した環境構築
11
演習内容
OpenStack ー 演習用 作業用 ー ー 起動
o 仮想 ー ー 適用 キ ー 作成
o 仮想 ー ー 仕様 キー 作成
o 仮想 ー ー 作成
o 仮想 ー ー Floating IP 割 当
o 仮想 ー ー 各種設定 実施
tenant-XX / student-XX
仮想 ー ー
内部ネ ワー
192.168.199.0/24
作業 ー ー
192.168.199.XX Floating IP
作業用 ー ー
様々 作業 実施 い
作業 ー ー 作成 OpenStack コ ン
ン 操作 環境 整え
演習環境への ン
OpenStack ー
ン く い
o URL ー 名 ワー 別途指示
13
自分 学生番号 ン
い 事 確認 く
い
セキュ テ ー の作成
作業用 ー ー 割 当 キ ー ー 作成
o OpenStack 全 通信 遮断
o 通信 い ー 番号 明示的 指定 必要 あ
o 作業用 ー ー SSH 接続 利用 ー 22 許可 キ ー 作
成
Compute → Access & Security 選択 Security Group 開
新 キ ー 作成 Create Security Group 押
下
セキュ テ ー の作成
新規 キ ー 作成 ン sg-for-console 作成
15
sg-for-console
セキュ テ ー の作成
作成 sg-for-console Manage Rules 選択 ー
ー 追加
o 状態 仮想 ー ー 外 向 許可 い
Add Rule 選択 ー 追加画面 起動
sg-for-console
Manage Rules 選択
Add Rule 押下
セキュ テ ー の作成
SSH 許可 ー 選択 全 接続元 CIDR 0.0.0.0/0
接続 許可
o CIDR ネ ワー 表記方法 1 ネ ワー /
ネ 数 いう形 表記
o 0.0.0.0/0 全 ネ ワー 表
17
SSH 選択
キー の作成
SSH キー 作成
o 作成 キー 公開鍵 仮想 ー ー作成時 自動 仮想 ー ー 設定
Compute → Access & Security 選択 Key Pairs 開
Create Key Pair 選択 キー 作成画面 起動
キー key-for-console いう名前 入力 Create Key Pair 選択 キー 作成
Create Key Pair 選択
キー の作成
キー 作成 自動的 秘密鍵 ン ー 始
o 自端末 SSH 公開鍵認証 行う場合 わ や い場所 保存 い く
い
後 手順 ワー 認証 設定 公開鍵認証/ ワー 認証 行う
o 秘密鍵 再 ン ー
19
Note 秘密鍵 ン ー 一回 行え
キー く う 別 手段 自
分 用意 い い限 2 度 ン 不可
能 い
Nova キ 観点 公開鍵
管理 秘密鍵 情報 Nova上
保持 い いう思想 い
nova 管理 鍵情報
キー の作成
再度 Compute → Access & Security 選択 Key Pairs
key-for-console 作成 い 確認
作成 key-for-console 選択 詳細 確認 公開
鍵 情報 表示 い事 注意 く い
補足:公開鍵の ン ー
ー 作成 公開鍵 ン ー 可能
o 実際 環境 OpenStack 上 キー 作成 ー
作成 公開鍵 ン ー 方法 推奨
21
キー 名前
ー 作成
キー 公開鍵情報
Note ー キー 作成 ssh-keygen や
GnuPG 使用 方法 一般的
仮想サー ーの作成
作業用 ー ー 作成
Compute → Instances 選択 ン ン 一覧 表示
o 時点 仮想 ー ー 一台 存在 い
Launch Instances 押下 仮想 ー ー 作成 ー 起動
仮想サー ーの作成
ー 従い 必要 情報 順次入力 い
o ー 途中 戻 可能
Details Instance Name console 指定
入力 完了 Next 選択
23
console
仮想サー ーの作成
起動 仮想 ー ー ー 指定
中 CentOS7 選択 + ン 押下
選択 Allocated Allocated CentOS7 表示
選択 Next 押下
CentOS7 + 選択
仮想サー ーの作成
仮想 ー ー CPU コ 数や 決定 ー
ー 選択
o ー ー 管理者 予 準備 い
m1.small 選択
o m1.small 1 個 vCPUコ 数 2GB 容量
選択 Next 押下
25
m1.small + 選択
仮想サー ーの作成
接続 ネ ワー 選択
o 時点 接続 ネ ワー 1 work-net 存在
o 仮想 ー ー 複数 ネ ワー 接続 場合 追加 順番 OS
ネ ワー 認識
work-net 選択
選択 Next 押下
work-net + 選択
仮想サー ーの作成
仮想 ー ー 適用 キ ー 選択
o キ ー 複数個 適用 可能
sg-for-console 選択
選択 Next 押下
27
sg-for-console + 選択
仮想サー ーの作成
仮想 ー ー 設定 公開鍵 設定
o 選択 キー 公開鍵 仮想 ー ー 設定 公開鍵認
証 行え う
key-for-console 選択
選択 Next 押下
key-for-console + 選択
仮想サー ーの作成
仮想 ー ー 作成 際 実行 処理 userdata 記述
o ワー 設定 ワー 認証 有効化 ーン 設定 行 い
o cloud-config いう書式 使 設定 行 い
他 実行 可能
o userdata 詳細 関 後 演習 講義 詳細 解説
入力 Next 押下
29
#cloud-config
password: your_password
chpasswd: { expire: False }
ssh_pwauth: True
timezone: Asia/Tokyo
your_password 好 ワー 設定
く い
書式 ー *注意: 厳格 記入例
通 入力 く い
コ く い
仮想サー ーの作成
仮想 ー ー Metadata 設定
o Metadata 起動 仮想 ー ー 参照 特殊 KeyValue 設定
o 詳細 後 講義 演習 解説
Metadata reposerver 作成 追加
追加 reposerver ー ー IP 設定
o IP 別途指示 値 設定 く い
設定 Launch Instance 押下 仮想 ー ー 作成 開始
reposerver 入力
+ ン 押下
ー ー IP
入力
入力 全 終わ
Launch Instance 押
下 仮想 ー ー 作成 開
始
仮想サー ーの作成
仮想 ー ー 作成 開始 状態 Active 作成 成功
o 通常 30秒 1 分程度 Active 状態
時 IP 自動的 割 当 い 注目 く い
o 動作 接続 ネ ワー 指定 ネ ワー 自動的 IP 払い出
ー ー 割 当
31
作成 仮想 ー ー 自動 IP 割
当
Floating IP の割 当
起動 作業 ー ー work-net 接続 い ン 内部 ネ ワー
あ 外部 SSH 接続
o 作業用 ー ー 外 出
作業用 ー ー Floating IP 割 当 外部 接続 う 設定
Compute → Access & Security 選択 Floating Ips 開
Allocate IP To Project 選択
予 管理者 設定 外部ネ ワー 用 Public IP 取得
public 選択
Floating IP の割 当
確保 IP 作業用 ー ー 割 当
取得 IP Associate 選択
割当先 ー ー console 指定 Associate ン 押下
33
console 選択
Floating IP の割 当
割 当 成功 Mapped Fixed IP Address 作業用 ー ー 情報 表
示
ン ン 一覧 割 当 Floating IP 情報 確認
外部 作業用 ー ー 接続可能
作成した環境の確認
Network → Network Topology 選択
下記 状態 い
35
作成 作業用 ー ー console
work-net 接続 い
確認
作業サー ーへの ン
2 方法 作業用 ー ー ン可能 各自 作業用端末 SSH
ン 起動 ン く い
o 仮想 ー ー 作成時 指定 ワー 利用 ン
o 作成 キー 使 認証 ン ー 秘密鍵 利用
Mac/Linux環境 ン ー 秘密鍵 権限 600 設定 必要 あ
Putty 利用 い 場合 pem 利用 以下 参考 設定 行う
ワー 認証 ン く い
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/putty.html 方法 ー ー名 centos
接続先 割 当 Floating IP 対 行 く い
$ chmod 600 key-for-console.pem
$ ssh -i key-for-console.pem centos@xxx.xxx.xxx.xxx
The authenticity of host '157.1.141.111 (157.1.141.111)' can't be established.
ECDSA key fingerprint is 0b:28:6d:88:95:ad:eb:ce:03:ce:d0:ae:26:4d:0a:e1.
Are you sure you want to continue connecting (yes/no)? yes
$ ssh centos@xxx.xxx.xxx.xxx
The authenticity of host '157.1.141.111 (157.1.141.111)' can't be established.
ECDSA key fingerprint is 0b:28:6d:88:95:ad:eb:ce:03:ce:d0:ae:26:4d:0a:e1.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '157.1.141.111' (ECDSA) to the list of known hosts.
centos@ . . . ‘s password:
your_password[centos@console ~]$
ワー 認証 例
公開鍵認証 例
サー ーの設定
作業用 ー ー い く 設定 行い
演習環境用 ー ー う
名前解決 設定 行い
37
[centos@console ~]$ sudo -i
[root@console ~]# echo "xxx.xxx.xxx.xxx reposerver" >> /etc/hosts
[root@console ~]# ping -c 3 reposerver
PING reposerver (157.1.141.28) 56(84) bytes of data.
64 bytes from reposerver (157.1.141.28): icmp_seq=1 ttl=63 time=0.669 ms
--- reposerver ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.669/0.669/0.669/0.000 ms
[root@console ~]# cd /etc/yum.repos.d/
[root@console yum.repos.d]# rm -f ./CentOS-*
[root@console yum.repos.d]# curl -O http://reposerver/repo/edubase.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 842 100 842 0 0 128k 0 --:--:-- --:--:-- --:--:-- 137k
[root@console yum.repos.d]# ll
合計 4
-rw-r--r--. 1 root root 842 4 23 15:20 edubase.repo
ー ー IP 指示
値 設定 く い
reposerver 名前解決 可能 確認 い
設定 削除
演習環境用 設定
サー ーの設定
キ 情報 新 設定
行え 確認
一覧 取得 設定 正 く行わ い
[root@console yum.repos.d]# yum clean all
読 込 イン :fastestmirror
ポ ー 清掃し い す : base epel extras openstack updates
Cleaning up everything
[root@console yum.repos.d]# yum repolist
読 込 イン :fastestmirror
base | 3.6 kB 00:00:00
epel | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
openstack | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/7): base/group_gz | 155 kB 00:00:00
(2/7): openstack/primary_db | 759 kB 00:00:00
(3/7): epel/group_gz | 259 kB 00:00:00
(4/7): extras/primary_db | 177 kB 00:00:00
(5/7): updates/primary_db | 1.1 MB 00:00:00
(6/7): base/primary_db | 5.6 MB 00:00:00
(7/7): epel/primary_db | 5.5 MB 00:00:00
Determining fastest mirrors
ポ ー ID ポ ー名 状態
base CentOS-7 - Base 9,363
epel Extra Packages for Enterprise Linux 7 - x86_64 10,936
extras CentOS-7 - Extras 435
openstack OpenStack Repository 1,673
updates CentOS-7 - Updates 393
一覧 取得
左 様 一覧 取得
正 く設定 い
コ ン ン ー の導入
今後 演習 利用 各種 ー ン ー
o python-xxxx OpenStack 操作 ー
nova や neutron い コン ーネン 操作 対応 い
o jq JSON ー コ ン
o wget http ン ー コ ン
o vim 高機能 vi
o crudini INI 形式 設定 操作 コ ン
o bash-completion bash コ ン 補完 有効 ー
39
[root@console ~]# yum install -y \
python2-novaclient \
python2-cinderclient \
python2-keystoneclient \
python2-neutronclient \
python2-glanceclient \
python2-swiftclient \
python2-heatclient \
python-openstackclient \
jq \
wget \
vim \
crudini \
bash-completion
[root@console ~]# exit
[centos@console ~]$
認証情報の設定
OpenStack 認証情報 設定 先程 ン ー コ ン 群 動作 確認
認証 行う 情報 環境変数 設定 雛形 準備 い ン ー
編集
環境変数 設定 コ ン 実行
o 設定 正 自分 作成 作業用 ー ー 情報 表示
o う く動作 い場合 設定 い 情報 確認 再度 source コ ン 環境変数 設定
実行 く い
[centos@console ~]$ cd ~/
[centos@console ~]$ wget reposerver/hands-on/openrc
[centos@console ~]$ vim openrc
export OS_TENANT_NAME=tenant-XXXXXX
export OS_USERNAME=student-XXXXXX
export OS_PASSWORD=pass-XXXXXX
export OS_AUTH_URL=http://Y.Y.Y.Y:5000/v3
export OS_REGION_NAME=RegionOne
export OS_VOLUME_API_VERSION=2
export OS_IDENTITY_API_VERSION=3
export OS_USER_DOMAIN_NAME=${OS_USER_DOMAIN_NAME:-"Default"}
export OS_PROJECT_DOMAIN_NAME=${OS_PROJECT_DOMAIN_NAME:-"Default"}
[centos@console ~]$ source openrc
[centos@console ~]$ nova list --fields name,status,networks
+---+---+---+---+
| ID | Name | Status | Networks |
設定 雛形 ン ー 編集
各自 認証情報 設定
設定 値 別途指示 あ
編集 環境変数 設定 コ ン
正 く動作 実行 自分 作成 作業用 ー
ー 情報 確認
環境の確認
作成 環境 確認
キ ー ネ ワー キー 確認 い
o 確認 コ ン 異 い 確認 く い nova コ ン neutron コ ン
見覚え い設定 あ 場合や う く表示 い場合 認証情報 ー ン ー
正 く完了 い 操作 確認 く い
41
[centos@console ~]$ neutron security-group-list --max-width 30
+---+---+---+
| id | name | security_group_rules |
+---+---+---+
| 524bf9bf-0693-48c6-b004-494c762f531b | sg-for-console | egress, IPv4 |
| | | egress, IPv6 |
| | | ingress, IPv4, 22/tcp, remote_ip_prefix: 0.0.0.0/0 |
| 8b598af6-d87b-42fa-9d3f-330bc61ac03e | open-all | egress, IPv4 |
| | | egress, IPv6 |
| | | ingress, IPv4, 1-65535/tcp, remote_ip_prefix: 0.0.0.0/0 |
| | | ingress, IPv4, icmp, remote_ip_prefix: 0.0.0.0/0 |
| dbeda878-4f2d-4861-8694-bfec38d69aa9 | default | egress, IPv4 |
| | | egress, IPv6 |
| | | ingress, IPv4, remote_group_id: dbeda878-4f2d-4861-8694-bfec38d69aa9 |
| | | ingress, IPv6, remote_group_id: dbeda878-4f2d-4861-8694-bfec38d69aa9 |
+---+---+---+
[centos@console ~]$ neutron net-list
+---+---+---+
| id | name | subnets |
+---+---+---+
| 1cc16a31-cf1d-436f-8b7f-bc463e58db88 | public | 592f49ed-2387-4cb1-8cc9-1f66bd956265 |
| 051318d6-e77b-4f9a-97fa-9735393ca32d | work-net | 2d76e242-5c1d-4759-b40c-167a0e4e1dc3 192.168.199.0/24 | +---+---+---+
[centos@console ~]$ nova keypair-list
+---+---+
| Name | Fingerprint |
+---+---+
| key-for-console | c3:91:48:60:b5:d4:85:b0:54:fd:86:28:d0:34:99:52 | +---+---+
キ ー 表示
仮想ネ ワー 表示
キー 表示
コ ン ン ー の
ン ー OpenStack 操作 コ ン nova neutron openstack コ
ン 等 多数 コ ン や ン 持 い
以下 方法 コ ン 表示 初 コ ン 出
う コ ン 確認 実行 く い
[centos@console ~]$ nova help
usage: nova [--version] [--debug] [--os-cache] [--timings]
[--os-region-name <region-name>] [--service-type <service-type>]
[--service-name <service-name>]
[--volume-service-name <volume-service-name>]
省略
Command-line interface to the OpenStack Nova API.
Positional arguments:
<subcommand>
absolute-limits DEPRECATED, use limits instead.
add-fixed-ip Add new IP address on a network to server.
add-floating-ip DEPRECATED, use floating-ip-associate instead.
add-secgroup Add a Security Group to a server.
agent-create Create new agent build.
agent-delete Delete existing agent build.
省略
[centos@console ~]$ nova help boot
usage: nova boot [--flavor <flavor>] [--image <image>]
[--image-with <key=value>] [--boot-volume <volume_id>]
[--snapshot <snapshot_id>] [--min-count <number>]
[--max-count <number>] [--meta <key=value>]
[--file <dst-path=src-path>] [--key-name <key-name>]
全 コ ン ン 表示
特定 コ ン 例 boot
表示
コ ン ンを利用した基礎操作
43
演習内容
作業用 ー ー コ ン ン 使 All-in-One 環境 構築
ー ー 準備
o 2 仮想ネ ワー 作成
o 論理 ー 作成
o userdata 準備
o 仮想 ー ー 作成
tenant-XX / student-XX
仮想 ー ー
内部ネ ワー
192.168.199.0/24
作業用 ー ー
192.168.199.XX Floating IP
All-in-One ー ー
eth0 eth1
ー ー コ ン ン 使 構築
い
仮想 ワー の作成
仮想ネ ワー 作成
o ネ ワー 操作 neutron コ ン 利用
作成 仮想ネ ワー 仮想 ネ 割当
o floating-subnet DHCP 無効(--disable-dhcp) い 点 注意 く い
DHCP 有効 work-net 有効 い
作成 仮想 ネ floating-subnet 仮想 ー ー Ext-Router 接続
45
[centos@console ~]$ neutron net-create floating-net
[centos@console ~]$ neutron subnet-create --ip-version \
--gateway . . 00. \
--name floating-subnet \
--disable-dhcp floating-net . . 00.0/
[centos@console ~]$ neutron router-interface-add Ext-Router floating-subnet
[centos@console ~]$ neutron net-list
+---+---+---+
| id | name | subnets |
+---+---+---+
| fc8869b7-aca1-4e06-84c0-94a831374753 | floating-net | 722ba04e-66db-4035-9da2-44b3edf95209 172.16.100.0/24 |
| 359235e4-7090-40f5-93dc-be105041d46a | work-net | a01624a3-c340-475b-b124-006fdc30bd11 192.168.199.0/24 |
| 63c67570-ba92-463a-b34c-2b9c1fff628c | public | a2f49fe1-ac9b-4189-86da-2ef24328a883 | +---+---+---+
[centos@console ~]$ neutron router-port-list Ext-Router --max-width 40
+---+---+---+---+
| id | name | mac_address | fixed_ips |
+---+---+---+---+
| 0235ea78-bcb7-4ce4-87b8-41e10309ff67 | | fa:16:3e:9f:ef:fc | {"subnet_id": "4be99a54-911d- |
| | | | 4e99-a157-2475dd94682b", "ip_address": |
| | | | "172.16.100.254"} |
| fbcf94d7-0629-4ae6-a841-bf7c0ba089a7 | | fa:16:3e:cd:41:5a | {"subnet_id": "2d76e242-5c1d-4759-b40c- |
| | | | 167a0e4e1dc3", "ip_address": |
| | | | "192.168.199.254"} |
+---+---+---+---+
仮想ネ ワー 作成
仮想 ネ 作成
仮想 ネ 仮想 ー ー
接続
作成 floating-net 確
認
floating-net Ext-Router
接続確認
キー の作成
新 キー my-key 作成 今後 ン ン キー 利用
い
作成 キー 作業用 ー ー 保存 後 作成 ー ー 接続 利
用
o tee コ ン 出力 出力 コン ー 表示 保
存 可能
o 秘密鍵 権限 所有者 い い 利用 い 権限 600 変更
[centos@console ~]$ cd ~/
[centos@console ~]$ nova keypair-add my-key | tee my-key.pem
---BEGIN RSA PRIVATE KEY---
MIIEpAIBAAKCAQEA1Icm/rKNK0P2KZF28/FfD885EuylS9fwA8gB+mHMz+BPHcrd
8jNlpzDZRlF979AU9inNMMtxZTWtr9ZdS5MqF9a+WYXv39q2bCRO7rS0yES0J5wi
QxHbDFqcnKwqSp4GFPYgti34YNX0Y0k96S7SmTLZY0fyB0In4WrdHdlxovhshpGa
( 省略 )
pPEGxuwb+oksJvLpNO5RR7YQZItZvz3UlG0AxQDg7MIe7WAmZMBT3AWjKFvOxQ7i
QlJBa0U9L8g9tztaN5h+EwTQ/Hcgb95gwHtYLiDadwbbcP3mb3422ZSII3bXtyM3
pPHgBS5nG3QXXaPbi2q3AjOP5jq+FTmqLKbMZW0c271teOd8X/ovvg==
---END RSA PRIVATE KEY---
[centos@console ~]$ chmod 600 my-key.pem
nova keypair-add xxx キー 作
成 秘密鍵 情報 標準出力 表示
結果 teeコ ン 保存
い
キー 他人 読 取 権限
い ssh ン ー
自分専用 権限 設定
論理 ー の作成
仮想 ー ー 割 当 論理 ー 手動 作成
論理 ー Neutron 提供 機能 最小単位
o 論理 ー 仮想ネ ワー 払い 通常 自動 関連付 仮想 ネ
IP MAC 割当
手動 IP 割 当 場合 操作 様 論理 ー 作成・編集 行い
o キ ー や Floating IP 論理 ー 対 機能
o 論理 ー 作成時 割当 MAC IP 以外 通信 全 遮断
o 作成後 IP 等 設定 変更 可能
47
[centos@console ~]$ neutron port-create work-net \
--security-group open-all \
--fixed-ip subnet_id=work-subnet,ip_address= . . . 00
[centos@console ~]$ neutron port-create floating-net \
--security-group open-all \
--fixed-ip subnet_id=floating-subnet,ip_address= . . 00. 00 \
--fixed-ip subnet_id=floating-subnet,ip_address= . . 00. 0 \
--fixed-ip subnet_id=floating-subnet,ip_address= . . 00. 0 \
--fixed-ip subnet_id=floating-subnet,ip_address= . . 00. 0 \
--fixed-ip subnet_id=floating-subnet,ip_address= . . 00. 0
work-net 上 IP 固
定 ー 作成
同時 キ ー
open-all 割 当
floating-net 上 論理 ー
作成 複数
同時 割当 キ ー
open-all 割 当
Note
1 論理 ー 割当 上限数 Neutron 設定 決
今回 環境 5 個 上限 い
max_fixed_ips_per_port = 5
作成した論理 ー の状態
操作 作成 論理 ー 確認
[centos@console ~]$ neutron port-list -c id -c mac_address -c fixed_ips
省略 省略
+--- ---+---+--- ---+
| id | mac_address | fixed_ips |
+--- ---+---+--- ---+
| 14307392- -178b8a4fd212 | fa:16:3e:d5:a2:92 | {"subnet_id": "a01624a3- -006fdc30bd11", "ip_address": " . . . "} |
| 14c66d0e- -cf6b5defdac4 | fa:16:3e:7d:ad:fd | {"subnet_id": "a01624a3- -006fdc30bd11", "ip_address": " . . . "} |
| 1dcb091d- -4b40f2041229 | fa:16:3e:25:15:aa | {"subnet_id": "722ba04e- -44b3edf95209", "ip_address": " . . 00. 00"} |
| | | {"subnet_id": "722ba04e- -44b3edf95209", "ip_address": " . . 00. 0 "} |
| | | {"subnet_id": "722ba04e- -44b3edf95209", "ip_address": " . . 00. 0 "} |
| | | {"subnet_id": "722ba04e- -44b3edf95209", "ip_address": " . . 00. 0 "} |
| | | {"subnet_id": "722ba04e- -44b3edf95209", "ip_address": " . . 00. 0 "} |
public
コン ー ン
1
4
work-net
192.168.199.0/24
floating-net
172.16.100.0/24
Ext-Router
2
3
論理 ー
5
6
今回 手動 作 ー
今回 手動 作 ー
DHCP ON 場合
作成
dnsmasq 用 ー
← ←
←
自動設定 の準備
仮想 ー ー 起動時 同時 実行 userdata 与え
o 作業用 ー ー 作成 際 ワー 設定 ー コ ン ン 与え 機能
o 機能 使う 各 ー ー 必 起動時 行い い設定等 外部 切 離 可能
userdata 仮想 ー ー 起動 際 起動 ー 含 い cloud-init
いう機能 実行
o cloud-init い 後 演習 解説 行い
49
[centos@console ~]$ cd ~/
[centos@console ~]$ wget http://reposerver/hands-on/userdata_pre_openstack.txt
[centos@console ~]$ vim userdata_pre_openstack.txt
定義済 userdata ン ー
ン ー userdata 編集
編集内容 次項
自動設定 の準備
ン ー userdata 編集
o ー ー IP 部分 書 換え く い
userdata 中 行わ い 処理 以下 解説 参照 く い
#!/bin/bash
mkdir -p /root/temp
echo "xxx.xxx.xxx.xxx reposerver" >> /etc/hosts rm -f /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/edubase.repo http://reposerver/repo/edubase.repo yum clean all
yum repolist
yum install -y wget crudini vim bash-completion lynx yum update -y
rm -f /etc/yum.repos.d/CentOS* rm -f /etc/yum.repos.d/epel-*
echo "options kvm_intel nested=1" > /etc/modprobe.d/kvm-nested.conf modprobe -r kvm_intel
modprobe kvm_intel
cat /sys/module/kvm_intel/parameters/nested cat << EOF > /usr/lib/sysctl.d/00-system.conf net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0 net.ipv4.conf.all.rp_filter = 0 net.ipv4.conf.all.forwarding = 1 EOF
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
sed -i 's/^PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config mkdir -p /root/.ssh
chmod 700 /root/.ssh
rm -f /root/.ssh/authorized_keys
設定 演習環境用 変更
OS ー 基本 ー ン ー い
仮想 ン 転送
OS ー ン 機能 有効 い
OpenStack SSH
root ン 許可 Nova 設定
キー root ー ー コ ー
Nested KVM 機能 ON 仮想環境上 仮想化支援
機能 有効 い
xxx 部分 ー ー IP
書 換え く い
仮想サー ーの起動
All-in-One 環境用 仮想 ー ー openstack-single 作成
o 起動時 作成 論理 ー UUID 事前 環境変数 格納 い
o 必須 あ コ ン ン ン 短く 可読性 向上
51
[centos@console ~]$ PORTID1=`neutron port-list --fixed-ips ip_address=192.168.199.100 -c id -f csv --quote none | grep -v id`
[centos@console ~]$ PORTID2=`neutron port-list --fixed-ips ip_address=172.16.100.100 -c id -f csv --quote none | grep -v id`
[centos@console ~]$ echo $PORTID1
d5f364eb-f0c7-47b6-a7b8-cf312ef31d70
[centos@console ~]$ echo $PORTID2
1dcb091d-26fc-4005-80be-4b40f2041229
[centos@console ~]$ cd ~/
[centos@console ~]$ nova boot --flavor m1.large --image "CentOS7" \
--user-data userdata_pre_openstack.txt \
--key-name my-key \
--nic port-id=${PORTID1} --nic port-id=${PORTID2} openstack-single
+---+---+| Property | Value | +---+---+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | nova |
| OS-EXT-STS:power_state | 0 |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building | 省略
| created | 2015-11-17T07:47:10Z |
| flavor | m1.large (4) |
| id | 75c6d969-fbb0-4082-a56c-f0532339d9ef |
| image | CentOS7-1509 (a3d7276a-5c77-4c05-9919-1d16106a6fde) |
| key_name | my-key |
| name | openstack-single |
| security_groups | open_all |
| status | BUILD | +---+---+
nova ン ン 起動 際
接続 先 ネ ワー 情報 必要
論理 ー UUID
取得 変数 格納 後 利用
userdata_pre_openstack.txt
起動時 実行 う 設
定 い
先 作成 論理 ー
ン ン NIC 接
続 う 指示 い
指定 順番 OS NIC
認識
Note 後 演習 簡易 事前 論理
ー 作成 IP 割当 利用 い
通常 論理 ー く 仮想ネ ワー
指定 ン ン 起動 場合
ン ン 起動時 自動的 論理 ー 作
成 空い い IP 割当
変数 UUID 格納
い 確認
仮想サー ーの起動
作成 仮想 ー ー 状態 コ ン 確認
3〜5分 起動 完了
[centos@console ~]$ nova list
見やすいよう 整形し い す
+---+---+---+---+---+---+
| ID | Name | Status | Task State | Power State | Networks | +---+---+---+---+---+---+
| 5173dd67-abd0-41b5-b41f-ff89ed7e3311 | console | ACTIVE | - | Running | work-net=192.168.199.4, 157.1.141.210 |
| 75c6d969-fbb0-4082-a56c-f0532339d9ef | openstack-single | ACTIVE | - | Running | floating-net=172.16.100.100, |
| | | | | | 172.16.100.101, 172.16.100.102, |
| | | | | | 172.16.100.103, 172.16.100.104; |
| | | | | | work-net=192.168.199.100 | +---+---+---+---+---+---+
[fedora@console ~]$ nova console-log --length 20 openstack-single
ci-info: | Keytype | Fingerprint (md5) | Options | Comment | ci-info: +---+---+---+---+ ci-info: | ssh-rsa | a0:96:43:f8:f0:b3:92:8d:36:e2:d3:f9:90:c8:0c:fa | - | Generated-by-Nova | ci-info: +---+---+---+---+ ec2:
ec2: ############################################################# ec2: ---BEGIN SSH HOST KEY FINGERPRINTS---
ec2: 256 59:35:6e:82:eb:e5:ed:6e:46:31:ae:12:a2:29:92:64 (ECDSA) ec2: 256 ee:80:e2:51:e0:cd:4c:f5:a9:e5:11:ca:31:39:33:49 (ED25519) ec2: 2048 5f:b5:21:0a:11:5f:d7:cf:a6:d9:94:29:32:fd:2e:7d (RSA) ec2: ---END SSH HOST KEY FINGERPRINTS---
ec2: ############################################################# ---BEGIN SSH HOST KEY KEYS---
ecdsa-sha2-nistp256
AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOzSA0YQ053Cq45yE+JPoZko4tFdzk+1G3FBrJ4pJzN6vUPyiogzEPlAnlQB5SkUfFyXcvz6CJHuC2ncG+rM8IE= ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHt3S0CCipTmB5A3ycoTegAadis+AjJ4CJLKixMcHIK/
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABAQCjo5RqO3a/KxgZRlq0P7loMLFTyd7KNFSuIjKB4gYUrzTvapqeQ22pCfeLqi74FfB2yuy5g0hKcQVgcrXlaApyFoklYVTNSy95VjbK4fCOXg03fFWyb6 uzhuTVAeQb4B3if1XRXvLKkWAFsfMkyIFVNVgqzE4w734NzNaqDTHm58mwtZ+fVipKGtWLT41dQCQkFZwNY5Q1ejXN2vsb3b0Mg8tJPltcGk7ElCwaB1Tfta/VTFBZ9VkagXln02s/5Aap0VK4 Bx1NMpxow+BMvP/uq5iEYmxWBJe7RSmurfA2I/g+/uEwfbd+jpMubmwR+/OjXjqUYcBq2z83e4d6Gvsp
仮想 ー ー 作成 成功 状態
Running
起動 ン ン OS 確
認 可能
openstack-single への ン
設定 問題 コン ー SSH
ン 可能
53
[centos@console ~]$ ssh -i my-key.pem root@192.168.199.100
The authenticity of host '192.168.199.100 (192.168.199.100)' can't be established.
ECDSA key fingerprint is SHA256:2OeVSifmZIHXXXGsvANYSputlxdIf51w6GUgkAa/hek.
ECDSA key fingerprint is MD5:59:35:6e:82:eb:e5:ed:6e:46:31:ae:12:a2:29:92:64.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.199.100' (ECDSA) to the list of known hosts.
[root@openstack-single ~]#
[root@openstack-single ~]# hostname
openstack-single.novalocal
[root@openstack-single ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP qlen 1000
link/ether fa:16:3e:65:39:84 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.100/24 brd 192.168.199.255 scope global dynamic eth0
valid_lft 81301sec preferred_lft 81301sec
inet6 fe80::f816:3eff:fe65:3984/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether fa:16:3e:25:15:aa brd ff:ff:ff:ff:ff:ff
openstack-single my-key 使
SSH 接続 行い
標準 nova 上 設定
ン ン 名 名
割当
作成 論理 ー 割
当 eth0
与え い
eth1 側 仮想ネ
ワー 作成時 DHCP
OFF い
割当 い
userdata の動作を確認
起動時 設定 userdata 正 く動作
確認
[root@openstack-single ~]# yum repolist
Loaded plugins : fastestmirror
Loading mirror speeds from cached hostfile
repo id repo name status
base CentOS-7 - Base ,
epel CentOS-7 - Epel ,
extras CentOS-7 - Extras
openstack OpenStack 0
updates CentOS-7 - Updates
repolist : ,0
[root@openstack-single ~]# cat /sys/module/kvm_intel/parameters/nested
Y
[root@openstack-single ~]# sysctl -n net.ipv4.ip_forward
1
[root@openstack-single ~]# sysctl -n net.ipv4.conf.all.forwarding
1
openstack 表示
正 く設定 い
Y 表示 Nested KVM 有効
い
1 表示 forwarding 有効
い
動作 問題 発生した場合
動作 問題 あ 場合 以下 手順 作成 ー ーや論理 ー 削除 再度
手順 実行 く い
o 指定 ー IP 等 や名前 間違え 場合 nova list や neutron port-list
値 確認 コ ン 指定 値 読 替え く い
55
[centos@console ~]$ nova delete openstack-single
[centos@console ~]$ neutron port-list
[centos@console ~]$ neutron port-delete
1 db4b1-a356-4e3a-b2a8-e07858e99256[centos@console ~]$ neutron port-delete bdb08780-0316-42c9-a866-44d2468b4517
[centos@console ~]$ neutron router-interface -delete Ext-Router floating-subnet
[centos@console ~]$ neutron net -delete floating-net
仮想 ー ー 削除
論理 ー 削除
* 演習 作成 ー
削除 く い
ー ー接続 解除
仮想ネ ワー 削除
All-in-One 環境の構築
演習内容
起動 openstack-single OpenStack ン ー 行い
o packstack ン ー ー ン ー
o ン ー 定義 生成 編集
o OpenStack ン ー 実行
o ン ー 後 設定
o ネ ワー 環境 設定
57
eth0 eth1
192.168.199.0/24 172.16.100.0/24
192.168.199.100 172.16.100.101 〜104
OpenStack
All-in-One
OpenStack 上 作成 仮想
ン ネ ワー 使
外部 通信
OpenStack API ネ
ワー 側 利用
OpenStack ン ー 行
い 全 機能 1 台
ン ー All-in-One
形式 行い
openstack-single
ン ー の実行
RDO ン ー ー あ packstack 導入 ン ー 定義
answer 作成 ン ー ー 実行
o ン ー 実行 下記 通 簡単 手順 行え
o 実行 10 〜15分程度 終了 待 時間中 キ 進 く い
[root@openstack-single ~]# yum install -y openstack-packstack openstack-packstack-doc python-netaddr
[root@openstack-single ~]# packstack --dry-run --allinone --default-password='password' \
--provision-demo=n --gen-answer-file=answer.txt
[root@openstack-single ~]# ll
total 52
-rw---. 1 root root 49968 Apr 29 02:41 answer.txt
drwxr-xr-x. 2 root root 6 Apr 23 15:41 temp
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NAGIOS_INSTALL n
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_SWIFT_INSTALL y
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_HEAT_INSTALL y
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_CEILOMETER_INSTALL n
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_KEYSTONE_REGION RegionOne
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_CINDER_VOLUMES_SIZE 30G
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_SWIFT_STORAGE_SIZE 3G
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_ML2_TYPE_DRIVERS vxlan
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES vxlan
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_L3_EXT_BRIDGE br-ex
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_LBAAS_INSTALL y
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_OVS_TUNNEL_IF eth0
[root@openstack-single ~]# setenforce 0
ン ー ー Packstack
ン ー
ン ー ー ー
answer 生成
次項 内容 解説 行い
生成 answer
crudini コ ン
編集 い
ン ー 時 一時的 SELINUX 無効
化 再起動 有効 戻
RDO の Answer つい
RDO ン ー ー あ Packstack 自動構成 ー Puppet 使わ い
o Packstack OpenStack 用 Puppet ー 集 いえ
ー 各種 設定方法や 目的 応 設定
Answer Puppet ー 対 外部 ー 与え 挙
動 制御 INI 形式
o Answer 指定 ー ー 膨大 本演習 最低限 値 設定
い
ー 与え い い 値 使わ
o INI 形式 直接 編集 可能 演習 crudini コ ン
使 編集 行 い
59
# cat answer.txt
[general]
# Path to a public key to install on servers. If a usable key has not
# been installed on the remote servers, the user is prompted for a
# password and this key is installed so the password will not be
# required again.
CONFIG_SSH_KEY=/root/.ssh/id_rsa.pub
# Default password to be used everywhere (overridden by passwords set
# for individual services or users).
CONFIG_DEFAULT_PASSWORD=password
# Specify 'y' to install MariaDB. ['y', 'n']
CONFIG_MARIADB_INSTALL=y
~~~ 省略 ~~~
# wc -l answer.txt
1158 answer.txt
crudini コ ン
crudiniコ ン ini 形式 コ ン ン 安全 編集 コ ン
ini 以下 形式 OpenStack 以外 MySQL 等幅広く使わ い
# cat sample.ini
[section1]
key11 = value11
key12 = value12
[section2]
key21 = value21
key22 = value22
# crudini --help
A utility for manipulating ini files
Usage: crudini --set [OPTION]... config_file section [param] [value]
or: crudini --get [OPTION]... config_file [section] [param]
or: crudini --del [OPTION]... config_file section [param] [list value]
or: crudini --merge [OPTION]... config_file [section]
# crudini --get sample.ini section2 key21
value21
# crudini --set sample.ini section1 key12 newvalue
# cat sample.ini
[section1]
key11 = value11
key12 = newvalue
ン [section] 宣言 中
key = value いう形式 ー 記述
コ ン
指定 ン キー 取得
指定 ン キー 値 変更
演習 利用した answer の ー ー つい
今回 演習 指定 い ー 以下
61
# Nagios のイン ー し いよう 設定し す ON
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NAGIOS_INSTALL n
# Swift ェ ー ,Heat ー ーター 効化し Ceilometer メータ ン 無効 し い す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_SWIFT_INSTALL y
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_HEAT_INSTALL y
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_CEILOMETER_INSTALL n
# Keystone の ー ョン名 設定し い す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_KEYSTONE_REGION RegionOne
# Cinder, Swift 用の外部 ー の容量 設定し い す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_CINDER_VOLUMES_SIZE 30G
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_SWIFT_STORAGE_SIZE 3G
# Neutron の L2 ネッ ワー VxLAN 構成し す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_ML2_TYPE_DRIVERS vxlan
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES vxlan
# Neutron が利用す 外部ネッ ワー の接続 バイ br-ex 命名さ OVS ッ 使用し す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_L3_EXT_BRIDGE br-ex
# LBaaS イン ー し す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_LBAAS_INSTALL y
# Neutron が構成す ナン ネッ ワー eth0 上 構成し す ンネ eth0 上 構築す
[root@openstack-single ~]# crudini --set answer.txt general CONFIG_NEUTRON_OVS_TUNNEL_IF eth0
ン ー の確認
answer 内容やOS 設定 問題
Packstack ン ー Installation completed
successfully いう ー 終了
Welcome to the Packstack setup utility
The installation log file is available at: /var/tmp/packstack/20151118-070314-XcHxZY/openstack-setup.log
Installing:
Clean Up [ DONE ]
Discovering ip protocol version [ DONE ]
Setting up ssh keys [ DONE ]
Preparing servers [ DONE ]
~~~ 省略 ~~~
192.168.199.10_postscript.pp: [ DONE ]
Applying Puppet manifests [ DONE ]
Finalizing [ DONE ]
**** Installation completed successfully ******
Additional information:
* Time synchronization installation was skipped. Please note that unsynchronized time on server instances
might be problem for some OpenStack components.
* File /root/keystonerc_admin has been created on OpenStack client host 192.168.199.100. To use the command
line tools you need to source the file.
* To access the OpenStack Dashboard browse to http://192.168.199.100/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory.
ン ー 実行 Puppet ー
順 適用 い
ン ー 成功 Successfully
Faild 等 場合 Answer や
手順 見 見 く い
構成 Horizon
表示
ン ー 後の設定
ン ー 完了 OpenStack 環境 いく 設定 行い
設定 openstack-config いうコ ン 利用
o RDO 提供 OpenStack 設定 編集 専用 コ ン crudini 同等 機能
持 い
OpenStack 設定 INI 形式 直接編集 可能
63
[root@openstack-single ~]# openstack-config --set /etc/cinder/cinder.conf lvm volume_clear none
[root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf DEFAULT api_rate_limit false
[root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf libvirt virt_type kvm
[root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf libvirt cpu_mode host-passthrough
[root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf DEFAULT novncproxy_host 0.0.0.0 [root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf DEFAULT novncproxy_port 6080 [root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf vnc enabled true
[root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf vnc novncproxy_base_url http://192.168.199.100:6080/vnc_auto.html [root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf vnc vncserver_listen 0.0.0.0
[root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf vnc vncserver_proxyclient_address 192.168.199.100 [root@openstack-single ~]# openstack-config --set /etc/nova/nova.conf vnc vnc_keymap ja
[root@openstack-single ~]# echo "dhcp-option-force=26,1400" > /etc/neutron/dnsmasq-neutron.conf
cinder 上 ー 削除 際 0 行わ い う
処理 非常 負荷 高い 演習 ー 行う 設定
nova REST API DOS 対策 一定時間内 実行 API 回数 制限 設
定 い ー 演習 制限 解除 い
Nova 仮想 ン 作成 際 仮想化支援機能 有効 支援
機能 利用 い場合 qemu 設定
Horizon 上 VNC 有効 い
経由 コン ー 接続
機能 演習 利用
本OpenStack環境上 DHCP 与え ン
ン MTU 設定 1400 設定 理由 後述
OpenStack 環境 のMTU つい
本演習 構築 OpenStack 環境上 MTU1400 利用 通常 MTU 1500
VxLAN 利用 ー 通常 50byte 付加
通信 行え い
問題 回避 OpenStack 外側 ネ ワー MTU 1500 以上 設定
OpenStack 内部 ン ン MTU 1500 小 く 必要 あ
o 今回 演習環境 2 段 ー ー 行わ 1500-50-50
物理ネ ワー
通常 MTU1500 超え
通信 い
物理 ー ー
物理 ー ー
各自 現在利用 い 演習用OpenStack環境
中 動く仮想 ン MTU1450 指定
openstack-single 用 ン ン
MTU1450 起動
本演習 作成 OpenStack
中 動く仮想 ン MTU1400 指定
MTU1400
OpenStack 上 起動
ン ン
MTU1400 起動
MTU1450MTU1500
全員 利用 い ー 演習
MTU1450 MTU1500
ワー ン ー ー の設定
MTU 確認
eth1 接続 Open vSwitch(OVS) br-ex 作成
o OpenStack 側 br-ex 利用 ン ン 外部 通信 う 設定
設定 answer 中 指定 い
65
[root@openstack-single ~]# ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc pfifo_fast state UP qlen 1000
link/ether fa:16:3e:72:1c:49 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.100/24 brd 192.168.199.255 scope global dynamic eth0
valid_lft 55240sec preferred_lft 55240sec
inet6 fe80::f816:3eff:fe72:1c49/64 scope link
valid_lft forever preferred_lft forever
[root@openstack-single ~]# cat << EOF > /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1"
BOOTPROT="none"
ONBOOT="yes"
TYPE="OVSPort"
DEVICETYPE="ovs"
OVS_BRIDGE="br-ex"
EOF
[root@openstack-single ~]# cat << EOF > /etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE="br-ex"
BOOTPROT="none"
ONBOOT="yes"
TYPE="OVSBridge"
DEVICETYPE="ovs"
OVSBOOTPROTO="none"
OVSDHCPINTERFACES="eth1"
EOF
[root@openstack-single ~]# reboot
設定 完了 一度 ン
ン ー 全 設定 反映
MTU 1450 あ 確
認
再起動後の動作確認
再起動 ン ン ン OpenStack 動作状況 確認
起動直後 動作確認 ー 場合 あ ー表示 出 場合
少 時間 い 再度コ ン 実行 く い
o 表示内容 多少異 場合 あ
[root@openstack-single ~]# source keystonerc_admin
[root@openstack-single ~ keystone_admin ]# nova-manage service list
Binary Host Zone Status State Updated_At
nova-consoleauth openstack-single.novalocal internal enabled :- 0 - - 0 : :0
nova-scheduler openstack-single.novalocal internal enabled :- 0 - - 0 : :0
nova-conductor openstack-single.novalocal internal enabled :- 0 - - 0 : :0
nova-compute openstack-single.novalocal nova enabled :- 0 - - 0 : :
nova-cert openstack-single.novalocal internal enabled :- 0 - - 0 : :0
[root@openstack-single ~ keystone_admin ]# cinder-manage service list
No handlers could be found for logger "oslo_config.cfg"
Binary Host Zone Status State Updated At
cinder-backup openstack-single nova enabled :- 0 - - 0 : :
cinder-scheduler openstack-single nova enabled :- 0 - - 0 : :
cinder-volume openstack-single nova enabled :- 0 - - 0 : : 0
[root@openstack-single ~ keystone_admin ]# neutron agent-list
+---+---+---+---+---+---+
| id | agent_type | host | alive | admin_state_up | binary |
+---+---+---+---+---+---+
| 230a977b-cfab-449d-96ed-ff7fb4192707 | Metadata agent | openstack-single.novalocal | :- | True | neutron-metadata-agent |
| 2cf1e15b-c8d8-4ad2-b212-82078b2a9629 | Open vSwitch agent | openstack-single.novalocal | :- | True | neutron-openvswitch-agent | packstack 実行後 管理者用 環境変数設定 作成 く
読 込 管理者権限 コ ン 実行 可能
nova 稼動状態 確認 :-) ー 正常
稼働 い 状態 XXX ー