Minimal OpenStack
Starting Your OpenStack Journey
Sean Dague / Aug 19th, 2015 Twitter: @sdague Blog: dague.net
Minimal OpenStack Starting Your OpenStack Journey Sean Dague / Aug - - PowerPoint PPT Presentation
Minimal OpenStack Starting Your OpenStack Journey Sean Dague / Aug 19 th , 2015 Twitter: @sdague Blog: dague.net T h e M i s s i o n o f O p e n S t a c k "To produce the ubiquitous Open Source Cloud Computing platform
Sean Dague / Aug 19th, 2015 Twitter: @sdague Blog: dague.net
a d
a s a S e r v i c e
N S ma n a g e r
b j e c t s t
a g e l a y e r
h a r g e b a c k
n t e g r a t i
w i t h E n t e r p r i s e S t
a g e
D N I n t e g r a t i
i c y E n f
c e me n t
r c h e s t r a t i
L a y e r
u b e r n e t e s d e p l
e r B u t , y
c a n l a y e r t h e m i n l a t e r
c e y
h a v e a M i n i ma l O p e n S t a c k
My First OpenStack
1 Intel/AMD CPU 8 GB Ram 250+ GB Disk 1 Gbs Network Read OpenStack Install Guide Follow sections 2, 3, 4, 5 and 6.2 for your favorite distro For multiple servings follow sections 5 and 6.2 again Makes 1 compute cloud. Good for long running
Variations: * Increase RAM for more guests 2 hrs 4
2 – 3 hours process Read Carefully! "Create Exclusive Slice"
N
a N e t w
k
r i g i n a l N e t w
k i n g
a s y t
e t u p
i mi t e d A P I N e u t r
e w N e t w
k S t a c k
e n e t w
k c e n t r i c A P I
l l
s T e n a n t S e l f S e r v i c e N e t w
k i n g
g T e r m D i r e c t i
f
O p e n S t a c k
My Current Recommendation (based on Kilo documentation): Start with Nova Network to get comfortable Rebuild with Neutron later if your intent is to expand substantially Liberty documentation should make Neutron base easier to get started with
10.64.0.0/24
Controller + Worker Worker
.2 .2 .4 .7 .5 .6
Router
.1
dnsmasq dnsmasq
messages back and forth to prevent collisions Linux Bridge Linux Bridge
10.64.0.0/24
Controller + Worker Worker
.129/25 .129/25 .132 .133 .131 .130
Router
.1
dnsmasq dnsmasq
messages back and forth to prevent collisions Linux Bridge Linux Bridge
10.64.0.128/25 .51/24 .50/24 Through the magic of Linux Networking
Keystone mysql rabbitmq /disk Glance Nova /disk Nova C
t r
l e r + Wo r k e r Wo r k e r O n l y
Persistent Disk Ephemeral Disk
Built from disk on fjrst boot. Exists until destroy. Freshly created
Common Actions:
clout-init: typically shipped in cloud images customizes on fjrst boot Metadata Server Confjg Drive First Boot
Like "T-Shirt Sizes" Each defjnes CPU, Mem, Disk, and other attrs of fjnal VM
Base Image Flavor
ribos:~> more demo-openrc.sh export OS_PROJECT_DOMAIN_ID=default export OS_USER_DOMAIN_ID=default export OS_PROJECT_NAME=demo export OS_TENANT_NAME=demo export OS_USERNAME=demo export OS_PASSWORD=0penstack export OS_AUTH_URL=http://10.42.0.51:5000/v3 export OS_REGION_NAME=RegionOne
n i f i e d
e n s t a c k c l i
e p l a c e s mo s t
n
a / k e y s t
e / g l a n c e c l i u s a g e
a r mo r e c
s i s t e n t i n e x p e r i e n c e
n s t a l l a b l e v i a a p t / y u m/ p i p
u t i t
y
r l a p t
c c e s s a n y O p e n S t a c k v i a s e t t i n g e n v v a r i a b l e s
> source admin-openrc.sh # credentials > openstack image create --copy-from \ https://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img \
# image available to all users > source demo-openrc.sh # drop back to normal user > openstack security group rule create --proto icmp --src-ip 0.0.0.0/0 --dst-port -1 default > openstack security group rule create --proto tcp --src-ip 0.0.0.0/0 --dst-port 22 default # sshable security group out of the box > openstack keypair create –public-key .ssh/id_rsa.pub my_sshkey # add a keypair so you can ssh to servers > openstack server create --flavor m1.medium --image trusty --keypair my_sshkey \ server1 --wait # boot your first server, wait until done > ssh ubuntu@{IP} # profit!
Keystone OpenStack Client User + Project + Password Token POST /images Token Glance HTTP Pull
> source admin-openrc.sh # credentials > openstack image create --copy-from \ https://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img \
# image available to all users > source demo-openrc.sh # drop back to normal user > openstack security group rule create --proto icmp --src-ip 0.0.0.0/0 --dst-port -1 default > openstack security group rule create --proto tcp --src-ip 0.0.0.0/0 --dst-port 22 default # sshable security group out of the box > openstack keypair create –public-key .ssh/id_rsa.pub my_sshkey # add a keypair so you can ssh to servers > openstack server create --flavor m1.medium --image trusty --keypair my_sshkey \ server1 --wait # boot your first server, wait until done > ssh ubuntu@{IP} # profit!
10.64.0.0/24
Controller + Worker
.2 .5 .6
Router
.1
dnsmasq
Linux Bridge Default host level fjrewall preventing all inbound
> source admin-openrc.sh # credentials > openstack image create --copy-from \ https://cloud-images.ubuntu.com/trusty/current/trusty-server-cloudimg-amd64-disk1.img \
# image available to all users > source demo-openrc.sh # drop back to normal user > openstack security group rule create --proto icmp --src-ip 0.0.0.0/0 --dst-port -1 default > openstack security group rule create --proto tcp --src-ip 0.0.0.0/0 --dst-port 22 default # sshable security group out of the box > openstack keypair create –public-key .ssh/id_rsa.pub my_sshkey # add a keypair so you can ssh to servers > openstack server create --flavor m1.medium --image trusty --keypair my_sshkey \ server1 --wait # boot your first server, wait until done > ssh ubuntu@{IP} # profit!
Keystone OpenStack Client User + Project + Password Token POST /servers Token Nova API Glance Nova Conductor Nova Sched Nova Compute HTTP Pull libvirt your compute!
Domain 2
Tenant 1
10 vcpu 8 GB mem 24 GB mem
Domain 1
Project 1
10 vcpu 8 GB mem
Project 2
30 vcpu 24 GB mem
Projects:
Users:
Roles Domains: … you don't need those in your basement *Project == Tenant
r
l e m!
e t t i n g u p H
i z
i s S e c t i
7
a s y t
s e We b U I
1
i z
b U I f
O p e n S t a c k
a l k s t
l l c
e n t s
e r p u b l i s h e d R E S T i n t e r f a c e s
w i f t – O b j e c t S t
e
E S T A P I f
s t
i n g / f e t c h i n g
j e c t s
a r b i t r a r y s i z e *
u i l t i n r e d u n d a n c y mo d e l
a n b e u s e d a s a b a c k e n d f
G l a n c e ,
n C l
d ,
h e r O p e n S
r c e s y s t e ms
e u t r
– A d v a n c e d N e t w
k i n g
e n a n t s e l f s e r v i c e n e t w
k s
P I a n d c
c e p t s mo d e l n e t w
k i n g c
c e p t s
t s
u b n e t s
t e r s
d v a n c e d n e t w
k s e r v i c e s s u c h a s :
d B a l a n c i n g
P N
e t w
k F i r e w a l l
l u g i n s f
L i n u x B r i d g e a n d O V S a n d ma n y S D N s
i n d e r – P e r s i s t e n t B l
k S t
a g e
d d i t i
a l b l
k d e v i c e s w h i c h s u r v i v e l
g e r t h a n V M s
y p i c a l u s e f
D a t a b a s e b a c k e n d s
e i l
t e r
s a g e a n d M e t r i c C
l e c t i
r
i c
d d s b a r e me t a l s u p p
t t
a
e s i g n a t e
N S ma n a g e r , r e a c t s t
a / N e u t r
e v e n t s
e a t
r c h e s t r a t e s " s t a c k "
O p e n S t a c k r e s
r c e s
r
e
y S Q L d b a s a s e r v i c e
t
O p e n S t a c k
a h a r a
a d
a s a s e r v i c e
t
O p e n S t a c k
u e
a b b i t M Q a s a s e r v i c e
t
O p e n S t a c k
a q a r
i mp l e Q u e u e S e r v i c e
a g n u m
u b e r n e t i e s / C
t a i n e r ma n a g e me n t
a n i l a
h a r e d f i l e s y s t e m ma n a g e me n t
a r b i c a n
e y s t
e ma n a g e me n t
u r a n
p p l i c a t i
c a t a l
f
e a s y t
e p l
O p e n S t a c k " a p p s "
And more coming every day!
Layer 1: Base Compute Infrastructure Layer 2: Extended Infrastructure Layer 3: Optional Enhancements Layer 4: Consumption Services
Nova Glance Keystone Ceilometer Horizon Heat Trove Sahara
Compute Image Bare Metal Networking DNS
Cinder Swift
Object Block Storage Services Compute Services Network Services Identity Telemetry Dashboard Key Management Orchestration Database Hadoop Queues http://hackstack.org/x/blog/2013/09/05/openstack-seven-layer-dip-as-a-service/
Zaqar Barbican
Neutron Designate Ironic
Containers
Magnum Manila
Filesystems