OpenAppStack bootstrap script
This collection of scripts allows you to easily set up a new OpenAppStack cluster.
As part of the bootstrap process a special control shell is installed (in the form of a Docker image) which contains utilities to manage your cluster.
Prerequisites
-
You need to have ssh access (either as root, or as another user that can
sudo
) to the machines that will make up your cluster. -
You need
ansible >= 2.5
installed on your workstation to run the bootstrap scripts. Please install it using your system package manager. In the case your system package manager doesn't provideansible >= 2.5
you can install it via the python package manager like this:pip3 install --user -r ansible/requirements.txt
Hint: If you get a segmentation fault using above command, you can add
--no-use-wheel
to it.
Bootstrapping a new cluster
Configure your cluster
Copy ansible/inventory.yml.example
to ansible/inventory.yml
and edit it to
reflect your cluster.
Also copy ansible/group_vars/cluster/settings.yml.example
to
ansible/group_vars/cluster/settings.yml
and edit as you see fit.
Install
To run the bootstrap process, move into the ansible
directory, then run
ansible-playbook bootstrap.yml
Managing an existing cluster
Login to your cluster with:
ssh USER@SERVER
where SERVER
is the address of the master machine of your cluster and
USER
the ansible_user
you configured in ansible/inventory.yml
.
Some programs that are installed on your cluster:
-
kubectl
is the Kubernetes control program. For example, runkubectl get pod
to see a list of pods that currently exist in your cluster. Runkubectl --help
for help. -
helm
is the "Kubernetes package manager". Usehelm ls
to see what apps are installed in your cluster. You can also use it to perform manual upgrades; seehelm --help
. -
helmfile
is a high-level tool to manage your app installations. For example, runhelmfile -e oas diff
to view the differences between what's currently installed and what should be installed according to the OpenAppStack installation plan.