airship-in-a-bottle/manifests/basic_ucp/readme.md

89 lines
2.6 KiB
Markdown

# Artifacts to deploy a basic UCP control plane
The scripts and artifacts in this directory can be used to deploy
a basic UCP control plane on a single node.
1. Generate Promenade configuration and certificates
2. Run Promenade genesis process to bootstrap Kubernetes
3. Deploy Ceph using Armada
4. Deploy UCP backend services (MariaDB, Postgres) using Armada
5. Deploy Drydock and MaaS using Armada
## Setup environment for your environment
This deployment process utilizes several environment variables to
customize the deployment to your environment. The set-env.sh file has
an example environment known to work.
* CEPH\_CLUSTER\_NET
The CIDR of the network(s) that Ceph will utilize for storage replication and
other intra-cluster communication. Can be a comma-separated list of CIDRs.
* CEPH\_PUBLIC\_NET
The CIDR of the network(s) that Ceph will utilize for accepting requests
for storage provisioning. Can be a comma-separated list of CIDRs.
* CEPH\_OSD\_DIR
The directory Ceph will use for OSD storage
* GENESIS\_NODE\_IP
The IP address of the genesis node or VM.
* MASTER\_NODE\_IP
The IP address of the second node to be added to the cluster. Scripting does not yet
support deployment of this node, but it is *REQUIRED* to be included in the bootstrap
configuration
* DRYDOCK\_NODE\_IP
The IP address of the node that will host the Drydock container. Defaults to the genesis
node which is normally correct.
* MAAS\_NODE\_IP
The IP address of the node that will hsot the MaaS container. Defaults to the genesis
node which is normally correct.
* NODE\_NET\_IFACE
The NIC interface on each node that Calico should use to access the underlay network. Defaults
to 'eth0'
* PROXY\_ADDRESS
If a HTTP/HTTPS proxy is needed for public access, specify the address here in URL format.
* PROXY\_ENABLED
Whether to enable proxy use. Should be 'true' or 'false', defaults to 'false'.
* GENESIS\_NODE\_NAME
The hostname of the genesis node. REQUIRED to be accurate. Defaults to 'node1'
* MASTER\_NODE\_NAME
The hostname of the master (or second) node. REQUIRED to be accurate. Defaults to 'node2'
* \*\_CHART\_REPO
The Git repository used for pulling charts. \* can be any of 'CEPH', 'DRYDOCK' or 'MAAS'
* \*\_CHART\_BRANCH
The Git branch used for pulling charts. \* can be any of 'CEPH', 'DRYDOCK' or 'MAAS'
* \*\_IMAGE
The Docker image file used for deployments and running commands. \* can be any of 'DRYDOCK',
'ARMADA', 'PROMENADE'.
## Run the deployment
Once all of the above environmental variables are correct, run `deploy_ucp.sh` as root.