0% found this document useful (0 votes)
119 views

Working With Openstack-Queens On Ubutnu18.04-V1.0

This document provides instructions for installing and configuring OpenStack Queens on Ubuntu 18.04 LTS. It describes installing and configuring chrony, MariaDB, RabbitMQ, Memcached, Keystone, Glance, Nova, and creating a virtual bridge interface. Key steps include creating databases and users, configuring services, installing packages, editing configuration files, initializing services, and adding images.

Uploaded by

Badi Ul Zaman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
119 views

Working With Openstack-Queens On Ubutnu18.04-V1.0

This document provides instructions for installing and configuring OpenStack Queens on Ubuntu 18.04 LTS. It describes installing and configuring chrony, MariaDB, RabbitMQ, Memcached, Keystone, Glance, Nova, and creating a virtual bridge interface. Key steps include creating databases and users, configuring services, installing packages, editing configuration files, initializing services, and adding images.

Uploaded by

Badi Ul Zaman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Installing and configuring openstack queens on Ubuntu 18.0.

4 LTS

Install and Configure chrony

apt update

apt -y install chrony vim

systemctl enable --now chrony

chronyc sources list -v

Install and configure MariaDB server

apt -y install mariadb-server


mysql_secure_installation
mysql -u root -p
exit

Install RabbitMQ and Memcached

apt-get -y install rabbitmq-server memcached python-pymysql

Create openstack user with a password (redhat dont use in production)

rabbitmqctl add_user openstack redhat

Setup necessary permissions for user openstack

rabbitmqctl set_permissions openstack ".*" ".*" ".*"

Restart rabbitmq-server service

systemctl restart rabbitmq-server

Update mariadb server to listen on all ipv4 addresses and make character set changes
accordingly

vim /etc/mysql/mariadb.conf.d/50-server.cnf

# On Line Number 29 Change as below

bind-address = 0.0.0.0
# On Line Number 111 Change as below
character-set-server = utf8
# Comment Line below
#kcollation-server = utf8mb4_general_ci

Restart mariadb so changes can affect

systemctl restart mariadb

Update memcached conf to listen on all ipv4 addeses

vim /etc/memcached.conf

# On Line Number 35 change as below

-l 0.0.0.0

Restart memcache Daemon so changes can affect

systemctl restart memcached.service

Install and Configure OpenStack Identity Service Keystone

Create a database and user with necessary permissions

mysql -u root -p

create database keystone ;

grant all privileges on keystone.* to keystone@'localhost' identified by 'redhat';

grant all privileges on keystone.* to keystone@'%' identified by 'redhat';

flush privileges;

exit

Install Keystone

apt -y install keystone python-openstackclient apache2 libapache2-mod-wsgi python-oauth2client

vim /etc/keystone/keystone.conf
#On Line number 606 add your server ip with below information
memcache_servers = 192.168.122.210:11211
#On Line number 740 add connection details
connection = mysql+pymysql://keystone:[email protected]/keystone
#On Line number 2896 after [token] add connection details
provider = fernet

Sync keystone db and connection info

su -s /bin/bash keystone -c "keystone-manage db_sync"

if echo $? output 0 then you are good to move forward

Open new terminal and monitor keystone log

sudo tail -f /var/log/keystone/keystone-manage.log

Initialize Fernet key

keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone


keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

Define 192.168.122.210 and keystone controller host

export controller=192.168.122.210
echo $controller
ping -c4 $controller

