Professional Documents
Culture Documents
ver2.1
OpenStack
( )
twitterid: @saito_hideki
(IIJ)
http://www.iij.ad.jp/
OpenStack
OpenStack()
3
OpenStack
OpenStack20101st(Austin)Havana)
2014/049(Icehouse)
(CloudOS)
OpenStack
PC
**
(: 2014WIDE OpenStack)
CloudOS
//
20072016IDC Japan
(: 2014WIDE OpenStack)
CloudOS
(: 2014WIDE OpenStack)
CloudOS
OS
OS( wikipedia)
etc
(: 2014WIDE OpenStack)
CloudOS
OS
OS
OS
OS
OS
OS
OS( wikipedia)
8
(: 2014WIDE OpenStack)
OS()
Create
File%A
Modify
File%A
Backup
File%A
Copy
File%B
Modify
File%A
Delete
(: 2014WIDE OpenStack)
CloudOS()
Create
VM#A
Modify
VM#A
Backup#
snapshot#
VM#A
Modify
VM#A
Copy
GoldenI
mage
Copy#&#Boot
VM#B
VM#C
10
Delete
(: 2014WIDE OpenStack)
CloudOS
1. WebUI/GUI/CLI
2. API
3. ()
4.
5.
6.
7. (3)
8.
9.
11
(: 2014WIDE OpenStack)
OpenStack
IaaS
2010 Racksapce NASA
OpenStack Foundation
12
(: 2014WIDE OpenStack)
OpenStack
REST API
API
13
(: 2014WIDE OpenStack)
OpenStack
Aus?n
Bexar C
Essex
Grizzly
Folsom
Havana Icehouse
Compute
Nova
Object;Storage
Swi$
Image;Service
Glance
Keystone
Iden?ty;Service
Horizon
Dashboard
Cinder
Block;Storage
Neutron
Networking
Ceilometer
Telemetry
Orchestra?on
Heat
Trove
Database
14
(: 2014WIDE OpenStack)
OpenStack
Your Applications
Horizon
(Dashboard)
Heat
L2
FW
Glance
SnapShot
Cinder
Swift
Keystone
Neutron
Nova
ReST
15
Ceilometer
OpenStack API
(: 2014WIDE OpenStack)
OpenStack
OSS CloudOS
Linux kernel
Networking
-
(OpenFlow controller)
16
OpenStack
17
()
PC(MacBookAir)Host
VirtualBox
Memory: 8GB
SSD: 256GB
VirtualBox
-
OpenStack
-
2014.1 Icehouse
()
VirtualBox
HostOnlyNetwork
vboxnet0
ComputeVM
IPv4: 192.168.0.240
IPv4: 255.255.255.0
DHCP:
vboxnet1
OpenStack
IPv4: 172.16.0.240
IPv4: 255.255.255.0
DHCP:
19
(Guest)
4GB
CPU x 1
HDD 20GB(format:VDI)
MEM 4GB
Network
- Adapter1 (vboxnet0)
- ->->->
- DHCP o
- Adapter2 (vboxnet1)
->->->
DHCP o
Adapter3 (NAT)
20
vboxnet0
192.168.0.0/24
FloatingIP
NATRDO &
packstackOpenStack
br-ex: 192.168.0.1
eth0: IP
rdo
OpenStack BOX
GuestOS
eth2
10.0.4.15
eth1
172.16.0.1
eth0OpenStack
(br-ex)
IP
NAT
10.0.4.0/24
10.0.4.2
vboxnet1
172.16.0.0/24
vboxnet0: 192.168.0.240
MacBook Air
HostOS
vboxnet1: 172.16.0.240
21
OpenStack
-
Havana
http://enterprisecloud.jp/installguide-openstack/
devstack
OpenStack
http://devstack.org/
http://openstack.redhat.com/Main_Page
22
OS(1)
1. /etc/hosts(root)
127.0.0.1
172.16.0.1
localhost
rdo
2. /etc/syscong/network(root)
NETWORKING=yes
HOSTNAME=rdo
3. /etc/syscong/network-scripts/ifcfg-eth0(vboxnet0) (root)
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
TYPE=Ethernet
4. /etc/syscong/network-scripts/ifcfg-eth1(vboxnet1) (root)
DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
TYPE=Ethernet
IPADDR=172.16.0.1
PREFIX=24
23
OS(2)
5. /etc/syscong/network-scripts/ifcfg-eth2(NAT network) (root)
DEVICE=eth2
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Ethernet
6. OS(root )
24
RDO & packstackOpenStack(1)
MySQL
MongoDB
RabbitMQ
Keystone
Glance
Cinder
Nova
Neutron
Horizon
Swift
Heat
Ceilometer
Tempest
OpenStack Client
Nagios
25
RDO & packstackOpenStack(1)
1. stackwheel(root)
# useradd -G wheel stack
# passwd stack
Changing password for user stack.
New password: ********
Retype new password: ********
passwd: all authentication tokens updated successfully.
2. /etc/sudoerswheelsudo(root)
%wheel ALL=(ALL)
ALL
3. RDO(stack)
OS
$ sudo yum install -y \
http://repos.fedorapeople.org/repos/openstack/openstack-icehouse/rdo-release-icehouse-4.noarch.rpm
$ sudo yum update -y
$ sudo reboot
4. packstack(2014.1.1-0.25.dev1208)(stack)
$ sudo yum install -y openstack-packstack-2014.1.1-0.25.dev1208.el6
26
RDO & packstackOpenStack(2)
5. packstackanswer(stack)
answer
$ sudo yum install -y git
$ git clone https://github.com/h-saito/packstack-answer.git && cd packstack-answer
$ git checkout -b 2014.1.1-0.25.dev1208 refs/tags/openstack-packstack-2014.1.1-0.25.dev1208
6. packstackOpenStack(stack)
301
$ packstack --answer-file=all-in-one.conf
nagiosadmin
**** 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 172.16.0.1. To use the command line
tools you need to source the file.
* To access the OpenStack Dashboard browse to http://172.16.0.1/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory.
* To use Nagios, browse to http://172.16.0.1/nagios username : nagiosadmin, password : <>
* The installation log file is available at: /var/tmp/packstack/20140511-121924-ft1kqD/openstack-setup.log
* The generated manifests are available at: /var/tmp/packstack/20140511-121924-ft1kqD/manifests
27
1. nagiosadmin
Nagiospackstacknagiosadmin
2. /etc/nova/nova.conf
packstackkvmVirtualBox
CPU vmx kvmqemu
libvirt_type=qemu
3. /etc/ceilometer/ceilimeter.conf
keystonekeystone
auth_strategy=keystone
28
4. /etc/syscong/network-scripts/ifcfg-eth0
eth0br-ex
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
br-exeth0HyperVisor
$ sudo ovs-vsctl add-port br-ex eth0
5.
29
/var/tmp/packstack/<YYYYMMDD-hhmmss-id>/openstack-setup.log
Puppet
- /var/tmp/packstack/<YYYYMMDD-hhmmss-id>/manifests/*.pp
Puppet
- /var/tmp/packstack/<YYYYMMDD-hhmmss-id>/manifests/*.log
30
All-In-One
OpenStack()
private-subnet
(External Network)public-subnet
oatingip
Dashboard
RDO&packstack
31
(: 2014WIDE OpenStack)
Nova (Compute)
API,request
LB
LB
Nova
nova%api
nova%api
Nova,
Nova,
scheduler
scheduler
Message,Queue
nova%
compute
hypervisor
nova%
compute
hypervisor
Nova%
Nova%
conductor
conductor
DB
nova%
compute
hypervisor
32
Scale,Out
%,State,management,
%,Db,access,on,behalf,of,
compute
(: 2014WIDE OpenStack)
NeutronNetworking
API'request
LB
neutron'
server
LB
neutron'
server
Neutron'
RPC'worker
DB
Message'Queue
L26agent
hypervisor
L26agent
hypervisor
L26agent
hypervisor
OVS
OVS
OVS
VLAN/VXLAN/OpenFlow
33
Scale'Out
OpenStackIcehouse
Dashboard
packstack
(admin,demopackstack)
(admin,demopackstack)
(public/public-subnetpackstack)
(private/private-subnetpackstack)
(publicprivaterouter1packstack)
IP
34
demo
packstack
public(192.168.0.0/25)adminIP
demo
demoprivate
demo
admin
192.168.0.0/24
IP
35
(1)
admin
36
(2)
m1.micro
VirtualBoxRDOVM
4GB
(512MB)64MB
37
(3)
m1.micro
m1.micro
38
Compute
OpenStackCompute
Cell
Region
-
Availability Zone
-
OpenStackRegion
HorizonDashboardRegion
HostAggregation
Region
HostAggregation
Region
39
Compute
VMextra_specs
Host AggregationAvailabilityZone
Compute
avor
+----------------------------+------------------+
| Property
| Value
|
+----------------------------+------------------+
| name
| m1.tiny
|
| ram
| 512
|
| OS-FLV-DISABLED:disabled
| False
|
| vcpus
| 1
|
| extra_specs
| {u'm1': u'true'} |
| swap
|
|
| os-flavor-access:is_public | True
|
| rxtx_factor
| 1.0
|
| OS-FLV-EXT-DATA:ephemeral | 0
|
| disk
| 1
|
| id
| 0
|
+----------------------------+------------------+
Availability Zone
+-----------------------+----------------------------------------+
| Name
| Status
|
+-----------------------+----------------------------------------+
| internal
| available
|
| |- c00
|
|
| | |- nova-conductor
| enabled :-) 2014-03-27T05:03:56.000000 |
| | |- nova-cert
| enabled :-) 2014-03-27T05:03:56.000000 |
| | |- nova-consoleauth | enabled :-) 2014-03-27T05:03:56.000000 |
| | |- nova-scheduler
| enabled :-) 2014-03-27T05:03:57.000000 |
| rack1
| available
|
| |- c03
|
|
| | |- nova-compute
| enabled :-) 2014-03-27T05:03:49.000000 |
| |- c04
|
|
| | |- nova-compute
| enabled :-) 2014-03-27T05:03:58.000000 |
| |- c05
|
|
| | |- nova-compute
| enabled :-) 2014-03-27T05:03:59.000000 |
| rack2
| available
|
| |- c13
|
|
| | |- nova-compute
| enabled :-) 2014-03-27T05:03:49.000000 |
| |- c14
|
|
| | |- nova-compute
| enabled :-) 2014-03-27T05:03:58.000000 |
| |- c15
|
|
+-----------------------+----------------------------------------+
Host Aggregation
Id: 15
Name: rack1_m1
Availability Zone: rack1
Hosts: [u'c03', uc04, uc05]
Metadata: {u'm1': u'true', u'availability_zone': u'rack1'}
40
ICMPSSH base
demo
demo
41
ICMPSSH base
42
base
ICMPSSH
43
ALL-ICMP
44
SSH
45
base ICMPSSH
SSH
ICMP
46
SSH
47
admin
48
admin
admin
49
50
server1
51
adminbase
52
server1
private
53
server1
server1
54
IP
server1IP
IP
55
IP
IP
IP
56
IP
publicIP
publicIP
57
IP
IP
public192.168.0.3
58
IP
IP
192.168.0.3
59
All-In-OneVM
OpenStack
All-In-One(rdo)
eth0
br-ex(IPAddr 192.168.0.1)
qg-e101f8ba-3e
IPAddr: 192.168.0.2
router1
(qrouter-3b19895e-2b1a-4e16-a38cd099cc9ad7e9)
qr-051589d9-75
IPAddr: 10.0.0.1
VLAN tag:1
br-int
tap997e629f-28
VLAN tag:1
Open vSwitch
Bridge
dnsmasq
IPAddr:10.0.0.2
TAP Device
(qdhcp-139b1160-3cb3-4b60-a08b-1db2838e7114)
60
Network
Namespace
All-In-One(VM)
OpenStack
All-In-One(rdo)
eth0
br-ex(IPAddr 192.168.0.1)
qg-e101f8ba-3e
IPAddr: 192.168.0.2
router1
(qrouter-3b19895e-2b1a-4e16-a38cd099cc9ad7e9)
qr-051589d9-75
IPAddr: 10.0.0.1
VLAN tag:1
br-int
qvo058ced41-2f
VLAN tag: 1
tap997e629f-28
VLAN tag:1
Open vSwitch
Bridge
Linux Bridge
qbr058ced41-2f
dnsmasq
IPAddr:10.0.0.2
qvb058ced41-2f
veth pair
tap058ced41-2f
TAP Device
eth0: 10.0.0.3
(qdhcp-139b1160-3cb3-4b60-a08b-1db2838e7114)
server1
61
Network
Namespace
All-In-One
OpenStack)
IP
iptables
demo
ICMPSSH
TAPiptalbes
62
VMOpenStack
RDO+packstack+VirtualBoxOpenStack
RDOAll-In-One
OpenStack
OpenStackTAP/veth/NetworkNamespace/Open vSwitch/
Linux BridgeLinux
OpenStack
63
OpenStack
-
RDO
-
http://openstack.redhat.com/Quickstart
devstack ()
-
http://devstack.org
https://github.com/openstack-dev/devstack.git
OpenStack
http://www.openstack.org
http://docs.openstack.org/havana/
http://enterprisecloud.jp/installguide-openstack/
64
!
Special Thanks:
Akihiro Motoki, Tomoaki Nakajima, Manami Yokota
65