| layout | title | version | date | editor | ||||
|---|---|---|---|---|---|---|---|---|
page |
IN2 DOME GitOps |
0.0.1 |
2024-05-29 |
|
- ionosctl-cli
- jq
- kubectl
- kubeseal
NOTE: to get the token, you will need to access the IONOS Cloud Panel and create a new API token: Management > Token Management > Generate Token.
ionosctl login -t <token>export IN2_DOME_DEV_DATACENTER_ID=$(ionosctl datacenter create --name in2-ssi-dev -o json | jq -r '.items[0].id')
watch ionosctl datacenter get -i $IN2_DOME_DEV_DATACENTER_IDexport IN2_DOME_DEV_K8S_CLUSTER_ID=$(ionosctl k8s cluster create --name in2-ssi-dev-k8s -o json | jq -r '.items[0].id')
watch ionosctl k8s cluster get -i $IN2_DOME_DEV_K8S_CLUSTER_IDexport IN2_DOME_DEV_K8S_DEFAULT_NODE_POOL_ID=$(ionosctl k8s nodepool create --cluster-id $DOME_K8S_CLUSTER_ID --name default-pool --node-count 4 --ram 32768 --storage-size 100 --storage-type SSD --datacenter-id $DOME_DATACENTER_ID --cpu-family "INTEL_SKYLAKE" -o json | jq -r '.items[0].id')
watch ionosctl k8s nodepool get --nodepool-id $IN2_DOME_K8S_DEFAULT_NODEPOOL_ID --cluster-id $IN2_DOME_DEV_K8S_CLUSTER_IDionosctl k8s nodepool create --cluster-id $DOME_K8S_CLUSTER_ID --name ingress-pool --node-count 1 --ram 4096 --storage-size 10 --storage-type SSD --datacenter-id $DOME_DATACENTER_ID --cpu-family "INTEL_SKYLAKE" --labels nodepool=ingressionosctl k8s kubeconfig get --cluster-id $IN2_DOME_DEV_K8S_CLUSTER_ID > in2-dome-dev-k8s-config.json
export KUBECONFIG=$(pwd)/in2-dome-dev-k8s-config.jsonkubectl config get-contextskubectl config use-context cluster-admin@in2-ssi-dev-k8skubectl create namespace argocdkubectl apply -k ./extension/ -n argocdkubectl apply -f applications/namespaces.yaml -n argocdNOTE: This environment is for dev purposes, we do not need to encrypt the secrets.
kubectl apply -f applications/sealed-secrets.yaml -n argocdkubectl apply -f applications/ingress.yaml -n argocdkubectl apply -f applications/cert-manager.yaml -n argocdYou can deploy ArgoCD Server Ingress to access to the ArgoCD UI using the external domain.
kubectl apply -k ./extension-argocd-ui/ -n argocdNOTE: You can get all the applications deployed in the argocd namespace by running the following command:
kubectl get applications -n argocdFollow the steps in: README.md
kubectl get secret argocd-initial-admin-secret -n argocd -o jsonpath="{.data.password}" | base64 -dYou can access from your machine:
kubectl port-forward svc/argocd-server -n argocd 8080:443NOTE: Open your browser and go to http://localhost:8080 and login with the
adminuser and the password get in the previous step.
Or if you installed ArgoCD Server Ingress you can Open your browser and go to
https://argocd.dome-marketplace-lcl.org and login with the admin user and
the password get in the previous step.