![Kaspars Skels](/assets/img/avatar_default.png)
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
42 lines
1.0 KiB
Bash
Executable File
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 "$@"
|
|
|