Skip to content

2. Installation de Kubernetes

Installation de kubernetes sur Windows

Il suffit de suivre les instructions données ici

Installation de kubernetes sur Linux

Il suffit de suivre les instructions données ici

Connexion au Cluster

  • Télécharger le fichier donné par l'hébergeur du cluster managé à la racine du projet
  • Renommer le fichier en kubeconfig
  • Configurer la variable d'environnement.
export KUBECONFIG=$PWD/kubeconfig

ou

$env:KUBECONFIG="$PWD\kubeconfig"
  • Tester avec la commande
kubectl get nodes
  • Dashboard installation
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.6.1/aio/deploy/recommended.yaml
kubectl proxy

ou

kubectl proxy -p 8002
  • Accès dashboard:

http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

ou

http://localhost:8002/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

  • Si erreur... Sur OVH le kubeconfig ne contient pas nécessairement de token pour l'accès au dashboard. Il faut alors créer un ServiceAccount et un Role pour créer un token Créer un fichier dashboard-user.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin-user
  namespace: kubernetes-dashboard


---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: admin-user
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-admin
subjects:
- kind: ServiceAccount
  name: admin-user
  namespace: kubernetes-dashboard

2 possibilités:

  • Obtenir un token temporaire (1h) d'authentification (kubectl version > 1.24) :
kubectl create token admin-user -n kubernetes-dashboard
  • Créer un secret token et le copier dans le kubeconfig:

    • Il faut commencer par créer un secret relatif au service account dans son namespace:

    yaml apiVersion: v1 kind: Secret metadata: namespace: kubernetes-dashboard name: dashboard-token annotations: kubernetes.io/service-account.name: admin-user type: kubernetes.io/service-account-token kubectl create -f ./secret.yaml kubectl describe secret mysecretname

    • Copier le résultat dans le fichier kubeconfig en rajoutant la clé token
apiVersion: v1
clusters:
- cluster:
    server: https://XXXX
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: YOUR USER
  name: kubernetes
current-context: "kubernetes"
kind: Config
preferences: {}
users:
- name: YOUR USER
  user:
    client-certificate-data: CODED
    client-key-data: CODED
    token: CODED  ---> ADD TOKEN HERE