Setup Shell Variable Values
Create Shell Varaible Values helps you store all of the necessary values that required in installation process.
Global Shell Variable Values
Section titled “Global Shell Variable Values”These values should be determined during the Planning Phase.
Example:
| Information | Your Value | Note |
|---|---|---|
| Organisation Name | foobar | Short name |
| Keycloak Realm Name | foobar-opstella | Realm name |
| Domain Name | example.com | Base domain |
| Storage Service | seaweedfs | S3 compatible storage service |
| TLS Certificate | example.com | Wildcard certificate & key for domains |
Create Variable Files
Section titled “Create Variable Files”Store any globally applicated variables in the following directory.
$HOME/opstella-installation/shell-values/global.vars.sh
Define your organization name and base domain first to ensure they are correctly populated in the file.
Define your organization name and base domain first to ensure they are correctly populated in the file.
export ORGANIZATION_NAME="foobar"export BASE_DOMAIN="example.com"cat <<EOF > $HOME/opstella-installation/shell-values/global.vars.shexport ORGANIZATION_NAME="${ORGANIZATION_NAME}"export BASE_DOMAIN="${BASE_DOMAIN}"cat <<EOF > $HOME/opstella-installation/shell-values/global.vars.shexport ORGANIZATION_NAME="${ORGANIZATION_NAME}"export BASE_DOMAIN="${BASE_DOMAIN}"
export KEYCLOAK_DOMAIN="idp.${BASE_DOMAIN}"
export GITLAB_DOMAIN="gitlab.${BASE_DOMAIN}"
export SONARQUBE_DOMAIN="sonarqube.${BASE_DOMAIN}"export HARBOR_DOMAIN="harbor.${BASE_DOMAIN}"export DEFECTDOJO_DOMAIN="defectdojo.${BASE_DOMAIN}"export VAULT_DOMAIN="vault.${BASE_DOMAIN}"
export GRAFANA_DASHBOARD_DOMAIN="grafana.${BASE_DOMAIN}"export GRAFANA_MIMIR_DOMAIN="mimir.${BASE_DOMAIN}"export GRAFANA_LOKI_DOMAIN="loki.${BASE_DOMAIN}"export GRAFANA_TEMPO_DOMAIN="tempo.${BASE_DOMAIN}"
export KEYCLOAK_REALM="foobar-opstella"
export ARGOCD_DOMAIN="argocd.${BASE_DOMAIN}"
EOFBy Kubernetes Cluster(s) Shell Variable Values
Section titled “By Kubernetes Cluster(s) Shell Variable Values”Store any by Kubernetes Cluster(s) variables in the following directory.
$HOME/opstella-installation/shell-values/kubernetes/**.vars.sh
🟢 Management
Section titled “🟢 Management”Create $HOME/opstella-installation/shell-values/kubernetes/management_cluster.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/kubernetes/management_cluster.vars.sh
export K8S_INTERNAL_DOMAIN="cluster.local"export K8S_INGRESSCLASS_NAME="nginx"export K8S_STORAGECLASS_NAME="longhorn"export K8S_INGRESS_TLS_CERTIFICATE_SECRET_NAME="wildcard-${BASE_DOMAIN}-tls"EOF🟦 Non-Production Workload
Section titled “🟦 Non-Production Workload”Create $HOME/opstella-installation/shell-values/kubernetes/nonprod_cluster.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/kubernetes/nonprod_cluster.vars.sh
export ARGOCD_DOMAIN="argocd-nonprod.${BASE_DOMAIN}"export HEADLAMP_DOMAIN="headlamp-nonprod.${BASE_DOMAIN}"
export K8S_INTERNAL_DOMAIN="cluster.local"export K8S_INGRESSCLASS_NAME="nginx"export K8S_STORAGECLASS_NAME="longhorn"export K8S_INGRESS_TLS_CERTIFICATE_SECRET_NAME="wildcard-${BASE_DOMAIN}-tls"EOF🟥 Production Workload
Section titled “🟥 Production Workload”Create $HOME/opstella-installation/shell-values/kubernetes/prod_cluster.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/kubernetes/prod_cluster.vars.sh
export ARGOCD_DOMAIN="argocd-prod.${BASE_DOMAIN}"export HEADLAMP_DOMAIN="headlamp-prod.${BASE_DOMAIN}"
export K8S_INTERNAL_DOMAIN="cluster.local"export K8S_INGRESSCLASS_NAME="nginx"export K8S_STORAGECLASS_NAME="longhorn"export K8S_INGRESS_TLS_CERTIFICATE_SECRET_NAME="wildcard-${BASE_DOMAIN}-tls"EOFTools-oriented Shell Variable Values
Section titled “Tools-oriented Shell Variable Values”Store any by Tools-oriented applicated variables in the following directory.
$HOME/opstella-installation/shell-values/tools/**.vars.sh
GitLab
Section titled “GitLab”- Domain:
GITLAB_DOMAIN
$HOME/opstella-installation/shell-values/tools/gitlab.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/tools/gitlab.vars.shexport GITLAB_DOMAIN="gitlab.${BASE_DOMAIN}"EOFHarbor
Section titled “Harbor”-
Admin Password:
HARBOR_ADMIN_PASSWORDexport HARBOR_ADMIN_PASSWORD="CHANGEME" -
Domain:
HARBOR_DOMAIN
$HOME/opstella-installation/shell-values/tools/harbor.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/tools/harbor.vars.shexport HARBOR_DOMAIN="harbor.${BASE_DOMAIN}"export HARBOR_ADMIN_USERNAME="admin"export HARBOR_ADMIN_PASSWORD="${HARBOR_ADMIN_PASSWORD}"EOFSonarQube
Section titled “SonarQube”-
Admin Password:
SONARQUBE_ADMIN_PASSWORDexport SONARQUBE_ADMIN_PASSWORD="CHANGEME" -
Domain:
SONARQUBE_DOMAIN
$HOME/opstella-installation/shell-values/tools/sonarqube.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/tools/sonarqube.vars.shexport SONARQUBE_DOMAIN="sonarqube.${BASE_DOMAIN}"export SONARQUBE_ADMIN_USERNAME="admin"export SONARQUBE_ADMIN_PASSWORD="${SONARQUBE_ADMIN_PASSWORD}"EOFDefectDojo
Section titled “DefectDojo”-
Admin Password:
DEFECTDOJO_ADMIN_PASSWORDexport DEFECTDOJO_ADMIN_PASSWORD="CHANGEME" -
DefectDojo Domain:
DEFECTDOJO_DOMAIN
$HOME/opstella-installation/shell-values/tools/defectdojo.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/tools/defectdojo.vars.shexport DEFECTDOJO_DOMAIN="defectdojo.${BASE_DOMAIN}"export DEFECTDOJO_ADMIN_USERNAME="defectdojo"export DEFECTDOJO_ADMIN_PASSWORD="${DEFECTDOJO_ADMIN_PASSWORD}"export DEFECTDOJO_ADMIN_EMAIL="admin@${DEFECTDOJO_DOMAIN}"EOFHashicorp Vault
Section titled “Hashicorp Vault”- Domain:
VAULT_DOMAIN
$HOME/opstella-installation/shell-values/tools/vault.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/tools/vault.vars.shexport VAULT_DOMAIN="vault.${BASE_DOMAIN}"EOFObservability
Section titled “Observability”$HOME/opstella-installation/shell-values/tools/observability.vars.sh
cat <<EOF > $HOME/opstella-installation/shell-values/tools/observability.vars.shexport GRAFANA_DASHBOARD_DOMAIN="grafana.${BASE_DOMAIN}"export GRAFANA_DASHBOARD_ADMIN_USERNAME="admin"export GRAFANA_DASHBOARD_ADMIN_PASSWORD="CHANGEME"
export GRAFANA_MIMIR_DOMAIN="mimir.${BASE_DOMAIN}"
export GRAFANA_LOKI_DOMAIN="loki.${BASE_DOMAIN}"
export GRAFANA_TEMPO_DOMAIN="tempo.${BASE_DOMAIN}"EOFLoad Global Shell Variables
Section titled “Load Global Shell Variables”Load your Global Shell Variables in your shell session.
source $HOME/opstella-installation/shell-values/global.vars.shLoad Global Shell Variables
Section titled “Load Global Shell Variables”Load your Global Shell Variables in your shell session.
source $HOME/opstella-installation/shell-values/global.vars.shFinished?
Use the below navigation to proceed