treasuremap/tools/openstack
Kaspars Skels 06ffeec6b1 Sloop type and Airsloop site
Sloop type/site is a minimalistic approach to Airship with reduced
requirements towards hardware and external dependencies while keeping
all the functional features.

Major differences compared to reference site airship-seaworthy
 - Two bare-metal server setup with 1 control, and 1 compute.
   Most components are scaled to a single replica and doesn't carry
   any HA as there is only a single control plane host.
 - No requirements for DNS/certificates.
   HTTP and internal cluster DNS is used.
 - Ceph set to use the single (root) disk. This generally
   provides minimalistic no-touch ceph deployment.
   No replication of ceph data (single copy).
 - Simplified networking (no bonding).
   Two network interfaces are used by default (flat PXE, and DATA network
   with VLANs for OAM, Calico, Storage, and OpenStack Overlay)
 - Generic hostnames used (airsloop-control-1, airsloop-compute-1) that
   simplifies generation of k8s certificates
 - Usage of standard Ubuntu 16.04 GA kernel (as oppose to HWE)

Change-Id: I4944fcae7d29ed8799d810c93efb0120b6b3a105
2019-04-12 16:11:37 -05:00

42 lines
1.0 KiB
Bash
Executable File

#!/bin/bash
# Utility to execute OpenStack CLI using Heat container.
# This is an example, and should be adjusted to ones needs.
#
# Usage: openstack endpoint list
set -e
OS_CLOUD_CFG=${HOME}/.openstack/clouds.yaml
: ${TERM_OPTS:=-it}
: ${OSH_KEYSTONE_URL:='https://identity.atlantafoundry.com/v3'}
: ${OSH_REGION_NAME:='airship-seaworthy'}
: ${OSH_ADMIN_PASSWD:='password123'}
if [ ! -f $OS_CLOUD_CFG ]; then
echo " => Creating OpenStack client config"
mkdir -p ~/.openstack
tee $OS_CLOUD_CFG << EOF
clouds:
openstack_helm:
region_name: '${OSH_REGION_NAME}'
identity_api_version: 3
auth:
username: 'admin'
password: '${OSH_ADMIN_PASSWD}'
project_name: 'admin'
project_domain_name: 'default'
user_domain_name: 'default'
auth_url: '${OSH_KEYSTONE_URL}'
EOF
fi
exec sudo docker run --rm ${TERM_OPTS} --net host \
-v $(pwd):/target \
-v ${OS_CLOUD_CFG}:/etc/openstack/clouds.yaml:ro \
-e OS_CLOUD=openstack_helm \
docker.io/openstackhelm/heat:ocata openstack "$@"