Skip to main content

ShamanOps Installation✨

Kubernetes


1. Pre-requisites

1.1. Have the following tool installed:

  • docker

1.2. Have the following variables:

  • shamanops_customer_id: provided by ShamanOps after registration
  • shamanops_customer_token: provided by ShamanOps after registration
  • shamanops_manifest_repository: This value is provided by the customer and refers to the URL of manifest repository in GIT platform (ex https://github.com/shamanops/example-repo.git).
  • shamanops_manifest_repository_user: This value is provided by the customer and refers to the username to access the manifest repository in GIT platform.
  • shamanops_manifest_repository_token: This value is provided by the customer and refers to the PAT to access the manifest repository in GIT platform.
  • shamanops_registry_url: This value is provided by the customer and refers to the container registry base URL (ex ghcr.io).
  • shamanops_registry_user: This value is provided by the customer and refers to the username to access the container registry.
  • shamanops_registry_password: This value is provided by the customer and refers to the token to access the container registry.

1.3. Be logged in the ShamanOps public registry

echo <shamanops_customer_token> | docker login registry.shamanops.com -u <shamanops_customer_id> --password-stdin
info

Please remember to replace the shamanops_customer_token and shamanops_customer_id with the values that the ShamanOps Team has provide you

2. Installation

note

The Kubernetes installation works with the most common cloud distributions like GKE, EKS and AKS

The installation will be guided by the installer who will explain each step.
You must select the environment for which the cluster will be used (you can choose a combination and use it for more than one enviroment).
👉 In case of an error, the installer will stop and inform the resason.

NOTICE

This installation guide assumes that you are deploying the base-stack in a cluster that has at least:

  • 950m of cpu
  • 3096Mi of memory

2.1. Normal


2.1.1. Execute the container image provided by ShamanOps

docker run --pull=always --rm -it registry.shamanops.com/installers/aks:stable

2.1.2. Login to your Kubernetes cluster with Cloud CLI or kubectl CLI

2.1.3. Execute the following command

shamanops_bs_k8s_install
tip

You can find a log file in /tmp directory

2.2. Debug


2.2.1. Execute the container image provided by ShamanOps

docker run --pull=always --rm -it registry.shamanops.com/installers/aks:stable

2.2.2. Login to your Kubernetes cluster with Cloud CLI or kubectl CLI

2.2.3. Execute the following command

shamanops_bs_k8s_install DEBUG
tip

You can find a log file in /tmp directory

3. Once installed

Once ShamanOps is succesfully installed you'll get an output that contains some values that you need to configure your CI platform.
It will look like this:

🧙 We have reached the end of the journey, all that remains is to enjoy ShamanOps!✨
URL of ArgoCD: argocd.apps.customer.com
User of ArgoCD: admin
Token of ArgoCD: dc0ca777e7a83a8f0df26

URL of Grafana: grafana.apps.customer.com
User of Grafana: admin
Token of Grafana: 4e9e9815a8328324d54e96

4. Additionals

Actions Runners Controllers (ARC)

1. Generate a fine-grained token with read and write permissions for the Self-hosted runners scope. Remember to set your organization as the resource owner

2. Execute the container image provided by ShamanOps

docker run --pull=always --rm -it registry.shamanops.com/installers/aks:stable

3. Execute the following command.

info

The installer will ask you for the fine-grained token that you've created in step 1

shamanops_bs_k8s_runner

Update Credentials

1. Execute the container image provided by ShamanOps

docker run --pull=always --rm -it registry.shamanops.com/installers/aks:stable

3. Execute the following command.

info

The script will ask you for the registry token and the manifest repository

shamanops_bs_update_credentials