1.052
Bearbeitungen
Zeile 20: | Zeile 20: | ||
'# /etc/kubernetes/manifests/kube-apiserver.yaml<syntaxhighlight lang="yaml" line="1"> | '# /etc/kubernetes/manifests/kube-apiserver.yaml | ||
<syntaxhighlight lang="yaml" line="1"> | |||
spec: | spec: | ||
containers: | containers: | ||
Zeile 54: | Zeile 55: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.7/config/manifests/metallb-native.yaml | kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.7/config/manifests/metallb-native.yaml | ||
</syntaxhighlight>address_pool.yaml<syntaxhighlight lang="yaml" line="1"> | </syntaxhighlight> | ||
address_pool.yaml | |||
<syntaxhighlight lang="yaml" line="1"> | |||
apiVersion: metallb.io/v1beta1 | apiVersion: metallb.io/v1beta1 | ||
kind: IPAddressPool | kind: IPAddressPool | ||
Zeile 84: | Zeile 87: | ||
Reverse Proxy um mehrere Domains auf einer IP erreichbar zu machen. | Reverse Proxy um mehrere Domains auf einer IP erreichbar zu machen. | ||
values.yaml<syntaxhighlight lang="yaml" line="1"> | values.yaml | ||
<syntaxhighlight lang="yaml" line="1"> | |||
controller: | controller: | ||
config: | config: | ||
proxy-buffer-size: " | proxy-buffer-size: "8k" | ||
</syntaxhighlight>Wenn | |||
#extraArgs: | |||
#default-ssl-certificate: "default/my-tls-secret" | |||
</syntaxhighlight>'''Hinweise:''' | |||
''Wenn Header zu groß dann 502 Fehler. Deswegen auf 8k erhöhen'' | |||
''Für TLS benötigen wir ein 'Secret" mit dem Privat Key und dem Public Certificate für die Domain, die später für das Dahsboard genutzt werden soll.'' | |||
''Dieses kann man als Standard direkt in der Config für Ingress-Nginx hinerlegen oder später im Ingress.'' | |||
<syntaxhighlight lang="bash"> | |||
helm upgrade --install ingress-nginx ingress-nginx \ | helm upgrade --install ingress-nginx ingress-nginx \ | ||
--repo https://kubernetes.github.io/ingress-nginx \ | --repo https://kubernetes.github.io/ingress-nginx \ | ||
Zeile 96: | Zeile 110: | ||
=== OAUTH2 Proxy installieren === | |||
=== | |||
Authentifizierung gegen Keyclok und Token Weiterleitung an Dashboard | Authentifizierung gegen Keyclok und Token Weiterleitung an Dashboard | ||
values.yaml<syntaxhighlight lang="yaml" line="1"> | values.yaml | ||
<syntaxhighlight lang="yaml" line="1"> | |||
extraArgs: | extraArgs: | ||
provider: keycloak-oidc | provider: keycloak-oidc | ||
Zeile 140: | Zeile 151: | ||
=== Dem Keycloak Benutzer die Admin Rolle zuweisen === | === Dem Keycloak Benutzer die Admin Rolle zuweisen === | ||
oidc-role.yaml<syntaxhighlight lang="yaml"> | oidc-role.yaml | ||
<syntaxhighlight lang="yaml"> | |||
apiVersion: rbac.authorization.k8s.io/v1 | apiVersion: rbac.authorization.k8s.io/v1 | ||
kind: ClusterRoleBinding | kind: ClusterRoleBinding | ||
Zeile 155: | Zeile 167: | ||
</syntaxhighlight>'''''Hinweis:''''' | </syntaxhighlight>'''''Hinweis:''''' | ||
Der Benutzername (subjects.name) entspricht dem <code>oidc-username-claim</code> aus der "kube-apiserver.yaml".<syntaxhighlight lang="bash"> | Der Benutzername (subjects.name) entspricht dem <code>oidc-username-claim</code> aus der "kube-apiserver.yaml". | ||
<syntaxhighlight lang="bash"> | |||
kubectl apply -f oidc-role.yaml | kubectl apply -f oidc-role.yaml | ||
</syntaxhighlight> | </syntaxhighlight> |