Skip to content

PackStack Quick Start

Henryk Paluch edited this page Dec 16, 2020 · 10 revisions

PackStack Quick Start

PackStack (formerly known as RDO) is quick installation for OpenStack provided by RedHat

Setup

  • VM under Proxmox VE 6, 6GB of RAM, 2x core, 12GB disk space
  • Tested VM OS (where PackStack is installed): CentOS Linux release 7

WARNING! I don't recommend using CentOS 8 for these two reasons:

I strongly recommend this (very good indeed!) guide as starting point:

However I rather used this one which allows access from existing network:

I just additionally enabled Heat (provisioning), Pointed cinder to dedicated volume group stack-vg, disabled Swift (S3 like service), disabled Ceilometer (Performance monitoring). You can see my latest setup script here:

There is manual demo user setup on above page - I automated part (!) of setup here:

Notes:

  • out of the box the demo user/vm can access Internet, thanks to provided NAT.
  • However if you need to access VM from your physical network you need to:
    • create floating IP address on pool external_network (say 192.168.0.39 in my example)

    • associate it with running instance

    • you can directly access your demo (cirros-1 from my setup_demo.sh script) running instance using Floating IP address (for example SSH to 192.168.0.39 in my example):

      # key demo_kp.pem was created in HOME directory
      #  by `setup_demo.sh` script on your PackStack server
      ssh -i demo_kp.pem cirros@192.168.0.39

Issues

After bare metal install (8GB RAM, AMD X-2 dual-core) of Train release I noticed very bad performance. When user demou issued this trivial command it took around 8 seconds:

time openstack server list
# or nice --timing parameter
# from https://ask.openstack.org/en/question/99737/2-second-delay-on-openstack-api/
time openstack server list --timing

I just tried this command to verify that keystone caching is not enabled:

$ sudo keystone-manage doctor

WARNING: `keystone.conf [cache] enabled` is not enabled.

    Caching greatly improves the performance of keystone, and it is highly
    recommended that you enable it.

I verified that memcached is already installed and running:

$ ps ax | grep memcached

 1338 ?        Ssl    0:01 /usr/bin/memcached -p 11211 -u memcached -m 797 -c 8192 -l 0.0.0.0 -U 11211 -t 2 >> /var/log/memcached.log 2>&1
11571 pts/0    R+     0:00 grep --color=auto memcached

And tested with telnet:

$ sudo yum install telnet
$  telnet localhost 11211

...
Connected to localhost.^M
Escape character is '^]'.^M
stats
STAT pid 1338
STAT uptime 3891
STAT time 1608026790
...
END
quit

So I followed this page https://docs.openstack.org/keystone/latest/admin/configuration.html#configure-the-memcached-back-end-example to enable Memcached backend for Keystone - I changed file /etc/keystone/keystone.conf:

diff -u /etc/keystone/keystone.conf{.orig,}
--- /etc/keystone/keystone.conf.orig	2020-12-15 10:21:06.069000000 +0100
+++ /etc/keystone/keystone.conf	2020-12-15 11:06:58.117000000 +0100
@@ -374,6 +374,10 @@
 
 
 [cache]
+# from https://docs.openstack.org/keystone/latest/admin/configuration.html#configure-the-memcached-back-end-example
+enabled = true
+backend = dogpile.cache.memcached
+backend_argument = url:127.0.0.1:11211
 
 #
 # From oslo.cache

And then restarted keystone (it is actually Python module run in Apache process):

sudo systemctl restart httpd

When I tried again time openstack server list I got a bit better response - around 5 seconds.

Hmm a bit better but still quite bad.

Also note that Idle system (no running instance and no active commands) causes load average around 1.0

Resources

Last RedHat guide for Manual OpenStack installation - very useful if want to know how OpenStack works:

Clone this wiki locally