Top Banner
OpenStack Meetup #3 RDO: Packstack Workshop
47

RDO-Packstack Workshop

Apr 06, 2017

Download

Technology

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: RDO-Packstack Workshop

OpenStack Meetup #3

RDO: Packstack Workshop

Page 2: RDO-Packstack Workshop

Objective

- Install All-In-One OpenStack

Page 3: RDO-Packstack Workshop

Agenda

- Install Workshop Software- Setup Environment- Introduction to RDO- Introduction to Packstack- Workshop: Prepare VirtualBox- Workshop: Deploy OpenStack with Packstack

Page 4: RDO-Packstack Workshop

Install Workshop Software

- Install VirtualBox - Install Vagrant- Download VirtualBox image (with vagrant)

# vargrant box add centos/7

Page 5: RDO-Packstack Workshop

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

Page 6: RDO-Packstack Workshop

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/

Page 7: RDO-Packstack Workshop

RDO (RPM Distribution of OpenStack)

“... community-supported distribution of

OpenStack that runs on Red Hat Enterprise Linux

(RHEL) and its derivatives”

Page 8: RDO-Packstack Workshop

RDO (RPM Distribution of OpenStack)

“... community of users of cloud computing platform on Red Hat-based operating systems to get help and compare notes

on running OpenStack.”

Page 9: RDO-Packstack Workshop
Page 10: RDO-Packstack Workshop

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.

Page 11: RDO-Packstack Workshop

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

Page 12: RDO-Packstack Workshop

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.

Page 13: RDO-Packstack Workshop

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

Page 14: RDO-Packstack Workshop

Packstack

“... is a utility that uses Puppet modules to deploy various

parts of OpenStack on multiple pre-installed servers over SSH

automatically. “

© 2013 Sandro Mathys // Dedicated to the Public Domain // http://creativecommons.org/publicdomain/zero/1.0/

Page 15: RDO-Packstack Workshop

Packstack

“... is a utility that uses Puppet modules to deploy various

parts of OpenStack on multiple pre-installed servers over SSH automatically. “

© 2013 Sandro Mathys // Dedicated to the Public Domain // http://creativecommons.org/publicdomain/zero/1.0/

Page 16: RDO-Packstack Workshop

Packstack

Packstack currently only CentOS, Red Hat Enterprise Linux (RHEL) and compatible derivatives of both are supported.

Page 17: RDO-Packstack Workshop

Workshop: Prepare VirtualBox

- Get VagrantFile from “https://github.com/thamrongtawal/Openstack-Meetup-3-Vagrant”

- Vagrant up- Vagrant ssh

Page 18: RDO-Packstack Workshop

Packstack Requirements

- CentOS 7 (X86_64)- Repositories

- Base- Extras

- Hardware- 6+ GB RAM- 1 NIC- Virtualization enabled

- Network- Prefer Static IP

Page 19: RDO-Packstack Workshop

Workshop: Install Packstack

- Install Repo & Update OS

- Configure services

- Restart OS

# yum install -y centos-release-openstack-newton# yum update -y

# systemctl disable NetworkManager# systemctl disable firewalld# systemctl enable network

# reboot

Page 20: RDO-Packstack Workshop

Workshop: Install Packstack

- Install “packstack”

- Generate packstack answer file

# yum install -y openstack-packstack# yum install -y openstack-utils

# packstack --gen-answer-file=/root/answer.txt

Page 21: RDO-Packstack Workshop

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

Page 22: RDO-Packstack Workshop

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

Page 23: RDO-Packstack Workshop

Openstack Diagram ?

Page 24: RDO-Packstack Workshop
Page 25: RDO-Packstack Workshop

Summary: Install Packstack

Steps:

- Install openstack repository- Update OS- Generate answer file- Change parameters in answer file- Install openstack from answer file

Page 26: RDO-Packstack Workshop

Post-installation Tasks: Update vswitch interface

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0TYPE=OVSPortDEVICETYPE=ovsOVS_BRIDGE=br-exONBOOT=yes

# vi /etc/sysconfig/network-scripts/ifcfg-br-ex

DEVICE=br-exTYPE=OVSBridgeDEVICETYPE=ovsBOOTPROTO=staticIPADDR=###.###.###.###NETMASK=255.255.255.0GATEWAY=###.###.###.###DNS1=8.8.8.8ONBOOT=yes

