kubernetes deployment strategy notes
This commit is contained in:
@@ -0,0 +1 @@
|
||||
the initial deployment and configuration of ArgoCD on my cluster was a pretty straightforward helm chart deployment. However, I did run into some issues with how ArgoCD handles SSL that I leveraged AI (Gemini) to help quickly troubleshoot. Beyond that, creating a project, adding a repo, creating an application and deploying nginx was mostly handled referring to my personal notes.
|
||||
@@ -0,0 +1,19 @@
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
annotations:
|
||||
name: letsencrypt
|
||||
namespace: argocd
|
||||
spec:
|
||||
commonName: 'argocd.k8s.lab.cudanet.org'
|
||||
dnsNames:
|
||||
- 'argocd.k8s.lab.cudanet.org'
|
||||
duration: 2160h0m0s
|
||||
issuerRef:
|
||||
kind: ClusterIssuer
|
||||
name: letsencrypt
|
||||
renewBefore: 360h0m0s
|
||||
secretName: letsencrypt
|
||||
usages:
|
||||
- server auth
|
||||
- client auth
|
||||
@@ -0,0 +1,24 @@
|
||||
NAME: argocd
|
||||
LAST DEPLOYED: Fri Oct 30 13:32:17 2026
|
||||
NAMESPACE: argocd
|
||||
STATUS: deployed
|
||||
REVISION: 1
|
||||
DESCRIPTION: Install complete
|
||||
TEST SUITE: None
|
||||
NOTES:
|
||||
In order to access the server UI you have the following options:
|
||||
|
||||
1. kubectl port-forward service/argocd-server -n argocd 8080:443
|
||||
|
||||
and then open the browser on http://localhost:8080 and accept the certificate
|
||||
|
||||
2. enable ingress in the values file `server.ingress.enabled` and either
|
||||
- Add the annotation for ssl passthrough: https://argo-cd.readthedocs.io/en/stable/operator-manual/ingress/#option-1-ssl-passthrough
|
||||
- Set the `configs.params."server.insecure"` in the values file and terminate SSL at your ingress: https://argo-cd.readthedocs.io/en/stable/operator-manual/ingress/#option-2-multiple-ingress-objects-and-hosts
|
||||
|
||||
|
||||
After reaching the UI the first time you can login with username: admin and the random password generated during the installation. You can find the password by running:
|
||||
|
||||
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
|
||||
|
||||
(You should delete the initial secret afterwards as suggested by the Getting Started Guide: https://argo-cd.readthedocs.io/en/stable/getting_started/#4-login-using-the-cli)
|
||||
@@ -0,0 +1,37 @@
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: ServersTransport
|
||||
metadata:
|
||||
name: argocd-server-transport
|
||||
namespace: argocd
|
||||
spec:
|
||||
insecureSkipVerify: true
|
||||
---
|
||||
apiVersion: traefik.io/v1alpha1
|
||||
kind: IngressRoute
|
||||
metadata:
|
||||
name: argocd-server
|
||||
namespace: argocd
|
||||
spec:
|
||||
entryPoints:
|
||||
- websecure
|
||||
routes:
|
||||
# 1. gRPC routing for Argo CD CLI and API clients
|
||||
- match: Host(`argocd.k8s.lab.cudanet.org`) && Headers(`Content-Type`, `application/grpc`)
|
||||
kind: Rule
|
||||
priority: 11
|
||||
services:
|
||||
- name: argocd-server
|
||||
port: 443
|
||||
scheme: https
|
||||
serversTransport: argocd-server-transport
|
||||
# 2. Standard Web UI traffic
|
||||
- match: Host(`argocd.k8s.lab.cudanet.org`)
|
||||
kind: Rule
|
||||
priority: 10
|
||||
services:
|
||||
- name: argocd-server
|
||||
port: 443
|
||||
scheme: https
|
||||
serversTransport: argocd-server-transport
|
||||
tls:
|
||||
secretName: argocd-tls-cert # Replace with your TLS Secret, or omit if using Traefik default cert / cert-resolver
|
||||
@@ -0,0 +1 @@
|
||||
Ci4Jz6xJVj9Zg3ER
|
||||
@@ -0,0 +1 @@
|
||||
eyJhbGciOiJSUzI1NiIsImtpZCI6InJTeEp1ZTlwbzZnUkduNk5hN2Fhc0hMTHQtRTM1RlZlcGJZX2J4OS1GSFkifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoxNzkzMzk2MzcyLCJpYXQiOjE3OTMzOTI3NzIsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwianRpIjoiMDlmZThkZWMtNmZlMy00NzMwLWEzNGYtNTlkNGNiNTE5Yzg2Iiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJoZWFkbGFtcCIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJoZWFkbGFtcCIsInVpZCI6IjMxZjYyYzRlLWRjNjMtNDQwZi05ZWU4LTBhNDY0YTU2MTNmMyJ9fSwibmJmIjoxNzkzMzkyNzcyLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6aGVhZGxhbXA6aGVhZGxhbXAifQ.t_zHac1qGD2ea3VasvoFRUN1KpN8JR-YenjOcUdTPVIVAY4E2RAveveQKUPVQ_kI-p0NEUfs_cW_p6zZMcOMicib40BS-fVhgCTvtYo2qkmUXRR-sjvNLnk69z-QF_1d-QghCvFm0kSZosyJad_HNqiFwtwhJ5w4fYd_uiAu7zHQuBXLQsLDhvuHkkp4E5zrmZomFx-XQSdAf6YoROuVpz0aEAuAK9dMRc5tmb7u21m11OhemP1DJ43efHu0vV--xLCG738jF_yqonLm7Aj4DzS9-vyNBbaji5Ola57UQLKNeDFdnzEvtvGIenuXMLwpfE9WRfsXYUngFFJKZ0M2sA
|
||||
Reference in New Issue
Block a user