Benutzer-Werkzeuge

Webseiten-Werkzeuge


it-wiki:kubernetes:rke2_install_guid

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
it-wiki:kubernetes:rke2_install_guid [2024/10/24 05:37] markoit-wiki:kubernetes:rke2_install_guid [2025/10/16 09:54] (aktuell) – [RKE2 HA] marko
Zeile 13: Zeile 13:
 <code bash> <code bash>
 write-kubeconfig-mode: 0600 write-kubeconfig-mode: 0600
 +tls-san:
 +  - 10.6.8.20           # tls-san nur wenn HA
 disable: disable:
   - rke2-ingress-nginx   - rke2-ingress-nginx
 cni: calico cni: calico
-cluster-cidr: "172.20.0.0/16" +cluster-cidr: "100.73.0.0/16" 
-service-cidr: "172.30.0.0/16"+service-cidr: "100.74.0.0/16"
 </code> </code>
 Damit geben wir gleich die service und cluster cidr an. Also welche IP Range sollen die Services bekommen und welche die Container. Damit geben wir gleich die service und cluster cidr an. Also welche IP Range sollen die Services bekommen und welche die Container.
  
-  - Installer ausführen <code bash>curl -sfL https://get.rke2.io | sh -</code> Wenn eine bestimmte Version gewünscht ist <code bash>curl -sfL https://get.rke2.io | INSTALL_RKE2_VERSION=v1.26.10-rc3+rke2r1 sh -</code>+  - Installer ausführen <code bash>curl -sfL https://get.rke2.io | sh -</code> Wenn eine bestimmte Version gewünscht ist <code bash>curl -sfL https://get.rke2.io | INSTALL_RKE2_VERSION=v1.30.5+rke2r1 sh -</code>
   - Aktivieren des rke2-server service <code bash>systemctl enable rke2-server.service</code>   - Aktivieren des rke2-server service <code bash>systemctl enable rke2-server.service</code>
   - Starten des Services <code bash>systemctl start rke2-server.service</code> oder <code bash>systemctl start --no-block rke2-server.service</code>   - Starten des Services <code bash>systemctl start rke2-server.service</code> oder <code bash>systemctl start --no-block rke2-server.service</code>