Page 27: RDO-Packstack Workshop

Post-installation Tasks:Restart network

# systemctl restart network

Page 28: RDO-Packstack Workshop

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

Page 29: RDO-Packstack Workshop

Post-installation Tasks (for workshop only)

- Update Horizon url

- Add “ServerAlias” (line: 30)

- Restart httpd service

# vi /etc/httpd/conf.d/15-horizon_vhost.conf

ServerAlias ###.###.###.#

systemctl restart httpd.service

Page 30: RDO-Packstack Workshop

Verify Installation

- Verify Environment- Create Flavors- Create Project/User- Create environment file for Project/User- Create Image- Create Key Pair- Create Security Group- Create Network / Subnet #1- Launch Instance- Create Network / Subnet #2

Page 31: RDO-Packstack Workshop

Verify Environment

# vi ~/keystonerc_admin

# source ~/keystonerc_admin

# openstack user list

# openstack-service status

Test login from browser

http://<hostname or IP address>

Page 32: RDO-Packstack Workshop

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

Page 33: RDO-Packstack Workshop

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 !!

Page 34: RDO-Packstack Workshop

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=meetupexport OS_REGION_NAME=RegionOne

Page 35: RDO-Packstack Workshop

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

Page 36: RDO-Packstack Workshop

Create Keypair

# source ~/keystonerc_user1

# openstack keypair list

# openstack keypair create SecureKey > /root/securekey.pem

# chmod 600 /root/securekey.pem

Page 37: RDO-Packstack Workshop

Create Security Group

# source ~/keystonerc_user1

# openstack security group list

# openstack security group rule list default

# openstack security group create secgroup1 --description "Meetup group"

# openstack security group rule create --protocol tcp --dst-port 80:80 --src-ip 0.0.0.0/0 secgroup1

# openstack security group rule create --protocol tcp --dst-port 22:22 --src-ip 0.0.0.0/0 secgroup1

Page 38: RDO-Packstack Workshop

Create Network / Subnet #1

# source ~/keystonerc_user1

# openstack network list

# openstack network create net2

# openstack subnet create subnet2 --network net2 --subnet-range 10.10.11.0/24

# openstack router create router1

# openstack router add subnet router1 subnet2

Page 39: RDO-Packstack Workshop

Launch Instance

# source ~/keystonerc_user1

# openstack server list

# openstack network list

# openstack server create --flavor m1.nano --image cirros --key-name SecureKey --security-group secgroup1 --nic net-id=<net-uuid> meeting1

Page 40: RDO-Packstack Workshop

Verify Instance

Using browser to verify instance

crudini --set /etc/nova/nova.conf vnc novncproxy_base_url http://###.###.###.###:6080/vnc_auto.html

# openstack-service restart

Page 41: RDO-Packstack Workshop

Create Network / Subnet #2

# source ~/keystonerc_user1

# openstack network list

# openstack network create --external --provider-network-type flat --provider-physical-network physnet1 net1

# openstack subnet create subnet1 --network net1 --no-dhcp --subnet-range 192.168.##.0/24 --allocation-pool start=192.168.##.30,end=192.168.##.50

Page 42: RDO-Packstack Workshop

Create External router

# source ~/keystonerc_user1

# openstack router create ext-router

# neutron router-gateway-set ext-router net1

# openstack router add subnet ext-router subnet2

Using browser to delete “router1” router

Page 43: RDO-Packstack Workshop

Create floating IP

# source ~/keystonerc_user1

# openstack floating ip list

# openstack floating ip create net1

Page 44: RDO-Packstack Workshop

Associate floating IP

# source ~/keystonerc_user1

# openstack floating ip list

# openstack server list

# openstack server add floating ip meeting1 ###.###.###.###

Page 45: RDO-Packstack Workshop

Verify Instance

# ssh -i /root/securekey.pem cirros@<floating IP>

Page 46: RDO-Packstack Workshop

What’s Next

- Attach volume (Cinder) to instance.- https://docs.openstack.org/user-guide/dashboard-manage-volumes.html

- Add more coumpute node into PoC.- https://www.rdoproject.org/install/adding-a-compute-node/

- Read manuals- https://docs.openstack.org/ - https://www.rdoproject.org/documentation/

Page 47: RDO-Packstack Workshop

Tear Down

- What’s next workshop topic?- Comments / Feedbacks - Q/A