keystone bootstrap (set any complexed password for production but here we are using redhat

keystone-manage bootstrap --bootstrap-password redhat \


--bootstrap-admin-url http://$controller:5000/v3/ \
--bootstrap-internal-url http://$controller:5000/v3/ \
--bootstrap-public-url http://$controller:5000/v3/ \
--bootstrap-region-id RegionOne

Configure Apache httpd.

vim /etc/apache2/apache2.conf

#On Line Number 70 add ServerName

ServerName ubuntukvm.example.com

Update hosts file

vim /etc/hosts
192.168.122.210 ubuntukvm.example.com ubuntukvm
curl http://ubuntukvm.example.com

Restart apache

systemctl restart apache2

Setup environment RC file for admin user and setup bash profile

vim ~/keystonerc

export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=redhat
export OS_AUTH_URL=http://192.168.122.210:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
export PS1='\u@\h \W(keystone-admin)\$ '

chmod 600 -v ~/keystonerc


chown devops. /home/devops/keystonerc
source ~/keystonerc

set | grep ^OS

echo "source ~/keystonerc " >> ~/.bash_profile

Add Necessary Projects

Add service project

openstack project create --domain default --description "Service Project" service

Check service project details

openstack project list


openstack project show service

Install and Configure OpenStack Image Service (Glance)

Add users and others for Glance in Keystone.

openstack user create --domain default --project service --password redhat glance
Add glance user in admin role

openstack role add --project service --user glance admin

Add service entry for glance

openstack service create --name glance --description "OpenStack Image service" image

Define 192.168.122.210 and keystone controller host as previos change is not persistent need to
add in .bashrc

export controller=192.168.122.210

echo $controller

Add endpoint for glance (public)

openstack endpoint create --region RegionOne image public http://$controller:9292

Add endpoint for glance (internal)

openstack endpoint create --region RegionOne image internal http://$controller:9292

Add endpoint for glance (admin)

openstack endpoint create --region RegionOne image admin http://$controller:9292

Add a User and Database on MariaDB for Glance.

mysql -u root -p

create database glance;

grant all privileges on glance.* to glance@'localhost' identified by 'redhat';


grant all privileges on glance.* to glance@'%' identified by 'redhat';

flush privileges;
exit

Install glance packages


apt -y install glance

Configure Glance

mv /etc/glance/glance-api.conf /etc/glance/glance-api.conf.org

vim /etc/glance/glance-api.conf

[DEFAULT]
bind_host = 0.0.0.0

[glance_store]
default_store = file
filesystem_store_datadir = /var/lib/glance/images/

[database]
# MariaDB connection info
connection = mysql+pymysql://glance:[email protected]/glance

# Keystone auth info


[keystone_authtoken]
www_authenticate_uri = http://192.168.122.210:5000
auth_url = http://192.168.122.210:5000
memcached_servers = 192.168.122.210:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = redhat

[paste_deploy]
flavor = keystone

Configure glance registry and api

mv /etc/glance/glance-registry.conf /etc/glance/glance-registry.conf.org

vim /etc/glance/glance-registry.conf

[DEFAULT]
bind_host = 0.0.0.0

[database]
# MariaDB connection info
connection = mysql+pymysql://glance:[email protected]/glance

# Keystone auth info


[keystone_authtoken]
www_authenticate_uri = http://192.168.122.210:5000
auth_url = http://192.168.122.210:5000
memcached_servers = 192.168.122.210:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = redhat

[paste_deploy]
flavor = keystone

chmod -v 644 /etc/glance/glance-api.conf /etc/glance/glance-registry.conf

chown -v glance. /etc/glance/glance-api.conf /etc/glance/glance-registry.conf

Synce glance db

su -s /bin/bash glance -c "glance-manage db_sync"

Restart glance api and registry serivce

systemctl restart glance-api.service glance-registry.service

Install kvm packages required

apt -y install qemu-kvm libvirt-bin virtinst bridge-utils libosinfo-bin libguestfs-tools virt-top

modprobe vhost_net

lsmod | grep vhost

echo vhost_net >> /etc/modules


Setup yaml .vimrc

vim /home/stack/.vimrc
se nu ts=2 st=2 et ai
Create a Bridge Interface br0
Check for existing yaml configuration and edit instead
vim /etc/netplan/00-installer-config.yaml

network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: false
dhcp6: false
bridges:
br0:
interfaces: [ens3]
dhcp4: no
addresses: [192.168.122.210/24]
gateway4: 192.168.122.1
nameservers:
addresses: [192.168.122.1]
parameters:
stp: true
forward-delay: 4
dhcp6: false
dhcp4: false

Reboot server for changes

systemctl reboot

Add Virtual Machine images to Glance.


Download ubuntu 18 cloud image

wget -c https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img

mkdir /var/kvm/images -p
cd /root
mv -v bionic-server-cloudimg-amd64.img /var/kvm/images/ubuntu1804.img

openstack image create "Ubuntu1804" --file /var/kvm/images/ubuntu1804.img --disk-format qcow2 --


container-format bare --public

Check for images available

openstack image list


openstack image show Ubuntu1804

Install and Configure OpenStack Compute Service (Nova).

Add nova user (set in service project)

openstack user create --domain default --project service --password redhat nova

Add nova user in admin role

openstack role add --project service --user nova admin

Add placement user (set in service project)

openstack user create --domain default --project service --password redhat placement

Add placement user in admin role

openstack role add --project service --user placement admin

Add service entry for nova

openstack service create --name nova --description "OpenStack Compute service" compute

Add service entry for placement

openstack service create --name placement --description "OpenStack Compute Placement service"
placement

Define 192.168.122.210 and keystone controller host

export controller=192.168.122.210
echo $controller

Add endpoint for nova (public)

openstack endpoint create --region RegionOne compute public http://$controller:8774/v2.1/%\


(tenant_id\)s

Add endpoint for nova (internal)

openstack endpoint create --region RegionOne compute internal http://$controller:8774/v2.1/%\


(tenant_id\)s

Add endpoint for nova (admin)


openstack endpoint create --region RegionOne compute admin http://$controller:8774/v2.1/%\
(tenant_id\)s

Add endpoint for placement (public)

openstack endpoint create --region RegionOne placement public http://$controller:8778

Add endpoint for placement (internal)

openstack endpoint create --region RegionOne placement internal http://$controller:8778

Add endpoint for placement (admin)

openstack endpoint create --region RegionOne placement admin http://$controller:8778

Add a User and Database on MariaDB for Nova.

mysql -u root -p

create database nova;

grant all privileges on nova.* to nova@'localhost' identified by 'redhat';

grant all privileges on nova.* to nova@'%' identified by 'redhat';

create database nova_api;

grant all privileges on nova_api.* to nova@'localhost' identified by 'redhat';

grant all privileges on nova_api.* to nova@'%' identified by 'redhat';

create database nova_placement;

grant all privileges on nova_placement.* to nova@'localhost' identified by 'redhat';

grant all privileges on nova_placement.* to nova@'%' identified by 'redhat';

create database nova_cell0;

grant all privileges on nova_cell0.* to nova@'localhost' identified by 'redhat';

grant all privileges on nova_cell0.* to nova@'%' identified by 'redhat';

flush privileges;

exit

Install Nova.
apt -y install nova-api nova-placement-api nova-conductor nova-consoleauth nova-scheduler nova-
novncproxy python-novaclient

Configure nova

mv /etc/nova/nova.conf /etc/nova/nova.conf.org
vim /etc/nova/nova.conf

[DEFAULT]
# define own IP
my_ip = 192.168.122.210
state_path = /var/lib/nova
enabled_apis = osapi_compute,metadata
log_dir = /var/log/nova
# RabbitMQ connection info
transport_url = rabbit://openstack:[email protected]

[api]
auth_strategy = keystone

# Glance connection info


[glance]
api_servers = http://192.168.122.210:9292

[oslo_concurrency]
lock_path = $state_path/tmp

# MariaDB connection info


[api_database]
connection = mysql+pymysql://nova:[email protected]/nova_api

[database]
connection = mysql+pymysql://nova:[email protected]/nova

# Keystone auth info


[keystone_authtoken]
www_authenticate_uri = http://192.168.122.210:5000
auth_url = http://192.168.122.210:5000
memcached_servers = 192.168.122.210:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = redhat

[placement]
auth_url = http://192.168.122.210:5000
os_region_name = RegionOne
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = placement
password = redhat

[placement_database]
connection = mysql+pymysql://nova:[email protected]/nova_placement

[wsgi]
api_paste_config = /etc/nova/api-paste.ini

chmod 640 -v /etc/nova/nova.conf


chgrp nova -v /etc/nova/nova.conf

Add Data into Database and start Nova services

su -s /bin/bash nova -c "nova-manage api_db sync"

su -s /bin/bash nova -c "nova-manage cell_v2 map_cell0"

su -s /bin/bash nova -c "nova-manage db sync"

su -s /bin/bash nova -c "nova-manage cell_v2 create_cell --name cell1"

Restart apache

systemctl restart apache2

Restart nova services

systemctl restart nova-api nova-conductor nova-scheduler nova-consoleauth nova-novncproxy

Show Status

openstack compute service list

An unexpected error prevented the server from fulfilling your request. (HTTP 500) (Request-ID: req-
7c3867d9-56de-405e-997d-b345837e7540)

mysql -u keystone -p
Enter password:
ERROR 1040 (08004): Too many connections
mysql -u root -p
use keystone;
select @@max_connections;
set global max_connections = 500;
OR (;;)
vim /etc/mysql/mariadb.conf.d/50-server.cnf

[mysql]

max_connections = 3000

systemctl restart mariadb

apt -y install nova-compute-kvm nova-compute

Configure nova-compute

vim /etc/nova/nova.conf
[vnc]
enabled = True
server_listen = 0.0.0.0
server_proxyclient_address = 192.168.122.210
novncproxy_base_url = http://192.168.122.210:6080/vnc_auto.html

Start Nova Compute service.

systemctl restart nova-compute


systemctl status nova-compute
Discover compute nodes
su -s /bin/bash nova -c "nova-manage cell_v2 discover_hosts"

Show compute status


openstack compute service list

Configure OpenStack Network Service (Neutron).


Add user or service for Neutron on Keystone Server.

Add neutron user (set in service project)


openstack user create --domain default --project service --password redhat neutron
Add neutron user in admin role
openstack role add --project service --user neutron admin
Add service entry for neutron
openstack service create --name neutron --description "OpenStack Networking service" network
Define keystone host
export controller=192.168.122.210
echo $controller
Add endpoint for neutron (public)
openstack endpoint create --region RegionOne network public http://$controller:9696
Add endpoint for neutron (internal)
openstack endpoint create --region RegionOne network internal http://$controller:9696
Add endpoint for neutron (admin)
openstack endpoint create --region RegionOne network admin http://$controller:9696
Add a User and Database on MariaDB for Neutron.
mysql -u root -p

create database neutron_ml2;


grant all privileges on neutron_ml2.* to neutron@'localhost' identified by 'redhat';
grant all privileges on neutron_ml2.* to neutron@'%' identified by 'redhat';
flush privileges;
exit
Configure OpenStack Network Service (Neutron).

Install Neutron services.


apt -y install neutron-server neutron-plugin-ml2 neutron-plugin-linuxbridge-agent neutron-l3-agent
neutron-dhcp-agent neutron-metadata-agent python-neutronclient

Configure Neutron.
mv /etc/neutron/neutron.conf /etc/neutron/neutron.conf.org
vim /etc/neutron/neutron.conf
[DEFAULT]
core_plugin = ml2
service_plugins = router
auth_strategy = keystone
state_path = /var/lib/neutron
dhcp_agent_notification = True
allow_overlapping_ips = True
notify_nova_on_port_status_changes = True
notify_nova_on_port_data_changes = True
# RabbitMQ connection info
transport_url = rabbit://openstack:[email protected]
[agent]
root_helper = sudo /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf

# Keystone auth info


[keystone_authtoken]
www_authenticate_uri = http://192.168.122.210:5000
auth_url = http://192.168.122.210:5000
memcached_servers = 192.168.122.210:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = neutron
password = redhat

# MariaDB connection info


[database]
connection = mysql+pymysql://neutron:[email protected]/neutron_ml2
# Nova connection info
[nova]
auth_url = http://192.168.122.210:5000
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = nova
password = redhat
[oslo_concurrency]
lock_path = $state_path/tmp

chmod -v 640 /etc/neutron/neutron.conf


chgrp -v neutron /etc/neutron/neutron.conf

vim /etc/neutron/l3_agent.ini
#On Line 17: add
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
vim /etc/neutron/dhcp_agent.ini
#On Line 17: add
interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
#On Line 28: uncomment
dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
#On Line 37: uncomment and change
enable_isolated_metadata = true
vim /etc/neutron/metadata_agent.ini
#On Line 22: uncomment and specify Nova API server
nova_metadata_host = 192.168.122.210
#On Line 34: uncomment and specify any secret key you like
metadata_proxy_shared_secret = metadata_secret
#On Line 260: uncomment and specify Memcache Server
memcache_servers = 192.168.122.210:11211

vim /etc/neutron/plugins/ml2/ml2_conf.ini
# On Line 129: add (it's OK with no value for [tenant_network_types] (set later if need))
[ml2]
type_drivers = flat,vlan,vxlan
tenant_network_types =
mechanism_drivers = linuxbridge,l2population
extension_drivers = port_security
# On Line 262: uncomment and add
enable_security_group = True
firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
# On End line: uncomment
enable_ipset = True

vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
#On Line 238: add own IP address
local_ip = 192.168.122.210

vim /etc/nova/nova.conf
# add follows into [DEFAULT] section
use_neutron = True
linuxnet_interface_driver = nova.network.linux_net.LinuxBridgeInterfaceDriver
firewall_driver = nova.virt.firewall.NoopFirewallDriver
vif_plugging_is_fatal = True
vif_plugging_timeout = 300

# add follows to the end : Neutron auth info


# the value of metadata_proxy_shared_secret is the same with the one in metadata_agent.ini
[neutron]
auth_url = http://192.168.122.210:5000
auth_type = password
project_domain_name = default
user_domain_name = default
region_name = RegionOne
project_name = service
username = neutron
password = redhat
service_metadata_proxy = True
metadata_proxy_shared_secret = metadata_secret

Start Neutron services.

ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

su -s /bin/bash neutron -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file


/etc/neutron/plugin.ini upgrade head"

systemctl restart neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent neutron-linuxbridge-


agent
systemctl enable neutron-l3-agent neutron-dhcp-agent neutron-metadata-agent neutron-linuxbridge-
agent

systemctl restart nova-api nova-compute

Show status
openstack network agent list

Configure Networking for Virtual Machine Instances


Configure Neutron services

vim /etc/systemd/network/eno1.network

[Match]
Name=eno1
[Network]
LinkLocalAddressing=no
IPv6AcceptRA=no
systemctl restart systemd-networkd

vim /etc/neutron/plugins/ml2/ml2_conf.ini
# On Line 181: add
[ml2_type_flat]
flat_networks = physnet1

vim /etc/neutron/plugins/ml2/linuxbridge_agent.ini
#On Line 147: add
[linux_bridge]
physical_interface_mappings = physnet1:eno1
#On Line 208: uncomment and change
enable_vxlan = false
systemctl restart neutron-linuxbridge-agent

Create virtual network.


projectID=$(openstack project list | grep service | awk '{print $2}')
openstack network create --project $projectID \
--share --provider-network-type flat --provider-physical-network physnet1 sharednet1

Create subnet [192.168.10.0/24] in [sharednet1]


openstack subnet create subnet1 --network sharednet1 \
--project $projectID --subnet-range 192.168.18.0/24 \
--allocation-pool start=192.168.18.244,end=192.168.18.254 \
--gateway 192.168.18.1 --dns-nameserver 192.168.18.1

Check networks
openstack network list
Check subnet
openstack subnet list

Add Users in keystone who can use Openstack System.

Add project
openstack project create --domain default --description "Hazza Project" hazza

Add user
openstack user create --domain default --project hazza --password redhat hazza
Add role
openstack role create CloudUser
Add user to the role
openstack role add --project hazza --user hazza CloudUser
Add flavor
openstack flavor create --id 0 --vcpus 1 --ram 2048 --disk 10 m1.small

openstack flavor create --id 1 --vcpus 2 --ram 4096 --disk 20 m2


Create and Start Virtual Machine Instance.
Login with a user and create a config for authentication of Keystyone. The username or password
in the config are just the one you added in keystone like here. Next Create and run an instance.
vim ~/keystonerc-hazza
export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=hazza
export OS_USERNAME=hazza
export OS_PASSWORD=redhat
export OS_AUTH_URL=http://192.168.122.210:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2
export PS1='\u@\h \W(keystone-hazza)\$ '
chmod 600 -v ~/keystonerc-hazza
source ~/keystonerc-hazza
echo "source ~/keystonerc-hazza " >> ~/.bash_profile

Show flavor list


openstack flavor list
Show image list
openstack image list
Show network list
openstack network list
Create a security group for instances
openstack security group create secgroup01
openstack security group list

Create a SSH keypair for connecting to instances


ssh-keygen -q -N ""
Add public-key
openstack keypair create --public-key ~/.ssh/id_rsa.pub hazzakey
openstack keypair list
netID=$(openstack network list | grep sharednet1 | awk '{ print $2 }')
echo $netID
Create and boot an instance
openstack server create --flavor m1.small --image Ubuntu1804 --security-group secgroup01 --nic net-
id=$netID --key-name hazzakey Ubuntu_1804 --wait

openstack server list


openstack server list

Configure security settings for the security group you created above to access with SSH and
ICMP.

openstack security group rule create --protocol icmp --ingress secgroup01


openstack security group rule create --protocol tcp --dst-port 22:22 secgroup01
openstack security group rule list

Login to the instance with SSH.

openstack server list

ping 192.168.18.x -c3

ssh [email protected]
exit

Stop instance

openstack server stop Ubuntu_1804

openstack server list

Start instance
openstack server start Ubuntu_1804

openstack server list

openstack console url show Ubuntu_1804

Access to the URL which was displayed by the command above.

Configure OpenStack Dashboard Service (Horizon).

Install Horizon.

apt -y install openstack-dashboard

Configure Horizon.
vim /etc/openstack-dashboard/local_settings.py

#On Line 39 uncomment and add own hostname


ALLOWED_HOSTS = ['ubuntukvm.example.com', 'localhost']
#On Lne 65: uncomment like follows
OPENSTACK_API_VERSIONS = {
# "data-processing": 1.1,
"identity": 3,
"image": 2,
"volume": 2,
"compute": 2,
}

#On Line 76: uncomment and change


OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
#On Line 98: uncomment
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = 'Default'
#On Line 163: change to your own Memcache server
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '192.168.122.210:11211',
},
}

#On Line 190: change to your own Host


OPENSTACK_HOST = "192.168.122.210"
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "_member_"
systemctl restart apache2 memcached

Access to the URL below with web browser.


http://192.168.122.210/horizon/

You might also like