Zeile 40: Zeile 42:
 Wenn der rke2 Cluster HA fähig sein soll dann empfiehlt es sich dies mit kube-vip als Loadbalancer zu machen. Wenn der rke2 Cluster HA fähig sein soll dann empfiehlt es sich dies mit kube-vip als Loadbalancer zu machen.
 Eine Beispielkonfiguration für eine kube-vip.yml findest Du [[.installation#initialisierung_des_clusters|hier im Wiki im Bereich Kubernetes]]. Eine Beispielkonfiguration für eine kube-vip.yml findest Du [[.installation#initialisierung_des_clusters|hier im Wiki im Bereich Kubernetes]].
 +
 +===== Eine Mögliche HA Konfig mittels kube-vip Daemonset =====
 +> RBAC.yml
 +<code bash>
 +kubectl apply -f https://kube-vip.io/manifests/rbac.yaml
 +</code>
 +
 +> daemonset.yml
 +<code yaml>
 +apiVersion: apps/v1
 +kind: DaemonSet
 +metadata:
 +  annotations:
 +  name: kube-vip-ds
 +  namespace: kube-system
 +spec:
 +  selector:
 +    matchLabels:
 +      name: kube-vip-ds
 +  template:
 +    metadata:
 +      creationTimestamp: null
 +      labels:
 +        name: kube-vip-ds
 +    spec:
 +      affinity:
 +        nodeAffinity:
 +          requiredDuringSchedulingIgnoredDuringExecution:
 +            nodeSelectorTerms:
 +            - matchExpressions:
 +              - key: node-role.kubernetes.io/master
 +                operator: Exists
 +            - matchExpressions:
 +              - key: node-role.kubernetes.io/control-plane
 +                operator: Exists
 +      containers:
 +      - args:
 +        - manager
 +        env:
 +        - name: address
 +          value: need-to-be-set           # use your own kubevip
 +        - name: vip_arp
 +          value: "true"
 +        - name: port
 +          value: "6443"
 +        - name: vip_interface             # use your own network interface
 +          value: ens3                     #     e.g. ens3, eth0
 +        - name: vip_cidr
 +          value: "32"
 +        - name: cp_enable
 +          value: "true"
 +        - name: cp_namespace
 +          value: kube-system
 +        - name: vip_ddns
 +          value: "false"
 +        - name: svc_enable
 +          value: "true"
 +        - name: vip_leaderelection
 +          value: "true"
 +        - name: vip_leaseduration
 +          value: "5"
 +        - name: vip_renewdeadline
 +          value: "3"
 +        - name: vip_retryperiod
 +          value: "1"
 +        image: ghcr.io/kube-vip/kube-vip:v1.0.1
 +        imagePullPolicy: Always
 +        name: kube-vip
 +        resources: {}
 +        securityContext:
 +          capabilities:
 +            add:
 +            - NET_ADMIN
 +            - NET_RAW
 +            - SYS_TIME
 +        terminationMessagePath: /dev/termination-log
 +        terminationMessagePolicy: File
 +      dnsPolicy: ClusterFirst
 +      hostNetwork: true
 +      restartPolicy: Always
 +      schedulerName: default-scheduler
 +      securityContext: {}
 +      serviceAccount: kube-vip
 +      serviceAccountName: kube-vip
 +      terminationGracePeriodSeconds: 30
 +      tolerations:
 +      - effect: NoSchedule
 +        operator: Exists
 +      - effect: NoExecute
 +        operator: Exists
 +  updateStrategy:
 +    rollingUpdate:
 +      maxSurge: 0
 +      maxUnavailable: 1
 +    type: RollingUpdate
 +</code>
  
 <note tip> <note tip>
Zeile 64: Zeile 162:
 tls-san: tls-san:
   - 10.6.8.20   - 10.6.8.20
-cluster-cidr: "172.20.0.0/16" +disable: 
-service-cidr: "172.30.0.0/16"+  - rke2-ingress-nginx 
 +cni: calico 
 +cluster-cidr: "100.73.0.0/16" 
 +service-cidr: "100.74.0.0/16"
 server: https://10.6.8.20:9345 server: https://10.6.8.20:9345
 token: <token from server node> token: <token from server node>
Zeile 93: Zeile 194:
 **cluster-cidr:** und **service-cidr:** Damit geben wir gleich die service und cluster cidr an. Also welche IP Range sollen die Services bekommen und welche die Container. **cluster-cidr:** und **service-cidr:** Damit geben wir gleich die service und cluster cidr an. Also welche IP Range sollen die Services bekommen und welche die Container.
  
-  - Installer ausführen <code bash>curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -</code> Wenn eine bestimmte Version gewünscht ist <code bash>curl -sfL https://get.rke2.io | INSTALL_RKE2_VERSION=v1.26.10-rc3+rke2r1 INSTALL_RKE2_TYPE="agent" sh -</code>+  - Installer ausführen <code bash>curl -sfL https://get.rke2.io | INSTALL_RKE2_TYPE="agent" sh -</code> Wenn eine bestimmte Version gewünscht ist <code bash>curl -sfL https://get.rke2.io | INSTALL_RKE2_VERSION=v1.30.5+rke2r1 INSTALL_RKE2_TYPE="agent" sh -</code>
   - Aktivieren des rke2-server service <code bash>systemctl enable rke2-agent.service</code>   - Aktivieren des rke2-server service <code bash>systemctl enable rke2-agent.service</code>
   - Starten des Services <code bash>systemctl start rke2-agent.service</code>   - Starten des Services <code bash>systemctl start rke2-agent.service</code>
it-wiki/kubernetes/rke2_install_guid.1729748234.txt.gz · Zuletzt geändert: von marko