Skip to content

Latest commit

 

History

History
253 lines (181 loc) · 17.2 KB

15.md

File metadata and controls

253 lines (181 loc) · 17.2 KB
date draft weight title
2016-06-12
false
15
15. Mitaka Installation Plan

Mitaka Installation Plan

Here is our new Mitaka lab platform. The online instructions are written for Ubuntu 14.04, but we will use 16.04, hence this effort.

Password name Description
Database password (no variable used) Root password for the database
RABBIT_PASS Password of user guest of RabbitMQ
KEYSTONE_DBPASS Database password of Identity service
DEMO_PASS Password of user demo
ADMIN_PASS Password of user admin
GLANCE_DBPASS Database password for Image Service
GLANCE_PASS Password of Image Service user glance
NOVA_DBPASS Database password for Compute service
NOVA_PASS Password of Compute service user nova
DASH_DBPASS Database password for the dashboard
CINDER_DBPASS Database password for the Block Storage service
CINDER_PASS Password of Block Storage service user cinder
NEUTRON_DBPASS Database password for the Networking service
NEUTRON_PASS Password of Networking service user neutron
HEAT_DBPASS Database password for the Orchestration service
HEAT_PASS Password of Orchestration service user heat
CEILOMETER_DBPASS Database password for the Telemetry service
CEILOMETER_PASS Password of Telemetry service user ceilometer
TROVE_DBPASS Database password of Database service
TROVE_PASS Password of Database Service user trove

Create a common config table like this to centralize variable configuration

Item Variable Value
01 controller-addr 10.3.200.10
02 compute1-addr 10.3.200.21
07 mysql-bind-addr 10.3.200.10
08 MongoDB-smallfile true
09 rabbitmqctl-user openstack
10 ADMIN_TOKEN 11112222333344445555
11 OS_URL http://controller:35357/v3
12 region RegionOne
13 default-domain Default Domain
14 and-so-on and-so-forth

Install OpenStack on Ubuntu 16.04

0. Ansible Setup: All nodes (Item 01 though 06 manually initialized with the following 5 steps

  1. Install ubuntu 16.04

  2. set static IP address in /etc/network/interfaces as in this EXAMPLE (do not cut and paste!!!)

    auto ens160  # <---- WARNING, this name (ens160) will vary, google "predictable network interface names"
    iface ens160 inet static
    address 10.3.0.11
    netmask 255.255.255.0
    gateway 10.3.0.1
    dns-nameservers 192.168.201.80
    
  3. Edit visudo for ansible user ID (ender in my case)

    Create a new user "ender" Assign a strong password as you will only use it ONCE anyhow.

    `sudo adduser ender`  
    
    `sudo visudo`  
    
    # at the very bottom of the file, add this:
    # --------- other stuff up here --------
    ender ALL=(ALL) NOPASSWD: ALL
    
  4. On ender:

    ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host * where remote-host = ipaddr of remote host, and enter the long password from step 2. *

  5. Install python2.7 because Ubuntu 16.04 ships with python3.0 which ansible cannot handle right now

    sudo apt-get install python2.7

Ansible Playbook Development begins here:

01. ENVIRONMENT: All nodes begin with ubuntu 16.04 Warning: Instructions are written for 14.04, so be careful.

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Security - No changes
  • Host networking management: manually configured, use ipaddr from chart and get controller, compute nodes manual ready to become an openstack cloud
  • Host networking Provider: FYI: 10.3.200.0/22 DONE
  • Host name resolution: etc_hosts.yml DONE
  • Network Time Protocol: ntp.yml DONE
  • OpenStack packages; SKIP THIS , not necessay with 16.04 version
  • SQL database - mysql.yml DONE
  • NoSQL database - <--START HERE
  • Message queue - Install as written
  • Memcached - Install as written

02. KEYSTONE(Indentity Service)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install apache and mysql databases as described
  • Create the service entity and API endpoints - OK
  • Create a domain, projects, users, and roles - OK for NOW
  • Verify operation - - OK
  • Create OpenStack client environment scripts - OK

03. GLANCE(Image Service)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install and configure - OK
  • Verify operation - OK

04. Nova(Compute Service):

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install and configure controller node - I expect 16.04 will be a little diferent here
  • Install and configure a compute node - OK
  • Verify operation - OK

05. Neutron (Network Service using Open vSwitch (OVS) and Distributed Virtual Router (DVR) )

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install and configure controller node - OK
  • Install and configure compute node - NOT OK, I want to use OVS with DVR, not linux bridge
  • Verify operation - Lots of testing I think

06. Horizon (Dashboard)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install and configure - OK
  • Verify operation - OK

07. Cinder (Block Storage)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install and configure controller node - OK
  • Install and configure storage node - Use the controller node as the storage node
    • We may use the compute node as a storage node as well.
  • Verify operation - OK

08. Swift (Object Storage)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Object Storage service overview - OK
  • Install and configure the controller node - OK
  • Install and configure the storage nodes Use the controller node as the storage node, also I would consider an NFS mount to tiger
  • Create and distribute initial rings - OK
  • Finalize installation - OK
  • Verify operation - OK

09. Heat (Orchestration Storage)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Object Storage service overview - OK
  • Install and configure the controller node - OK
  • Install and configure the storage nodes Use the controller node as the storage node, also I would consider an NFS mount to tiger
  • Create and distribute initial rings - OK
  • Finalize installation - OK
  • Verify operation - OK

10. Ceilometer (Telemetry)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Install and configure
  • Enable Image service meters
  • Enable Compute service meters
  • Enable Block Storage meters
  • Enable Object Storage meters
  • Alarming service
  • Verify operation

11. Testing (Launch an Instance)

Environment Keystone Glance Nova Neutron Horizon Cinder Swift Heat Ceilometer Test
alt text
01 02 03 04 05 06 07 08 09 10 11
  • Create virtual networks
  • Create m1.nano flavor
  • Generate a key pair
  • Add security group rules
  • Launch an instance
  • Block Storage
  • Orchestration