This document summarizes an OpenStack meetup where attendees installed OpenStack using Packstack on a single node. The agenda covered installing VirtualBox and Vagrant, generating an answer file for Packstack, deploying OpenStack, and verifying the installation by creating flavors, images, networks and launching an instance. Post-installation tasks included configuring networking and the Horizon dashboard. Attendees were guided through the basic operations for a simple proof-of-concept OpenStack deployment on a single node.
5. Setup Environment
1. Create working directory
2. Create testing Vagrantfile
$ mkdir ~/OpenStackMeetUp
$ cd ~/OpenStackMeetUP
$ vagrant init centos/7
$ vagrant up
$ vagrant ssh base
$ vagrant destroy -f
6. OpenStack
- Open Source Cloud Computing Software
- Software to control your cloud
- Open source software for creating private and public clouds
- One of the fastest growing open source community in the world
https://www.openstack.org/
7. RDO (RPM Distribution of OpenStack)
“... community-supporteddistribution of
OpenStack that runs onRed Hat Enterprise Linux
(RHEL) and its derivatives”
8. RDO (RPM Distribution of OpenStack)
“... community of usersof cloud computing platform on
Red Hat-basedoperating systems to get help and compare notes
on running OpenStack.”
9.
10. OpenStack Components in RDO (Newton)
- Keystone: authentication, authorization and service discovery mechanisms
- Glance: services for discovering, registering, and retrieving virtual machine
images.
- Cinder: implement services and libraries to provide on demand, self-service
access to Block Storage resources.
- Swift: distributed object storage system designed to scale from a single
machine to thousands of servers.
- Nova: provides a cloud computing fabric controller, supporting a wide
variety of virtualization technologies, including KVM, Xen, LXC, VMware, and
more.
11. OpenStack Components in RDO (Newton)
- Neutron: virtual network service for Openstack.
- Heat: service to orchestrate multiple composite cloud applications using
templates, through both an OpenStack-native ReST API and a
CloudFormation-compatible Query API.
- Ceilometer: project aims to become the infrastructure to collect
measurements within OpenStack
- Gnocchi: project name of a TDBaaS (Time Series Database as a Service)
project started under the Ceilometer program umbrella.
- Horizon: Django-based project aimed at providing a complete OpenStack
Dashboard
12. OpenStack Components in RDO (Newton)
- Ironic: integrated OpenStack project which aims to provision bare metal
machines instead of virtual machines.
- Trove: Database as a Service for OpenStack.
- Sahara: aims to provide users with simple means to provision a Hadoop
cluster.
- Tempest: set of integration tests to be run against a live OpenStack cluster.
- Manila: shared filesystem management project for OpenStack.
- Designate: OpenStack inspired DNSaaS.
13. Installation Method
RDO:
- Packstack
- For PoC Environments
- Using Puppet modules to deploy OpenStack
- TripleO (Next workshop? Please voted)
- For Production Environments
- Provision bare-metal machines then deploy production cloud environments
- Undercloud → → Overclound
21. Workshop: Install Packstack
- Update packstack answer file
# crudini --set /root/answer.txt general CONFIG_SWIFT_INSTALL n
# crudini --set /root/answer.txt general CONFIG_HEAT_INSTALL n
# crudini --set /root/answer.txt general CONFIG_CEILOMETER_INSTALL n
# crudini --set /root/answer.txt general CONFIG_AODH_INSTALL n
# crudini --set /root/answer.txt general CONFIG_GNOCCHI_INSTALL n
# crudini --set /root/answer.txt general CONFIG_NAGIOS_INSTALL n
# crudini --set /root/answer.txt general CONFIG_KEYSTONE_ADMIN_PW password
# crudini --set /root/answer.txt general CONFIG_NTP_SERVERS 2.th.pool.ntp.org
# crudini --set /root/answer.txt general CONFIG_PROVISION_DEMO n
# crudini --set /root/answer.txt general CONFIG_NEUTRON_ML2_TYPE_DRIVERS vxlan,flat
# crudini --set /root/answer.txt general CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS physnet1:br-ex
# crudini --set /root/answer.txt general CONFIG_NEUTRON_L3_EXT_BRIDGE
22. Workshop: Install Packstack
- Install Openstack with packstack
- Tips:
- Using “screen” for prevent hangup terminal
- Using “time” to get installation time (useful for next installation)
# packstack --answer-file=/root/answer.txt
28. Post-installation Tasks (for workshop only)
- Update “openstack-status” script
- Change line: 267 from “keystone user list” to
# vi /bin/openstack-status
openstack user list
31. Verify Environment
# vi ~/keystonerc_admin
# source ~/keystonerc_admin
# openstack user list
# openstack-service status
Test login from browser
http://<hostname or IP address>
32. Create Project/User
# openstack project list
# openstack project create --description "Meetup Project" meetup
# openstack user list
# openstack user create --project meetup --password Password1 user1
# openstack role list
# openstack role add --user user1 --project meetup admin
33. Create Flavors
# openstack flavor list
# openstack help flavor create
# openstack flavor create --public m1.nano --id auto --ram 256 --disk 1 --vcpus 1
Admin only tasks !!
34. Create environment file for new project/user
# cp ~/keystonerc_admin ~/keystonerc_user1
# source ~/keystonerc_user1
# openstack project list
# vi ~/keystonerc_user1
unset OS_SERVICE_TOKEN
export OS_USERNAME=user1
export OS_PASSWORD=Password1
export OS_AUTH_URL=http://192.168.0.101:5000/v2.0
export PS1='[u@h W(keystone_user1)]$ '
export OS_TENANT_NAME=meetup
export OS_REGION_NAME=RegionOne
35. Create Image
# source ~/keystonerc_user1
# openstack image list
# wget -c http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img
# openstack image create --disk-format qcow2 --container-format bare --public --file
./cirros-0.3.4-x86_64-disk.img cirros
# openstack image list
43. Create floating IP
# source ~/keystonerc_user1
# openstack floating ip list
# openstack floating ip create net1
44. Associate floating IP
# source ~/keystonerc_user1
# openstack floating ip list
# openstack server list
# openstack server add floating ip meeting1 ###.###.###.###