-
-
Notifications
You must be signed in to change notification settings - Fork 78
Installation using Kubernetes
matamorphosis edited this page Jan 28, 2022
·
2 revisions
Support for Scrummage installations is provided for tier 3 and 4 monthly sponsors, and ad-hoc support is provided based on the relevant time-limit. For more details, you can contact us via the sponsors page.
PLEASE FOLLOW CAREFULLY AS THERE IS INFORMATION PRINTED IN THE TERMINAL THAT WILL NEED TO BE RETAINED
Docker automates almost the entire installation process and doesn't give you the choice of OS, Ubuntu 20.04 is the current distribution used within the container.
If you want a more in depth understanding of the installation steps, please check out the Wiki page here
This guide assumes you have a Kubernetes cluster with Docker and know the essentials of Kubernetes and Docker.
- It is recommended that you change configuration for things like API keys, via the "Edit Inputs", "Edit Outputs", and "Edit Core" functions on the settings page.
- Unlike the regular installation of Scrummage, the IP address displayed on run is not the IP address you access Scrummage from. This is because Scrummage is running in a Docker container in the Kubernetes cluster in a virtualised network. This network uses network address translation (NAT) and the Kubernetes Helm Chart file, demoed below, maps the internal port 5000 in your virtualised environment to port 5000 on your host, so you can access it. Thus, you need to access Scrummage using the NAT IP address. On a Linux host you can use the
kubectl get servicescommand to find the ClusterIP address on your host, which will be the IP address used to access Scrummage.
- Navigate to the Helm Chart file in the
installationdirectory:
user@linux:~$ cd Scrummage/installation/kubernetes_helm- Use the
kubectlutility to deploy the application and service
user@linux:~/Scrummage/installation/kubernetes_helm$ kubectl apply -f scrummage_helm.yaml
deployment.apps/scrummage configured
service/scrummage created- Verify the service is up and running and get the IP address using the
kubectlutility
user@linux:~/Scrummage/installation/kubernetes_helm$ kubectl get services
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
...
scrummage ClusterIP <YOUR-IP-HERE> <none> 5000/TCP 31s- When the Scrummage container runs for the first time, it logs a temporary password to the screen (stdout), this isn't visible using Kubernetes without checking the logs, again this information can be extracted using the
kubectlutility
user@linux:~/Scrummage/installation/kubernetes_helm$ kubectl get pods
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
...
NAME READY STATUS RESTARTS AGE
scrummage 1/1 Running 0 39m
user@linux:~/Scrummage/installation/kubernetes_helm$ kubectl logs scrummage
---EXAMPLE OUTPUT---
* Starting PostgreSQL 12 database server
...done.
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
----------------------------------------------------------------------------------------------------
This is the admin password, this will only be displayed on the first run of Scrummage:
<PASSWORD WILL BE DISPLAYED HERE>
----------------------------------------------------------------------------------------------------
...- Access the application using the IP address, please note Scrummage can take up to 10 minutes to pull and deploy, so if the application can't be accessed right away, wait a few minutes and try again.