Remove compose from documenation
Receive several quickstart related questions every day. Make a first pass at cleaning up our documentation to point people in the right direction. While we are about it remove compose related bits. Anything in the compose directory will remain as a reference implementation for how to implement the compose files to work well with our container content. Change-Id: I9e832e97ac2bacca8eab7e1bfbd82664d2b191b8 Closes-Bug: #1485163 Paritally-Implements: blueprint remove-config-internal
This commit is contained in:
parent
d4d40b9d9f
commit
6efe57e9eb
@ -1,11 +1,14 @@
|
||||
# Developer Environment
|
||||
|
||||
If you are developing Kolla on an existing OpenStack cloud
|
||||
that supports Heat, then follow the Heat template [README][].
|
||||
Otherwise, follow the instructions below to manually create
|
||||
your Kolla development environment.
|
||||
If you are developing Kolla on an existing OpenStack cloud that supports
|
||||
Heat, then follow the Heat template [README][]. Another option available
|
||||
on systems with VirutalBox is the use of [Vagrant][].
|
||||
|
||||
The best experience is available with bare metal deployment by following
|
||||
the instructions below to manually create your Kolla deployment.
|
||||
|
||||
[README]: https://github.com/stackforge/kolla/blob/master/devenv/README.md
|
||||
[Vagrant]: https://github.com/stackforge/kolla/blob/master/docs/vagrant.md
|
||||
|
||||
## Installing Dependencies
|
||||
|
||||
@ -14,21 +17,18 @@ modules with the .xz compressed format. The guestfs system cannot read
|
||||
these images because a dependent package supermin in CentOS needs to be
|
||||
updated to add .xz compressed format support.
|
||||
|
||||
In order to run Kolla, it is mandatory to run a version of `docker-compose`
|
||||
that includes pid: host support. Support was added in version 1.3.0 and is
|
||||
specified in the requirements.txt. To install this and other potential future
|
||||
dependencies:
|
||||
To install Kolla depenedencies use:
|
||||
|
||||
git clone http://github.com/stackforge/kolla
|
||||
cd kolla
|
||||
sudo pip install -r requirements.txt
|
||||
|
||||
In order to run Kolla, it is mandatory to run a version of `docker` that is
|
||||
1.6.0 or later. Docker 1.5.0 has a defect in `--pid=host` support where the
|
||||
libvirt container cannot be stopped and crashes nova-compute on start.
|
||||
1.7.0 or later.
|
||||
|
||||
For most systems you can install the latest stable version of Docker with the
|
||||
following command:
|
||||
|
||||
curl -sSL https://get.docker.io | bash
|
||||
|
||||
For Ubuntu based systems, do not use AUFS when starting Docker daemon unless
|
||||
@ -46,71 +46,31 @@ running at a time.
|
||||
|
||||
service libvirtd stop
|
||||
|
||||
The basic starting environment will be created using `docker-compose`.
|
||||
The basic starting environment will be created using `ansible`.
|
||||
This environment will start up the OpenStack services listed in the
|
||||
compose directory.
|
||||
inventory file.
|
||||
|
||||
## Starting Kolla
|
||||
|
||||
To start, setup your environment variables.
|
||||
Configure Ansible by reading the Kolla Ansible configuration documentation
|
||||
[DEPLOY][].
|
||||
|
||||
$ cd kolla
|
||||
$ ./tools/genenv
|
||||
|
||||
The `genenv` script will create a compose/openstack.env file
|
||||
and an openrc file in your current directory. The openstack.env
|
||||
file contains all of your initialized environment variables, which
|
||||
you can edit for a different setup.
|
||||
|
||||
A mandatory step is customizing the FLAT_INTERFACE network interface
|
||||
environment variable. The variable defaults to eth1. In some cases, the
|
||||
second interface in a system may not be eth1, but a unique name. For
|
||||
example with an Intel driver, the interface is enp1s0. The interface name
|
||||
can be determined by executing the ifconfig tool. The second interface must
|
||||
be a real interface, not a virtual interface. Make certain to store the
|
||||
interface name in `compose/openstack.env`:
|
||||
|
||||
NEUTRON_FLAT_NETWORK_INTERFACE=enp1s0
|
||||
FLAT_INTERFACE=enp1s0
|
||||
[DEPLOY]: https://github.com/stackforge/kolla/blob/master/docs/ansible-deployment.md
|
||||
|
||||
Next, run the start command:
|
||||
|
||||
$ sudo ./tools/kolla-compose start
|
||||
$ sudo ./tools/kolla-ansible deploy
|
||||
|
||||
Finally, run the status command:
|
||||
|
||||
$ sudo ./tools/kolla-compose status
|
||||
|
||||
This will display information about all Kolla containers.
|
||||
A bare metal system takes three minutes to deploy AIO. A virtual machine
|
||||
takes five minutes to deploy AIO. These are estimates; your hardware may
|
||||
be faster or slower but should near these results.
|
||||
|
||||
## Debugging Kolla
|
||||
|
||||
All Docker commands should be run from the directory of the Docker binary,
|
||||
by default this is `/`.
|
||||
|
||||
The `start` command to Kolla is responsible for starting the containers
|
||||
using `docker-compose -f <service-container> up -d`.
|
||||
|
||||
If you want to start a container set by hand use this template:
|
||||
|
||||
$ docker-compose -f glance-api-registry.yml up -d
|
||||
|
||||
|
||||
You can determine a container's status by executing:
|
||||
|
||||
$ sudo ./docker ps -a
|
||||
$ sudo docker ps -a
|
||||
|
||||
If any of the containers exited you can check the logs by executing:
|
||||
|
||||
$ sudo ./docker logs <container-id>
|
||||
$ docker-compose logs <container-id>
|
||||
|
||||
If you want to start a individual service like `glance-api` manually, use
|
||||
this template. This is a good method to test and troubleshoot an individual
|
||||
container. Note some containers require special options. Reference the
|
||||
compose yml specification for more details:
|
||||
|
||||
$ sudo ./docker run --name glance-api -d \
|
||||
--net=host \
|
||||
--env-file=compose/openstack.env \
|
||||
kollaglue/fedora-rdo-glance-api:latest
|
||||
$ sudo docker logs <container-name>
|
||||
|
686
tools/genenv
686
tools/genenv
@ -1,686 +0,0 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This script generates a minimal set of environment variables to allow
|
||||
# the openstack containers to operate. It is creating a configuration
|
||||
# suitable for an all-in-one installation of openstack.
|
||||
#
|
||||
# It also creates a suitable 'openrc' for use with the installed system.
|
||||
|
||||
function check_binarydependencies {
|
||||
local binaries="openssl"
|
||||
local missingbinaries=""
|
||||
local space=""
|
||||
|
||||
for bin in $binaries; do
|
||||
if [[ ! $(type -t $bin) ]]; then
|
||||
missingbinaries+=${space}$bin
|
||||
space=" "
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -n "$missingbinaries" ]; then
|
||||
echo Missing dependencies: $missingbinaries
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
check_binarydependencies
|
||||
|
||||
# Move to top level directory
|
||||
REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
|
||||
cd "$(dirname "$REAL_PATH")/.."
|
||||
|
||||
MY_IP=${MY_IP:-$(ip route get $(ip route | awk '$1 == "default" {print $3}') |
|
||||
awk '$4 == "src" {print $5}')}
|
||||
|
||||
MY_DEV=${MY_DEV:-$(ip route get $(ip route | awk '$1 == "default" {print $3}') |
|
||||
awk '$4 == "src" {print $3}')}
|
||||
|
||||
echo MY_IP=$MY_IP
|
||||
echo MY_DEV=$MY_DEV
|
||||
|
||||
# API versions
|
||||
CINDER_API_VERSION=2
|
||||
|
||||
# Admin user
|
||||
ADMIN_USER=admin
|
||||
ADMIN_USER_PASSWORD=steakfordinner
|
||||
|
||||
# Database
|
||||
BIND_ADDRESS=$PUBLIC_IP
|
||||
CHAR_SET_SERVER=utf8
|
||||
COLLATION_SERVER=utf8_general_ci
|
||||
DATADIR=/var/lib/mysql
|
||||
DEFAULT_STORAGE_ENGINE=innodb
|
||||
HOST_IP=$MY_IP
|
||||
INIT_CINDER_DB=true
|
||||
INIT_CONNECT="SET NAMES utf8"
|
||||
INIT_DESIGNATE_DB=true
|
||||
INIT_GLANCE_DB=true
|
||||
INIT_MURANO_DB=true
|
||||
INIT_HEAT_DB=true
|
||||
INIT_KEYSTONE_DB=true
|
||||
INIT_NOVA_DB=true
|
||||
INNODB_FILE_PER_TABLE=true
|
||||
MARIADB_MAX_CONNECTIONS=151
|
||||
MARIADB_SERVICE_PORT=3306
|
||||
MONGODB_SERVICE_PORT=27017
|
||||
MARIADB_ROOT_PASSWORD=kolla
|
||||
PASSWORD=12345
|
||||
TEMP_FILE=/tmp/mysql-first-time.sql
|
||||
|
||||
# Galera
|
||||
DB_CLUSTER_BIND_ADDRESS=0.0.0.0
|
||||
DB_CLUSTER_INIT_DB=false
|
||||
DB_CLUSTER_NAME=kollacluster
|
||||
DB_CLUSTER_NODES=
|
||||
DB_CLUSTER_WSREP_METHOD=mysqldump
|
||||
|
||||
# Host
|
||||
ADMIN_TENANT_NAME=admin
|
||||
PUBLIC_IP=$HOST_IP
|
||||
|
||||
# Logging
|
||||
CINDER_API_LOG_FILE=
|
||||
CINDER_BACKUP_LOG_FILE=
|
||||
CINDER_LOG_DIR=
|
||||
CINDER_SCHEDULER_LOG_FILE=
|
||||
CINDER_VOLUME_LOG_FILE=
|
||||
DEBUG_LOGGING=false
|
||||
NEUTRON_L3_AGENT_LOG_FILE=
|
||||
NEUTRON_LINUXBRIDGE_AGENT_LOG_FILE=
|
||||
NEUTRON_LOG_DIR=/var/log/neutron
|
||||
NEUTRON_METADATA_AGENT_LOG_FILE=
|
||||
NEUTRON_SERVER_LOG_FILE=
|
||||
NOVA_API_LOG_FILE=
|
||||
NOVA_COMPUTE_LOG_FILE=
|
||||
NOVA_CONDUCTOR_LOG_FILE=
|
||||
NOVA_CONSOLEAUTH_LOG_FILE=
|
||||
NOVA_LOG_DIR=
|
||||
NOVA_NOVNCPROXY_LOG_FILE=
|
||||
NOVA_SCHEDULER_LOG_FILE=
|
||||
OVS_DB_FILE="/etc/openvswitch/conf.db"
|
||||
OVS_LOG_FILE=
|
||||
OVS_UNIXSOCK="/var/run/openvswitch/db.sock"
|
||||
VERBOSE_LOGGING=true
|
||||
|
||||
|
||||
# RabbitMQ
|
||||
RABBITMQ_CLUSTER_COOKIE=
|
||||
RABBITMQ_CLUSTER_NODES=
|
||||
RABBITMQ_SERVICE_HOST=$HOST_IP
|
||||
RABBITMQ_SERVICE_PORT=5672
|
||||
RABBIT_PASSWORD=guest
|
||||
RABBITMQ_USER=guest
|
||||
|
||||
#Barbican
|
||||
ADMIN_TENANT_NAME=admin
|
||||
BARBICAN_ADMIN_SERVICE_PORT=9312
|
||||
BARBICAN_DB_NAME=barbican
|
||||
BARBICAN_DB_USER=barbican
|
||||
BARBICAN_KEYSTONE_USER=barbican
|
||||
BARBICAN_PUBLIC_SERVICE_PORT=9311
|
||||
KEYSTONE_AUTH_PROTOCOL=http
|
||||
|
||||
#Ceilometer
|
||||
CEILOMETER_ADMIN_PASSWORD=password
|
||||
CEILOMETER_API_SERVICE_HOST=$HOST_IP
|
||||
CEILOMETER_API_SERVICE_PORT=8777
|
||||
CEILOMETER_DB_NAME=ceilometer
|
||||
CEILOMETER_DB_PASSWORD=password
|
||||
CEILOMETER_DB_USER=ceilometer
|
||||
CEILOMETER_KEYSTONE_USER=ceilometer
|
||||
|
||||
# Cinder API
|
||||
CINDER_ADMIN_PASSWORD=password
|
||||
CINDER_API_SERVICE_HOST=$HOST_IP
|
||||
CINDER_API_SERVICE_LISTEN=$HOST_IP
|
||||
CINDER_API_SERVICE_PORT=8776
|
||||
CINDER_KEYSTONE_PASSWORD=password
|
||||
CINDER_KEYSTONE_USER=cinder
|
||||
|
||||
# Cinder Scheduler
|
||||
CINDER_DB_NAME=cinder
|
||||
CINDER_DB_PASSWORD=password
|
||||
CINDER_DB_USER=cinder
|
||||
|
||||
# Cinder Backup
|
||||
CINDER_BACKUP_API_CLASS=cinder.backup.api.API
|
||||
CINDER_BACKUP_DRIVER=cinder.backup.drivers.swift
|
||||
CINDER_BACKUP_MANAGER=cinder.backup.manager.BackupManager
|
||||
CINDER_BACKUP_NAME_TEMPLATE=backup-%s
|
||||
|
||||
# Cinder Volume
|
||||
CINDER_ENABLED_BACKEND=lvm57
|
||||
CINDER_LVM_LO_VOLUME_SIZE=4G
|
||||
CINDER_VOLUME_API_LISTEN=$HOST_IP
|
||||
CINDER_VOLUME_BACKEND_NAME=LVM_iSCSI57
|
||||
CINDER_VOLUME_DRIVER=cinder.volume.drivers.lvm.LVMISCSIDriver
|
||||
CINDER_VOLUME_GROUP=cinder-volumes
|
||||
ISCSI_HELPER=tgtadm
|
||||
ISCSI_IP_ADDRESS=$HOST_IP
|
||||
|
||||
# Designate
|
||||
DESIGNATE_DB_NAME=designate
|
||||
DESIGNATE_DB_USER=designate
|
||||
DESIGNATE_DB_PASSWORD=designatedns
|
||||
DESIGNATE_KEYSTONE_USER=designate
|
||||
DESIGNATE_KEYSTONE_PASSWORD=designate
|
||||
DESIGNATE_BIND9_RNDC_KEY=$(openssl rand -base64 24)
|
||||
DESIGNATE_MASTERNS=$HOST_IP
|
||||
DESIGNATE_BACKEND=bind9
|
||||
DESIGNATE_SLAVENS=$HOST_IP
|
||||
DESIGNATE_API_SERVICE_HOST=$HOST_IP
|
||||
DESIGNATE_API_SERVICE_PORT=9001
|
||||
DESIGNATE_MDNS_PORT=5354
|
||||
DESIGNATE_DNS_PORT=53
|
||||
DESIGNATE_POOLMAN_POOLID=$(uuidgen)
|
||||
DESIGNATE_POOLMAN_TARGETS=$(uuidgen)
|
||||
DESIGNATE_POOLMAN_NSS=$(uuidgen)
|
||||
DESIGNATE_ALLOW_RECURSION=true
|
||||
DESIGNATE_DEFAULT_POOL_NS_RECORD=ns1.example.org.
|
||||
DESIGNATE_SINK_NOVA_DOMAIN_NAME=nova.example.org.
|
||||
DESIGNATE_SINK_NEUTRON_DOMAIN_NAME=neutron.example.org.
|
||||
DESIGNATE_SINK_NOVA_FORMATS=("%(octet0)s-%(octet1)s-%(octet2)s-%(octet3)s.%(domain)s" "%(hostname)s.%(domain)s")
|
||||
DESIGNATE_SINK_NEUTRON_FORMATS=("%(octet0)s-%(octet1)s-%(octet2)s-%(octet3)s.%(domain)s" "%(hostname)s.%(domain)s")
|
||||
|
||||
# Glance
|
||||
GLANCE_API_SERVICE_HOST=$HOST_IP
|
||||
GLANCE_API_SERVICE_PORT=9292
|
||||
GLANCE_DB_NAME=glance
|
||||
GLANCE_DB_PASSWORD=kolla
|
||||
GLANCE_DB_USER=glance
|
||||
GLANCE_KEYSTONE_PASSWORD=glance
|
||||
GLANCE_KEYSTONE_USER=glance
|
||||
GLANCE_REGISTRY_SERVICE_HOST=$HOST_IP
|
||||
GLANCE_REGISTRY_SERVICE_PORT=9191
|
||||
|
||||
# Gnocchi
|
||||
GNOCCHI_DB_PASSWORD=gnocchi
|
||||
GNOCCHI_DB_NAME=gnocchi
|
||||
GNOCCHI_DB_USER=gnocchi
|
||||
GNOCCHI_SERVICE_PROTOCOL=http
|
||||
GNOCCHI_SERVICE_PORT=8041
|
||||
GNOCCHI_STORAGE_BACKEND=file
|
||||
GNOCCHI_KEYSTONE_USER=gnocchi
|
||||
GNOCCHI_KEYSTONE_PASSWORD=gnocchi
|
||||
GNOCCHI_ADMIN_PASSWORD=gnocchi
|
||||
GNOCCHI_API_SERVICE_HOST=$HOST_IP
|
||||
|
||||
|
||||
# Heat
|
||||
HEAT_API_CFN_SERVICE_HOST=$HOST_IP
|
||||
HEAT_API_CFN_SERVICE_PORT=8000
|
||||
HEAT_API_CFN_URL_HOST=$HOST_IP
|
||||
HEAT_API_SERVICE_HOST=$HOST_IP
|
||||
HEAT_API_SERVICE_PORT=8004
|
||||
HEAT_CFN_KEYSTONE_PASSWORD=heat
|
||||
HEAT_CFN_KEYSTONE_USER=heat-cfn
|
||||
HEAT_DB_NAME=heat
|
||||
HEAT_DB_PASSWORD=kolla
|
||||
HEAT_DOMAIN_PASS=$(openssl rand -hex 8)
|
||||
HEAT_KEYSTONE_PASSWORD=heat
|
||||
HEAT_KEYSTONE_USER=heat
|
||||
|
||||
#Horizon
|
||||
HORIZON_KEYSTONE_USER=horizon
|
||||
HORIZON_SERVICE_PORT=80
|
||||
|
||||
# Keystone
|
||||
KEYSTONE_ADMIN_PASSWORD=$PASSWORD
|
||||
KEYSTONE_ADMIN_SERVICE_HOST=$HOST_IP
|
||||
KEYSTONE_ADMIN_SERVICE_PORT=35357
|
||||
KEYSTONE_ADMIN_TOKEN=$PASSWORD
|
||||
KEYSTONE_API_VERSION=2.0
|
||||
KEYSTONE_AUTH_PROTOCOL=http
|
||||
KEYSTONE_DB_NAME=keystone
|
||||
KEYSTONE_DB_PASSWORD=kolla
|
||||
KEYSTONE_DB_USER=keystone
|
||||
KEYSTONE_PUBLIC_SERVICE_HOST=$HOST_IP
|
||||
KEYSTONE_PUBLIC_SERVICE_PORT=5000
|
||||
KEYSTONE_USER=keystone
|
||||
TOKEN_DRIVER=sql
|
||||
TOKEN_PROVIDER=uuid
|
||||
USE_STDERR=false
|
||||
|
||||
# Keepalived
|
||||
# Here we define pairs hostname:priority. Priorities have to be unique
|
||||
KEEPALIVED_HOST_PRIORITIES=host1:100,host2:99
|
||||
|
||||
# Magnum
|
||||
MAGNUM_DB_NAME=magnum
|
||||
MAGNUM_DB_USER=magnum
|
||||
MAGNUM_DB_PASSWORD=kolla
|
||||
MAGNUM_KEYSTONE_USER=magnum
|
||||
MAGNUM_KEYSTONE_PASSWORD=magnum
|
||||
MAGNUM_API_SERVICE_HOST=$HOST_IP
|
||||
MAGNUM_API_SERVICE_PORT=9511
|
||||
|
||||
# Murano
|
||||
MURANO_DB_NAME=murano
|
||||
MURANO_DB_PASSWORD=murano
|
||||
MURANO_DB_USER=murano
|
||||
MURANO_HOST_IP=$HOST_IP
|
||||
MURANO_KEYSTONE_PASSWORD=password
|
||||
MURANO_KEYSTONE_USER=murano
|
||||
MURANO_SERVICE_PORT=8082
|
||||
MURANO_SERVICE_PROTOCOL=http
|
||||
|
||||
# Neutron
|
||||
NEUTRON_DB_NAME=neutron
|
||||
NEUTRON_DB_USER=neutron
|
||||
NEUTRON_DB_PASSWORD=password
|
||||
NEUTRON_KEYSTONE_USER=neutron
|
||||
NEUTRON_KEYSTONE_PASSWORD=neutron
|
||||
NEUTRON_SERVER_SERVICE_HOST=$HOST_IP
|
||||
NEUTRON_SERVER_SERVICE_PORT=9696
|
||||
NEUTRON_API_PASTE_CONFIG=/usr/share/neutron/api-paste.ini
|
||||
# Neutron ML2 Plugin
|
||||
TYPE_DRIVERS=flat,vxlan
|
||||
TENANT_NETWORK_TYPES=flat,vxlan
|
||||
MECHANISM_DRIVERS=linuxbridge,l2population
|
||||
# Neutron Linux Bridge Agent
|
||||
NEUTRON_FLAT_NETWORK_NAME=physnet1
|
||||
NEUTRON_FLAT_NETWORK_INTERFACE=eth1
|
||||
|
||||
# Neutron ML2 Plugin
|
||||
MECHANISM_DRIVERS=linuxbridge,l2population
|
||||
TENANT_NETWORK_TYPES=flat,vxlan
|
||||
TYPE_DRIVERS=flat,vxlan
|
||||
|
||||
# Neutron Linux Bridge Agent
|
||||
DELETE_NAMESPACES=true
|
||||
DHCP_DRIVER=neutron.agent.linux.dhcp.Dnsmasq
|
||||
DNSMASQ_CONFIG_FILE=/etc/neutron/dnsmasq/dnsmasq-neutron.conf
|
||||
ENDPOINT_TYPE=adminURL
|
||||
KEYSTONE_REGION=RegionOne
|
||||
NEUTRON_FLAT_NETWORK_INTERFACE=eth1
|
||||
NEUTRON_FLAT_NETWORK_NAME=physnet1
|
||||
ROOT_HELPER="sudo neutron-rootwrap /etc/neutron/rootwrap.conf"
|
||||
USE_NAMESPACES=true
|
||||
|
||||
# Networking Options are nova or neutron
|
||||
NETWORK_MANAGER=neutron
|
||||
|
||||
# Nova
|
||||
ENABLED_APIS=ec2,osapi_compute,metadata
|
||||
METADATA_HOST=$HOST_IP
|
||||
NOVA_API_SERVICE_HOST=$HOST_IP
|
||||
NOVA_API_SERVICE_PORT=8774
|
||||
NOVA_DB_NAME=nova
|
||||
NOVA_DB_PASSWORD=nova
|
||||
NOVA_DB_USER=nova
|
||||
NOVA_EC2_SERVICE_HOST=$HOST_IP
|
||||
NOVA_EC2_API_SERVICE_PORT=8773
|
||||
NOVA_FLAT_INTERFACE=eth1
|
||||
NOVA_KEYSTONE_PASSWORD=nova
|
||||
NOVA_KEYSTONE_USER=nova
|
||||
NOVA_LIBVIRT_SERVICE_PORT=16509
|
||||
NOVA_METADATA_API_SERVICE_HOST=$HOST_IP
|
||||
NOVA_METADATA_API_SERVICE_PORT=8775
|
||||
NOVA_NOVNC_BASE_ADDRESS=${PUBLIC_IP}
|
||||
NOVA_NOVNC_PROXY_PORT=6080
|
||||
NOVA_NOVNC_PROXY_SERVICE_HOST=0.0.0.0
|
||||
NOVA_PUBLIC_INTERFACE=$MY_DEV
|
||||
NOVA_VNCSERVER_LISTEN_ADDRESS=$HOST_IP
|
||||
NOVA_VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP
|
||||
|
||||
# Nova/Neutron
|
||||
NEUTRON_SHARED_SECRET=sharedsecret
|
||||
|
||||
# Swift
|
||||
SWIFT_ACCOUNT_SVC_BIND_IP=$PUBLIC_IP
|
||||
SWIFT_ACCOUNT_SVC_BIND_PORT=6002
|
||||
SWIFT_ACCOUNT_SVC_DEVICES=/srv/node
|
||||
SWIFT_ACCOUNT_SVC_MOUNT_CHECK=false
|
||||
SWIFT_ADMIN_USER=swift
|
||||
SWIFT_API_SERVICE_HOST=$HOST_IP
|
||||
SWIFT_CONTAINER_SVC_BIND_IP=$PUBLIC_IP
|
||||
SWIFT_CONTAINER_SVC_BIND_PORT=6001
|
||||
SWIFT_CONTAINER_SVC_DEVICES=/srv/node
|
||||
SWIFT_CONTAINER_SVC_MOUNT_CHECK=false
|
||||
SWIFT_DIR=/etc/swift
|
||||
SWIFT_HASH_PATH_SUFFIX=$(openssl rand -hex 8)
|
||||
SWIFT_KEYSTONE_PASSWORD=swift
|
||||
SWIFT_KEYSTONE_USER=swift
|
||||
SWIFT_OBJECT_SVC_BIND_IP=$PUBLIC_IP
|
||||
SWIFT_OBJECT_SVC_BIND_PORT=6000
|
||||
SWIFT_OBJECT_SVC_DEVICES=/srv/node
|
||||
SWIFT_OBJECT_SVC_MOUNT_CHECK=false
|
||||
SWIFT_OBJECT_SVC_PIPELINE=object-server
|
||||
SWIFT_PROXY_ACCOUNT_AUTOCREATE=true
|
||||
SWIFT_PROXY_AUTH_PLUGIN=password
|
||||
SWIFT_PROXY_BIND_IP=$PUBLIC_IP
|
||||
SWIFT_PROXY_BIND_PORT=8080
|
||||
SWIFT_PROXY_DELAY_AUTH_DECISION=true
|
||||
SWIFT_PROXY_DIR=/etc/swift
|
||||
SWIFT_PROXY_OPERATOR_ROLES=admin,user
|
||||
SWIFT_PROXY_PASSWORD=swift
|
||||
SWIFT_PROXY_PIPELINE_MAIN="catch_errors gatekeeper healthcheck cache container_sync bulk ratelimit authtoken keystoneauth slo dlo proxy-server"
|
||||
SWIFT_PROXY_PROJECT_DOMAIN_ID=default
|
||||
SWIFT_PROXY_PROJECT_NAME=service
|
||||
SWIFT_PROXY_SIGNING_DIR=/var/cache/swift
|
||||
SWIFT_PROXY_USER_DOMAIN_ID=default
|
||||
SWIFT_PROXY_USERNAME=swift
|
||||
SWIFT_USER=swift
|
||||
SWIFT_OBJECT_SVC_RING_NAME=/etc/swift/object.builder
|
||||
SWIFT_OBJECT_SVC_RING_PART_POWER=10
|
||||
SWIFT_OBJECT_SVC_RING_REPLICAS=3
|
||||
SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS=1
|
||||
SWIFT_OBJECT_SVC_RING_HOSTS="${HOST_IP}:6000,${HOST_IP}:6000,${HOST_IP}:6000"
|
||||
SWIFT_OBJECT_SVC_RING_DEVICES="sdb1,sdb2,sdb3"
|
||||
SWIFT_OBJECT_SVC_RING_WEIGHTS="1,1,1"
|
||||
SWIFT_OBJECT_SVC_RING_ZONES="1,2,3"
|
||||
SWIFT_CONTAINER_SVC_RING_NAME=/etc/swift/container.builder
|
||||
SWIFT_CONTAINER_SVC_RING_PART_POWER=10
|
||||
SWIFT_CONTAINER_SVC_RING_REPLICAS=3
|
||||
SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS=1
|
||||
SWIFT_CONTAINER_SVC_RING_HOSTS="${HOST_IP}:6001,${HOST_IP}:6001,${HOST_IP}:6001"
|
||||
SWIFT_CONTAINER_SVC_RING_DEVICES="sdb1,sdb2,sdb3"
|
||||
SWIFT_CONTAINER_SVC_RING_WEIGHTS="1,1,1"
|
||||
SWIFT_CONTAINER_SVC_RING_ZONES="1,2,3"
|
||||
SWIFT_ACCOUNT_SVC_RING_NAME=/etc/swift/account.builder
|
||||
SWIFT_ACCOUNT_SVC_RING_PART_POWER=10
|
||||
SWIFT_ACCOUNT_SVC_RING_REPLICAS=3
|
||||
SWIFT_ACCOUNT_SVC_RING_MIN_PART_HOURS=1
|
||||
SWIFT_ACCOUNT_SVC_RING_HOSTS="${HOST_IP}:6002,${HOST_IP}:6002,${HOST_IP}:6002"
|
||||
SWIFT_ACCOUNT_SVC_RING_DEVICES="sdb1,sdb2,sdb3"
|
||||
SWIFT_ACCOUNT_SVC_RING_WEIGHTS="1,1,1"
|
||||
SWIFT_ACCOUNT_SVC_RING_ZONES="1,2,3"
|
||||
|
||||
#Zaqar
|
||||
ZAQAR_KEYSTONE_USER=zaqar
|
||||
ZAQAR_SERVER_SERVICE_PORT=8888
|
||||
|
||||
# this should use the keystone admin port
|
||||
# https://bugs.launchpad.net/kolla/+bug/1469209
|
||||
cat > ./openrc <<EOF
|
||||
export OS_AUTH_URL="http://${KEYSTONE_PUBLIC_SERVICE_HOST}:${KEYSTONE_PUBLIC_SERVICE_PORT}/v2.0"
|
||||
export OS_USERNAME=$ADMIN_TENANT_NAME
|
||||
export OS_PASSWORD=$ADMIN_USER_PASSWORD
|
||||
export OS_TENANT_NAME=$ADMIN_TENANT_NAME
|
||||
export OS_VOLUME_API_VERSION=$CINDER_API_VERSION
|
||||
EOF
|
||||
|
||||
cat > ./compose/openstack.env <<EOF
|
||||
ADMIN_TENANT_NAME=$ADMIN_TENANT_NAME
|
||||
ADMIN_USER=$ADMIN_USER
|
||||
ADMIN_USER_PASSWORD=$ADMIN_USER_PASSWORD
|
||||
BARBICAN_ADMIN_SERVICE_PORT=$BARBICAN_ADMIN_SERVICE_PORT
|
||||
BARBICAN_DB_NAME=$BARBICAN_DB_NAME
|
||||
BARBICAN_DB_USER=$BARBICAN_DB_USER
|
||||
BARBICAN_KEYSTONE_USER=$BARBICAN_KEYSTONE_USER
|
||||
BARBICAN_PUBLIC_SERVICE_PORT=$BARBICAN_PUBLIC_SERVICE_PORT
|
||||
BIND_ADDRESS=$BIND_ADDRESS
|
||||
CEILOMETER_ADMIN_PASSWORD=$CEILOMETER_ADMIN_PASSWORD
|
||||
CEILOMETER_API_SERVICE_HOST=$CEILOMETER_API_SERVICE_HOST
|
||||
CEILOMETER_API_SERVICE_PORT=$CEILOMETER_API_SERVICE_PORT
|
||||
CEILOMETER_DB_NAME=$CEILOMETER_DB_NAME
|
||||
CEILOMETER_DB_PASSWORD=$CEILOMETER_DB_PASSWORD
|
||||
CEILOMETER_DB_USER=$CEILOMETER_DB_USER
|
||||
CEILOMETER_KEYSTONE_USER=$CEILOMETER_KEYSTONE_USER
|
||||
CHAR_SET_SERVER=$CHAR_SET_SERVER
|
||||
CINDER_ADMIN_PASSWORD=$CINDER_ADMIN_PASSWORD
|
||||
CINDER_API_LOG_FILE=$CINDER_API_LOG_FILE
|
||||
CINDER_API_SERVICE_HOST=$HOST_IP
|
||||
CINDER_API_SERVICE_LISTEN=$MY_IP
|
||||
CINDER_API_SERVICE_PORT=$CINDER_API_SERVICE_PORT
|
||||
CINDER_API_VERSION=$CINDER_API_VERSION
|
||||
CINDER_BACKUP_API_CLASS=$CINDER_BACKUP_API_CLASS
|
||||
CINDER_BACKUP_DRIVER=$CINDER_BACKUP_DRIVER
|
||||
CINDER_BACKUP_LOG_FILE=$CINDER_BACKUP_LOG_FILE
|
||||
CINDER_BACKUP_MANAGER=$CINDER_BACKUP_MANAGER
|
||||
CINDER_BACKUP_NAME_TEMPLATE=$CINDER_BACKUP_NAME_TEMPLATE
|
||||
CINDER_DB_NAME=$CINDER_DB_NAME
|
||||
CINDER_DB_PASSWORD=$CINDER_DB_PASSWORD
|
||||
CINDER_DB_USER=$CINDER_DB_USER
|
||||
CINDER_ENABLED_BACKEND=$CINDER_ENABLED_BACKEND
|
||||
CINDER_KEYSTONE_PASSWORD=$CINDER_KEYSTONE_PASSWORD
|
||||
CINDER_KEYSTONE_USER=$CINDER_KEYSTONE_USER
|
||||
CINDER_LOG_DIR=$CINDER_LOG_DIR
|
||||
CINDER_LVM_LO_VOLUME_SIZE=$CINDER_LVM_LO_VOLUME_SIZE
|
||||
CINDER_SCHEDULER_LOG_FILE=$CINDER_SCHEDULER_LOG_FILE
|
||||
CINDER_VOLUME_API_LISTEN=$CINDER_VOLUME_API_LISTEN
|
||||
CINDER_VOLUME_BACKEND_NAME=$CINDER_VOLUME_BACKEND_NAME
|
||||
CINDER_VOLUME_DRIVER=$CINDER_VOLUME_DRIVER
|
||||
CINDER_VOLUME_GROUP=$CINDER_VOLUME_GROUP
|
||||
CINDER_VOLUME_LOG_FILE=$CINDER_VOLUME_LOG_FILE
|
||||
COLLATION_SERVER=$COLLATION_SERVER
|
||||
DATADIR=$DATADIR
|
||||
DB_CLUSTER_BIND_ADDRESS=$DB_CLUSTER_BIND_ADDRESS
|
||||
DB_CLUSTER_INIT_DB=$DB_CLUSTER_INIT_DB
|
||||
DB_CLUSTER_NAME=$DB_CLUSTER_NAME
|
||||
DB_CLUSTER_NODES=$DB_CLUSTER_NODES
|
||||
DB_CLUSTER_WSREP_METHOD=$DB_CLUSTER_WSREP_METHOD
|
||||
DB_ROOT_PASSWORD=$MARIADB_ROOT_PASSWORD
|
||||
DEBUG_LOGGING=$DEBUG_LOGGING
|
||||
DEFAULT_STORAGE_ENGINE=$DEFAULT_STORAGE_ENGINE
|
||||
DELETE_NAMESPACES=$DELETE_NAMESPACES
|
||||
DESIGNATE_ALLOW_RECURSION=$DESIGNATE_ALLOW_RECURSION
|
||||
DESIGNATE_API_SERVICE_HOST=$DESIGNATE_API_SERVICE_HOST
|
||||
DESIGNATE_API_SERVICE_PORT=$DESIGNATE_API_SERVICE_PORT
|
||||
DESIGNATE_BACKEND=$DESIGNATE_BACKEND
|
||||
DESIGNATE_BIND9_RNDC_KEY=$DESIGNATE_BIND9_RNDC_KEY
|
||||
DESIGNATE_DB_NAME=$DESIGNATE_DB_NAME
|
||||
DESIGNATE_DB_PASSWORD=$DESIGNATE_DB_PASSWORD
|
||||
DESIGNATE_DB_USER=$DESIGNATE_DB_USER
|
||||
DESIGNATE_DEFAULT_POOL_NS_RECORD=$DESIGNATE_DEFAULT_POOL_NS_RECORD
|
||||
DESIGNATE_DNS_PORT=$DESIGNATE_DNS_PORT
|
||||
DESIGNATE_INITDB=$DESIGNATE_INITDB
|
||||
DESIGNATE_KEYSTONE_PASSWORD=$DESIGNATE_KEYSTONE_PASSWORD
|
||||
DESIGNATE_KEYSTONE_USER=$DESIGNATE_KEYSTONE_USER
|
||||
DESIGNATE_MASTERNS=$DESIGNATE_MASTERNS
|
||||
DESIGNATE_MDNS_PORT=$DESIGNATE_MDNS_PORT
|
||||
DESIGNATE_POOLMAN_NSS=$DESIGNATE_POOLMAN_NSS
|
||||
DESIGNATE_POOLMAN_POOLID=$DESIGNATE_POOLMAN_POOLID
|
||||
DESIGNATE_POOLMAN_TARGETS=$DESIGNATE_POOLMAN_TARGETS
|
||||
DESIGNATE_SINK_NEUTRON_DOMAIN_NAME=$DESIGNATE_SINK_NEUTRON_DOMAIN_NAME
|
||||
DESIGNATE_SINK_NOVA_DOMAIN_NAME=$DESIGNATE_SINK_NOVA_DOMAIN_NAME
|
||||
DESIGNATE_SLAVENS=$DESIGNATE_SLAVENS
|
||||
DHCP_DRIVER=$DHCP_DRIVER
|
||||
DNSMASQ_CONFIG_FILE=$DNSMASQ_CONFIG_FILE
|
||||
ENABLED_APIS=$ENABLED_APIS
|
||||
ENDPOINT_TYPE=$ENDPOINT_TYPE
|
||||
FLAT_INTERFACE=$NOVA_FLAT_INTERFACE
|
||||
GLANCE_API_SERVICE_HOST=$GLANCE_API_SERVICE_HOST
|
||||
GLANCE_API_SERVICE_PORT=$GLANCE_API_SERVICE_PORT
|
||||
GLANCE_DB_NAME=$GLANCE_DB_NAME
|
||||
GLANCE_DB_PASSWORD=$GLANCE_DB_PASSWORD
|
||||
GLANCE_DB_USER=$GLANCE_DB_USER
|
||||
GLANCE_KEYSTONE_PASSWORD=$GLANCE_KEYSTONE_PASSWORD
|
||||
GLANCE_KEYSTONE_USER=$GLANCE_KEYSTONE_USER
|
||||
GLANCE_REGISTRY_SERVICE_HOST=$GLANCE_REGISTRY_SERVICE_HOST
|
||||
GLANCE_REGISTRY_SERVICE_PORT=$GLANCE_REGISTRY_SERVICE_PORT
|
||||
HEAT_API_CFN_SERVICE_HOST=$HEAT_API_CFN_SERVICE_HOST
|
||||
HEAT_API_CFN_SERVICE_PORT=$HEAT_API_CFN_SERVICE_PORT
|
||||
HEAT_API_CFN_URL_HOST=$HEAT_API_CFN_URL_HOST
|
||||
HEAT_API_SERVICE_HOST=$HEAT_API_SERVICE_HOST
|
||||
HEAT_API_SERVICE_PORT=$HEAT_API_SERVICE_PORT
|
||||
HEAT_CFN_KEYSTONE_PASSWORD=$HEAT_CFN_KEYSTONE_PASSWORD
|
||||
HEAT_CFN_KEYSTONE_USER=$HEAT_CFN_KEYSTONE_USER
|
||||
HEAT_DB_NAME=$HEAT_DB_NAME
|
||||
HEAT_DB_PASSWORD=$HEAT_DB_PASSWORD
|
||||
HEAT_DOMAIN_PASS=$HEAT_DOMAIN_PASS
|
||||
HEAT_KEYSTONE_PASSWORD=$HEAT_KEYSTONE_PASSWORD
|
||||
HEAT_KEYSTONE_USER=$HEAT_KEYSTONE_USER
|
||||
HORIZON_KEYSTONE_USER=$HORIZON_KEYSTONE_USER
|
||||
HORIZON_SERVICE_PORT=$HORIZON_SERVICE_PORT
|
||||
INIT_CINDER_DB=$INIT_CINDER_DB
|
||||
INIT_CONNECT=$INIT_CONNECT
|
||||
INIT_DESIGNATE_DB=$INIT_DESIGNATE_DB
|
||||
INIT_GLANCE_DB=$INIT_GLANCE_DB
|
||||
INIT_MURANO_DB=$INIT_MURANO_DB
|
||||
INIT_HEAT_DB=$INIT_HEAT_DB
|
||||
INIT_KEYSTONE_DB=$INIT_KEYSTONE_DB
|
||||
INIT_NOVA_DB=$INIT_NOVA_DB
|
||||
INNODB_FILE_PER_TABLE=$INNODB_FILE_PER_TABLE
|
||||
ISCSI_HELPER=$ISCSI_HELPER
|
||||
ISCSI_IP_ADDRESS=$ISCSI_IP_ADDRESS
|
||||
KEEPALIVED_HOST_PRIORITIES=$KEEPALIVED_HOST_PRIORITIES
|
||||
KEYSTONE_ADMIN_PASSWORD=$KEYSTONE_ADMIN_PASSWORD
|
||||
KEYSTONE_ADMIN_SERVICE_HOST=$KEYSTONE_ADMIN_SERVICE_HOST
|
||||
KEYSTONE_ADMIN_SERVICE_PORT=$KEYSTONE_ADMIN_SERVICE_PORT
|
||||
KEYSTONE_ADMIN_TOKEN=$KEYSTONE_ADMIN_TOKEN
|
||||
KEYSTONE_API_VERSION=$KEYSTONE_API_VERSION
|
||||
KEYSTONE_AUTH_PROTOCOL=$KEYSTONE_AUTH_PROTOCOL
|
||||
KEYSTONE_AUTH_PROTOCOL=$KEYSTONE_AUTH_PROTOCOL
|
||||
KEYSTONE_DB_NAME=$KEYSTONE_DB_NAME
|
||||
KEYSTONE_DB_PASSWORD=$KEYSTONE_DB_PASSWORD
|
||||
KEYSTONE_DB_USER=$KEYSTONE_DB_USER
|
||||
KEYSTONE_PUBLIC_SERVICE_HOST=$KEYSTONE_PUBLIC_SERVICE_HOST
|
||||
KEYSTONE_PUBLIC_SERVICE_PORT=$KEYSTONE_PUBLIC_SERVICE_PORT
|
||||
KEYSTONE_REGION=$KEYSTONE_REGION
|
||||
KEYSTONE_USER=$KEYSTONE_USER
|
||||
KOLLA_CONFIG_STRATEGY=CONFIG_INTERNAL
|
||||
MAGNUM_API_SERVICE_HOST=$MAGNUM_API_SERVICE_HOST
|
||||
MAGNUM_API_SERVICE_PORT=$MAGNUM_API_SERVICE_PORT
|
||||
MAGNUM_DB_NAME=$MAGNUM_DB_NAME
|
||||
MAGNUM_DB_PASSWORD=$MAGNUM_DB_PASSWORD
|
||||
MAGNUM_DB_USER=$MAGNUM_DB_USER
|
||||
MAGNUM_KEYSTONE_PASSWORD=$MAGNUM_KEYSTONE_PASSWORD
|
||||
MAGNUM_KEYSTONE_USER=$MAGNUM_KEYSTONE_USER
|
||||
MARIADB_MAX_CONNECTIONS=$MARIADB_MAX_CONNECTIONS
|
||||
MARIADB_ROOT_PASSWORD=$MARIADB_ROOT_PASSWORD
|
||||
MARIADB_SERVICE_HOST=$HOST_IP
|
||||
MARIADB_SERVICE_PORT=$MARIADB_SERVICE_PORT
|
||||
MECHANISM_DRIVERS=$MECHANISM_DRIVERS
|
||||
METADATA_HOST=$METADATA_HOST
|
||||
MONGODB_SERVICE_PORT=$MONGODB_SERVICE_PORT
|
||||
MURANO_DB_NAME=$MURANO_DB_NAME
|
||||
MURANO_DB_PASSWORD=$MURANO_DB_PASSWORD
|
||||
MURANO_DB_USER=$MURANO_DB_USER
|
||||
MURANO_HOST_IP=$MURANO_HOST_IP
|
||||
MURANO_KEYSTONE_PASSWORD=$MURANO_KEYSTONE_PASSWORD
|
||||
MURANO_KEYSTONE_USER=$MURANO_KEYSTONE_USER
|
||||
MURANO_SERVICE_PORT=$MURANO_SERVICE_PORT
|
||||
MURANO_SERVICE_PROTOCOL=$MURANO_SERVICE_PROTOCOL
|
||||
NETWORK_MANAGER=$NETWORK_MANAGER
|
||||
NEUTRON_API_PASTE_CONFIG=$NEUTRON_API_PASTE_CONFIG
|
||||
NEUTRON_DB_NAME=$NEUTRON_DB_NAME
|
||||
NEUTRON_DB_PASSWORD=$NEUTRON_DB_PASSWORD
|
||||
NEUTRON_DB_USER=$NEUTRON_DB_USER
|
||||
NEUTRON_FLAT_NETWORK_INTERFACE=$NEUTRON_FLAT_NETWORK_INTERFACE
|
||||
NEUTRON_FLAT_NETWORK_NAME=$NEUTRON_FLAT_NETWORK_NAME
|
||||
NEUTRON_KEYSTONE_PASSWORD=$NEUTRON_KEYSTONE_PASSWORD
|
||||
NEUTRON_KEYSTONE_USER=$NEUTRON_KEYSTONE_USER
|
||||
NEUTRON_L3_AGENT_LOG_FILE=$NEUTRON_L3_AGENT_LOG_FILE
|
||||
NEUTRON_LINUXBRIDGE_AGENT_LOG_FILE=$NEUTRON_LINUXBRIDGE_AGENT_LOG_FILE
|
||||
NEUTRON_LOG_DIR=$NEUTRON_LOG_DIR
|
||||
NEUTRON_METADATA_AGENT_LOG_FILE=$NEUTRON_METADATA_AGENT_LOG_FILE
|
||||
NEUTRON_SERVER_LOG_FILE=$NEUTRON_SERVER_LOG_FILE
|
||||
NEUTRON_SERVER_SERVICE_HOST=$NEUTRON_SERVER_SERVICE_HOST
|
||||
NEUTRON_SERVER_SERVICE_PORT=$NEUTRON_SERVER_SERVICE_PORT
|
||||
NEUTRON_SHARED_SECRET=$NEUTRON_SHARED_SECRET
|
||||
NOVA_API_LOG_FILE=$NOVA_API_LOG_FILE
|
||||
NOVA_API_SERVICE_HOST=$NOVA_API_SERVICE_HOST
|
||||
NOVA_API_SERVICE_PORT=$NOVA_API_SERVICE_PORT
|
||||
NOVA_COMPUTE_LOG_FILE=$NOVA_COMPUTE_LOG_FILE
|
||||
NOVA_CONDUCTOR_LOG_FILE=$NOVA_CONDUCTOR_LOG_FILE
|
||||
NOVA_CONSOLEAUTH_LOG_FILE=$NOVA_CONSOLEAUTH_LOG_FILE
|
||||
NOVA_DB_NAME=$NOVA_DB_NAME
|
||||
NOVA_DB_PASSWORD=$NOVA_DB_PASSWORD
|
||||
NOVA_DB_USER=$NOVA_DB_USER
|
||||
NOVA_EC2_API_SERVICE_HOST=$NOVA_EC2_SERVICE_HOST
|
||||
NOVA_EC2_SERVICE_HOST=$NOVA_EC2_SERVICE_HOST
|
||||
NOVA_EC2_API_SERVICE_PORT=$NOVA_EC2_API_SERVICE_PORT
|
||||
NOVA_KEYSTONE_PASSWORD=$NOVA_KEYSTONE_PASSWORD
|
||||
NOVA_KEYSTONE_USER=$NOVA_KEYSTONE_USER
|
||||
NOVA_LOG_DIR=$NOVA_LOG_DIR
|
||||
NOVA_LIBVIRT_SERVICE_PORT=$NOVA_LIBVIRT_SERVICE_PORT
|
||||
NOVA_METADATA_API_SERVICE_HOST=$NOVA_METADATA_API_SERVICE_HOST
|
||||
NOVA_METADATA_API_SERVICE_PORT=$NOVA_METADATA_API_SERVICE_PORT
|
||||
NOVA_NOVNCPROXY_LOG_FILE=$NOVA_NOVNCPROXY_LOG_FILE
|
||||
NOVA_NOVNC_BASE_ADDRESS=${NOVA_NOVNC_BASE_ADDRESS}RI
|
||||
NOVA_NOVNC_PROXY_PORT=$NOVA_NOVNC_PROXY_PORT
|
||||
NOVA_NOVNC_PROXY_SERVICE_HOST=$NOVA_NOVNC_PROXY_SERVICE_HOST
|
||||
NOVA_SCHEDULER_LOG_FILE=$NOVA_SCHEDULER_LOG_FILE
|
||||
NOVA_VNCSERVER_LISTEN_ADDRESS=$NOVA_VNCSERVER_LISTEN_ADDRESS
|
||||
NOVA_VNCSERVER_PROXYCLIENT_ADDRESS=$NOVA_VNCSERVER_PROXYCLIENT_ADDRESS
|
||||
OVS_DB_FILE=$OVS_DB_FILE
|
||||
OVS_LOG_FILE=$OVS_LOG_FILE
|
||||
OVS_UNIXSOCK=$OVS_UNIXSOCK
|
||||
PUBLIC_INTERFACE=$NOVA_PUBLIC_INTERFACE
|
||||
PUBLIC_IP=$HOST_IP
|
||||
RABBITMQ_CLUSTER_COOKIE=$RABBITMQ_CLUSTER_COOKIE
|
||||
RABBITMQ_CLUSTER_NODES=$RABBITMQ_CLUSTER_NODES
|
||||
RABBITMQ_PASS=$RABBIT_PASSWORD
|
||||
RABBITMQ_SERVICE_HOST=$RABBITMQ_SERVICE_HOST
|
||||
RABBITMQ_SERVICE_PORT=$RABBITMQ_SERVICE_PORT
|
||||
RABBITMQ_USER=$RABBITMQ_USER
|
||||
RABBIT_PASSWORD=$RABBIT_PASSWORD
|
||||
RABBIT_USERID=$RABBIT_USER
|
||||
ROOT_HELPER=$ROOT_HELPER
|
||||
SWIFT_ACCOUNT_SVC_BIND_IP=$SWIFT_ACCOUNT_SVC_BIND_IP
|
||||
SWIFT_ACCOUNT_SVC_BIND_PORT=$SWIFT_ACCOUNT_SVC_BIND_PORT
|
||||
SWIFT_ACCOUNT_SVC_DEVICES=$SWIFT_ACCOUNT_SVC_DEVICES
|
||||
SWIFT_ACCOUNT_SVC_MOUNT_CHECK=$SWIFT_ACCOUNT_SVC_MOUNT_CHECK
|
||||
SWIFT_ADMIN_USER=$SWIFT_ADMIN_USER
|
||||
SWIFT_API_SERVICE_HOST=$SWIFT_API_SERVICE_HOST
|
||||
SWIFT_CONTAINER_SVC_BIND_IP=$PUBLIC_IP
|
||||
SWIFT_CONTAINER_SVC_BIND_PORT=$SWIFT_CONTAINER_SVC_BIND_PORT
|
||||
SWIFT_CONTAINER_SVC_DEVICES=$SWIFT_CONTAINER_SVC_DEVICES
|
||||
SWIFT_CONTAINER_SVC_MOUNT_CHECK=$SWIFT_CONTAINER_SVC_MOUNT_CHECK
|
||||
SWIFT_DIR=$SWIFT_DIR
|
||||
SWIFT_HASH_PATH_SUFFIX=$SWIFT_HASH_PATH_SUFFIX
|
||||
SWIFT_KEYSTONE_PASSWORD=$SWIFT_KEYSTONE_PASSWORD
|
||||
SWIFT_KEYSTONE_USER=$SWIFT_KEYSTONE_USER
|
||||
SWIFT_OBJECT_SVC_BIND_IP=$SWIFT_OBJECT_SVC_BIND_IP
|
||||
SWIFT_OBJECT_SVC_BIND_PORT=$SWIFT_OBJECT_SVC_BIND_PORT
|
||||
SWIFT_OBJECT_SVC_DEVICES=$SWIFT_OBJECT_SVC_DEVICES
|
||||
SWIFT_OBJECT_SVC_MOUNT_CHECK=$SWIFT_OBJECT_SVC_MOUNT_CHECK
|
||||
SWIFT_OBJECT_SVC_PIPELINE=$SWIFT_OBJECT_SVC_PIPELINE
|
||||
SWIFT_PROXY_ACCOUNT_AUTOCREATE=$SWIFT_PROXY_ACCOUNT_AUTOCREATE
|
||||
SWIFT_PROXY_AUTH_PLUGIN=$SWIFT_PROXY_AUTH_PLUGIN
|
||||
SWIFT_PROXY_BIND_IP=$SWIFT_PROXY_BIND_IP
|
||||
SWIFT_PROXY_BIND_PORT=$SWIFT_PROXY_BIND_PORT
|
||||
SWIFT_PROXY_DELAY_AUTH_DECISION=$SWIFT_PROXY_DELAY_AUTH_DECISION
|
||||
SWIFT_PROXY_DIR=$SWIFT_PROXY_DIR
|
||||
SWIFT_PROXY_OPERATOR_ROLES=$SWIFT_PROXY_OPERATOR_ROLES
|
||||
SWIFT_PROXY_PASSWORD=$SWIFT_PROXY_PASSWORD
|
||||
SWIFT_PROXY_PIPELINE_MAIN=$SWIFT_PROXY_PIPELINE_MAIN
|
||||
SWIFT_PROXY_PROJECT_DOMAIN_ID=$SWIFT_PROXY_PROJECT_DOMAIN_ID
|
||||
SWIFT_PROXY_PROJECT_NAME=$SWIFT_PROXY_PROJECT_NAME
|
||||
SWIFT_PROXY_SIGNING_DIR=$SWIFT_PROXY_SIGNING_DIR
|
||||
SWIFT_PROXY_USER_DOMAIN_ID=$SWIFT_PROXY_USER_DOMAIN_ID
|
||||
SWIFT_PROXY_USERNAME=$SWIFT_PROXY_USERNAME
|
||||
SWIFT_USER=$SWIFT_USER
|
||||
SWIFT_OBJECT_SVC_RING_NAME=${SWIFT_OBJECT_SVC_RING_NAME}
|
||||
SWIFT_OBJECT_SVC_RING_PART_POWER=${SWIFT_OBJECT_SVC_RING_PART_POWER}
|
||||
SWIFT_OBJECT_SVC_RING_REPLICAS=${SWIFT_OBJECT_SVC_RING_REPLICAS}
|
||||
SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS=${SWIFT_OBJECT_SVC_RING_MIN_PART_HOURS}
|
||||
SWIFT_OBJECT_SVC_RING_HOSTS=${SWIFT_OBJECT_SVC_RING_HOSTS}
|
||||
SWIFT_OBJECT_SVC_RING_DEVICES=${SWIFT_OBJECT_SVC_RING_DEVICES}
|
||||
SWIFT_OBJECT_SVC_RING_WEIGHTS=${SWIFT_OBJECT_SVC_RING_WEIGHTS}
|
||||
SWIFT_OBJECT_SVC_RING_ZONES=${SWIFT_OBJECT_SVC_RING_ZONES}
|
||||
SWIFT_CONTAINER_SVC_RING_NAME=${SWIFT_CONTAINER_SVC_RING_NAME}
|
||||
SWIFT_CONTAINER_SVC_RING_PART_POWER=${SWIFT_CONTAINER_SVC_RING_PART_POWER}
|
||||
SWIFT_CONTAINER_SVC_RING_REPLICAS=${SWIFT_CONTAINER_SVC_RING_REPLICAS}
|
||||
SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS=${SWIFT_CONTAINER_SVC_RING_MIN_PART_HOURS}
|
||||
SWIFT_CONTAINER_SVC_RING_HOSTS=${SWIFT_CONTAINER_SVC_RING_HOSTS}
|
||||
SWIFT_CONTAINER_SVC_RING_DEVICES=${SWIFT_CONTAINER_SVC_RING_DEVICES}
|
||||
SWIFT_CONTAINER_SVC_RING_WEIGHTS=${SWIFT_CONTAINER_SVC_RING_WEIGHTS}
|
||||
SWIFT_CONTAINER_SVC_RING_ZONES=${SWIFT_CONTAINER_SVC_RING_ZONES}
|
||||
SWIFT_ACCOUNT_SVC_RING_NAME=${SWIFT_ACCOUNT_SVC_RING_NAME}
|
||||
SWIFT_ACCOUNT_SVC_RING_PART_POWER=${SWIFT_ACCOUNT_SVC_RING_PART_POWER}
|
||||
SWIFT_ACCOUNT_SVC_RING_REPLICAS=${SWIFT_ACCOUNT_SVC_RING_REPLICAS}
|
||||
SWIFT_ACCOUNT_SVC_RING_MIN_PART_HOURS=${SWIFT_ACCOUNT_SVC_RING_MIN_PART_HOURS}
|
||||
SWIFT_ACCOUNT_SVC_RING_HOSTS=${SWIFT_ACCOUNT_SVC_RING_HOSTS}
|
||||
SWIFT_ACCOUNT_SVC_RING_DEVICES=${SWIFT_ACCOUNT_SVC_RING_DEVICES}
|
||||
SWIFT_ACCOUNT_SVC_RING_WEIGHTS=${SWIFT_ACCOUNT_SVC_RING_WEIGHTS}
|
||||
SWIFT_ACCOUNT_SVC_RING_ZONES=${SWIFT_ACCOUNT_SVC_RING_ZONES}
|
||||
TEMP_FILE=$TEMP_FILE
|
||||
TENANT_NETWORK_TYPES=$TENANT_NETWORK_TYPES
|
||||
TOKEN_DRIVER=$TOKEN_DRIVER
|
||||
TOKEN_PROVIDER=$TOKEN_PROVIDER
|
||||
TYPE_DRIVERS=$TYPE_DRIVERS
|
||||
USE_NAMESPACES=$USE_NAMESPACES
|
||||
USE_STDERR=$USE_STDERR
|
||||
VERBOSE_LOGGING=$VERBOSE_LOGGING
|
||||
ZAQAR_KEYSTONE_USER=$ZAQAR_KEYSTONE_USER
|
||||
ZAQAR_SERVER_SERVICE_PORT=$ZAQAR_SERVER_SERVICE_PORT
|
||||
|
||||
EOF
|
||||
echo Please customize your FLAT_INTERFACE to a different network then your
|
||||
echo main network. The FLAT_INTERFACE is used for inter-VM communication.
|
||||
echo the FLAT_INTERFACE should not have an IP address assigned.
|
||||
|
@ -16,11 +16,7 @@ export LC_ALL
|
||||
REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
|
||||
cd "$(dirname "$REAL_PATH")/.."
|
||||
|
||||
NETWORK_MANAGER=$(grep -sri NETWORK_MANAGER ./compose/openstack.env | cut -f2 -d'=')
|
||||
if [[ -z "$NETWORK_MANAGER" ]]; then
|
||||
echo 'No network manager defined in ./compose/openstack.env, defaulting to "neutron".'
|
||||
NETWORK_MANAGER="neutron"
|
||||
fi
|
||||
NETWORK_MANAGER="neutron"
|
||||
|
||||
# Test for credentials set
|
||||
if [[ "${OS_USERNAME}" == "" ]]; then
|
||||
|
@ -1,157 +0,0 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This script can be used to interact with kolla.
|
||||
|
||||
# Move to top level directory
|
||||
REAL_PATH=$(python -c "import os,sys;print os.path.realpath('$0')")
|
||||
cd "$(dirname "$REAL_PATH")/.."
|
||||
|
||||
. tools/validate-docker-execute
|
||||
|
||||
NETWORK_MANAGER=$(grep -sri NETWORK_MANAGER ./compose/openstack.env | cut -f2 -d'=')
|
||||
if [[ -z "$NETWORK_MANAGER" ]]; then
|
||||
echo 'No network manager defined in ./compose/openstack.env, defaulting to "neutron".'
|
||||
NETWORK_MANAGER="neutron"
|
||||
fi
|
||||
|
||||
function process {
|
||||
local service=$1
|
||||
echo "$ACTION $service"
|
||||
docker-compose -f ./compose/${service}.yml $COMPOSE_CMD
|
||||
if [[ $? -ne 0 ]]; then
|
||||
echo "Call docker-compose -f ./compose/${service}.yml $COMPOSE_CMD fail."
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function process_all {
|
||||
process rabbitmq
|
||||
process mariadb
|
||||
process keystone
|
||||
process glance-api-registry
|
||||
process nova-api-conductor-scheduler-consoleauth-novncproxy
|
||||
if [[ "${NETWORK_MANAGER}" == "nova" ]] ; then
|
||||
process nova-compute-network
|
||||
else
|
||||
# Defaulting to neutron
|
||||
process nova-compute
|
||||
process neutron-server
|
||||
process neutron-linuxbridge-agent
|
||||
process neutron-agents
|
||||
fi
|
||||
process heat-api-engine
|
||||
process magnum-api-conductor
|
||||
process horizon
|
||||
process cinder-api-scheduler
|
||||
process cinder-backup
|
||||
process cinder-volume
|
||||
process ceilometer
|
||||
# TODO(coolsvap) add again with resolution for #LP1478145
|
||||
#process gnocchi
|
||||
}
|
||||
|
||||
function check_selinux {
|
||||
# Check for SELinux in Enforcing mode and exit if found
|
||||
if [[ -x /usr/sbin/getenforce ]]; then
|
||||
if [[ $(/usr/sbin/getenforce) == "Enforcing" ]]; then
|
||||
echo "You must execute this script without SELinux enforcing mode."
|
||||
echo "Turn off SELinux enforcing mode by running:"
|
||||
echo "$ sudo setenforce permissive"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
function pre_start {
|
||||
check_selinux
|
||||
|
||||
if [[ -r ./openrc ]]; then
|
||||
# Source openrc for commands
|
||||
source ./openrc
|
||||
else
|
||||
echo 'Could not find ./openrc; bootstrap your environment with "./tools/genenv".'
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function post_start {
|
||||
echo -n "Waiting for OpenStack services to become available"
|
||||
|
||||
until [ $(nova service-list 2>&1 | grep -c enabled) -ge 4 ]; do
|
||||
echo -n .
|
||||
sleep 2
|
||||
done
|
||||
|
||||
until [ $(neutron agent-list 2>&1 | grep -c ':-)') -ge 4 ]; do
|
||||
echo -n .
|
||||
sleep 2
|
||||
done
|
||||
echo " done"
|
||||
|
||||
echo Example Usage:
|
||||
echo source openrc # source keystone credentials
|
||||
|
||||
echo Configure your environment once by running:
|
||||
echo tools/init-runonce
|
||||
}
|
||||
|
||||
function usage {
|
||||
cat <<EOF
|
||||
Usage: $0 COMMAND
|
||||
|
||||
Commands:
|
||||
pull Pull all of the Docker images
|
||||
start Start all kolla containers
|
||||
status List running kolla containers
|
||||
stop Stop all kolla containers
|
||||
restart Restart all kolla containers
|
||||
destroy Kill and remove all kolla containers and volumes
|
||||
EOF
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
|
||||
(pull)
|
||||
ACTION="Pulling"
|
||||
COMPOSE_CMD="pull"
|
||||
process_all
|
||||
;;
|
||||
|
||||
(start)
|
||||
ACTION="Starting"
|
||||
COMPOSE_CMD="up -d"
|
||||
pre_start
|
||||
process_all
|
||||
post_start
|
||||
;;
|
||||
|
||||
(restart)
|
||||
ACTION="Restarting"
|
||||
COMPOSE_CMD="restart"
|
||||
process_all
|
||||
;;
|
||||
|
||||
(status)
|
||||
ACTION="Status of"
|
||||
COMPOSE_CMD="ps"
|
||||
process_all
|
||||
;;
|
||||
|
||||
(stop)
|
||||
ACTION="Stopping"
|
||||
COMPOSE_CMD="stop"
|
||||
process_all
|
||||
;;
|
||||
|
||||
(destroy)
|
||||
ACTION="Destroying"
|
||||
COMPOSE_CMD="kill"
|
||||
process_all
|
||||
COMPOSE_CMD="rm -f -v"
|
||||
process_all
|
||||
;;
|
||||
|
||||
(*) usage
|
||||
exit 0
|
||||
;;
|
||||
esac
|
Loading…
Reference in New Issue
Block a user