Update Kubernetes
parent
cb872f0b92
commit
91d2615e2a
@ -44,6 +44,19 @@ MetalLB hooks into your Kubernetes cluster, and provides a network load-balancer
|
||||
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.14.4/config/manifests/metallb-native.yaml
|
||||
```
|
||||
|
||||
## Accessing the cluster from your machine
|
||||
|
||||
Kubernetes config file can be found on any of the control plane nodes at:
|
||||
```
|
||||
/etc/rancher/k3s/k3s.yaml
|
||||
```
|
||||
|
||||
You can copy that file over to your PC to
|
||||
```
|
||||
~/.kube/config
|
||||
```
|
||||
And edit the server url from 127.0.0.1 to the ip addres of one of the control plane nodes
|
||||
|
||||
### MetalLB IP pool
|
||||
Create a new yaml file with the following content and be sure to customize your ip range:
|
||||
```
|
||||
@ -211,3 +224,74 @@ then apply it:
|
||||
```
|
||||
kubectl apply -f file.yml
|
||||
```
|
||||
|
||||
# Kubernetes Dashboard
|
||||
|
||||
I you want to be extra fancy you can deploy a web UI Dashboard for your kubernetes.
|
||||
You need HELM for this one
|
||||
```
|
||||
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/
|
||||
helm repo update
|
||||
```
|
||||
|
||||
Fetch the default values file:
|
||||
```
|
||||
helm show values kubernetes-dashboard/kubernetes-dashboard > values.yaml
|
||||
```
|
||||
|
||||
Edit it and enable ingress:
|
||||
```
|
||||
ingress:
|
||||
enabled: true
|
||||
hosts:
|
||||
- dash..my.cluster.com
|
||||
ingressClassName: nginx
|
||||
```
|
||||
|
||||
And install it with the modified values file:
|
||||
```
|
||||
helm upgrade --install kubernetes-dashboard kubernetes-dashboard/kubernetes-dashboard --create-namespace --namespace kubernetes-dashboard --values values.yaml
|
||||
```
|
||||
|
||||
## Create service account for accesing the dashboard as admin
|
||||
|
||||
Create a service account file
|
||||
```
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: myusername
|
||||
namespace: kubernetes-dashboard
|
||||
```
|
||||
then apply it:
|
||||
```
|
||||
kubectl apply -f file.yml
|
||||
```
|
||||
|
||||
|
||||
Then create a file to bind your user to the built in cluster-admin role
|
||||
|
||||
```
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: myusername
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: cluster-admin
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: myusername
|
||||
namespace: kubernetes-dashboard
|
||||
```
|
||||
then apply it:
|
||||
```
|
||||
kubectl apply -f file.yml
|
||||
```
|
||||
|
||||
|
||||
And finally, create a token you can use to login to the dashboard
|
||||
```
|
||||
kubectl -n kubernetes-dashboard create token myusername
|
||||
```
|
Loading…
Reference in New Issue
Block a user