User Tools

Site Tools


система_kubernetes

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
система_kubernetes [2026/06/12 08:48]
val [cert-manager certificate]
система_kubernetes [2026/07/01 16:35] (current)
val [Развертывание через Kubespray]
Line 604: Line 604:
 root@cf764ca3b291:/​kubespray#​ ansible all -m ping -i /​inventory/​inventory.ini root@cf764ca3b291:/​kubespray#​ ansible all -m ping -i /​inventory/​inventory.ini
 </​code>​ </​code>​
-  * [[Сервис Ansible#​Использование ролей]] Ansible для настройки сети+  * [[Сервис Ansible#​Использование ролей]] Ansible для настройки сети ​(!!! dhcp клиент может успеть затереть /​etc/​resolv.conf,​ поможет запуск роли повторно)
  
   * Может потребоваться   * Может потребоваться
Line 610: Line 610:
 root@cf764ca3b291:/​kubespray#​ cp -rv inventory/​sample/​group_vars/​ /inventory/ root@cf764ca3b291:/​kubespray#​ cp -rv inventory/​sample/​group_vars/​ /inventory/
 </​code>​ </​code>​
-  * [[#​Настройка registry-mirrors для Kubespray]] ​и [[#​Добавление insecure_registries через Kubespray]]+  * [[#​Настройка registry-mirrors для Kubespray]] 
 +  * [[#​Добавление insecure_registries ​через Kubespray]] 
 +  * [[#​Использование proxy при установке ​через Kubespray]]
  
 <​code>​ <​code>​
Line 639: Line 641:
 ... ansible-playbook -i /​inventory/​inventory.ini remove-node.yml ... ... ansible-playbook -i /​inventory/​inventory.ini remove-node.yml ...
  
- +kube2:~# kubectl -n kube-public ​edit configmaps 
-kube2:~# kubectl ​get configmap ​-n kube-system -o yaml | grep X.221 +kube2:~# kubectl -n kube-system ​edit configmaps 
-kube2:~# kubectl ​edit configmap cluster-info -n kube-public +/kube1 
-kube2:~# kubectl ​edit configmap kubeadm-config ​-n kube-system+/221
 </​code>​ </​code>​
  
Line 884: Line 886:
 #        env: #        env:
 #        - name: PYWEBD_DOC_ROOT #        - name: PYWEBD_DOC_ROOT
-#          value: "/usr/local/apache2/​htdocs/"+#          value: "/home/myuser/www/"
 #        - name: PYWEBD_PORT #        - name: PYWEBD_PORT
 #          value: "​4080"​ #          value: "​4080"​
Line 1512: Line 1514:
 kube1:​~/​envoygateway#​ helm show values oci://​docker.io/​envoyproxy/​gateway-helm --version v1.6.4 kube1:​~/​envoygateway#​ helm show values oci://​docker.io/​envoyproxy/​gateway-helm --version v1.6.4
   ​   ​
-kube1:​~/​envoygateway#​ helm install ​eg oci://​docker.io/​envoyproxy/​gateway-helm --version v1.6.4 -n envoy-gateway-system --create-namespace+kube1:​~/​envoygateway#​ helm upgrade -i eg oci://​docker.io/​envoyproxy/​gateway-helm --version v1.6.4 -n envoy-gateway-system --create-namespace
  
 kube1:​~/​envoygateway#​ cat envoyproxy.yaml kube1:​~/​envoygateway#​ cat envoyproxy.yaml
Line 2768: Line 2770:
   apiGroup: rbac.authorization.k8s.io   apiGroup: rbac.authorization.k8s.io
 </​code><​code>​ </​code><​code>​
 +kube1:​~/​users#​ kubectl apply -f freeipa-kube-admin.yaml
 +
 student@client1:​~$ kubectl get nodes student@client1:​~$ kubectl get nodes
 </​code>​ </​code>​
Line 3128: Line 3132:
  
   * [[https://​sysdig.com/​blog/​monitor-etcd/​|How to monitor etcd]]   * [[https://​sysdig.com/​blog/​monitor-etcd/​|How to monitor etcd]]
 +=== Анализ состояния etcd ===
 <​code>​ <​code>​
 kubeN:~# less /​etc/​etcd.env kubeN:~# less /​etc/​etcd.env
Line 3151: Line 3155:
  
 kube1# ETCDCTL_ENDPOINTS=https://​192.168.X.221:​2379,​https://​192.168.X.222:​2379,​https://​192.168.X.223:​2379 etcdctl endpoint status -w table kube1# ETCDCTL_ENDPOINTS=https://​192.168.X.221:​2379,​https://​192.168.X.222:​2379,​https://​192.168.X.223:​2379 etcdctl endpoint status -w table
 +</​code>​ 
 +=== Резервное копирование и восстановление etcd === 
 +<​code>​
 kube1# etcdctl snapshot save /​root/​etcd-backup.db kube1# etcdctl snapshot save /​root/​etcd-backup.db
 +
 +kube1# kubectl get pods
 +kube1# kubectl delete -f my-debian-deployment.yaml
 +
 +ssh kubeN mv /​etc/​kubernetes/​manifests/​kube-apiserver.yaml .
 +ssh kubeN crictl ps|grep api
 +
 +ssh kubeN service etcd stop &
 +
 +ssh kubeN rm -rf /​var/​lib/​etcd
 +
 +server# scp kube1:​etcd-backup.db kube2:
 +server# scp kube1:​etcd-backup.db kube3:
 +
 +kubeN# ​
 +
 +source /​etc/​etcd.env
 +etcdutl snapshot restore /​root/​etcd-backup.db \
 +  --data-dir "​${ETCD_DATA_DIR}"​ \
 +  --name "​${ETCD_NAME}"​ \
 +  --initial-cluster "​${ETCD_INITIAL_CLUSTER}"​ \
 +  --initial-cluster-token "​${ETCD_INITIAL_CLUSTER_TOKEN}"​ \
 +  --initial-advertise-peer-urls "​${ETCD_INITIAL_ADVERTISE_PEER_URLS}"​
 +init 6
 +
 +ssh kubeN mv kube-apiserver.yaml /​etc/​kubernetes/​manifests/​
 +
 +kube1# kubectl get pods
 </​code>​ </​code>​
 ===== Дополнительные материалы ===== ===== Дополнительные материалы =====
Line 3213: Line 3247:
 ... ...
 </​code>​ </​code>​
 +=== Использование proxy при установке через Kubespray === 
 +<​code>​ 
 +~/​kubespray#​ cat inventory/​mycluster/​group_vars/​all/​all.yml 
 +</​code><​code>​ 
 +... 
 +http_proxy: "​http://​proxy.isp.un:​3128/"​ 
 +https_proxy:​ "​http://​proxy.isp.un:​3128/"​ 
 +... 
 +</​code>​
 ==== Kustomize ​ ==== ==== Kustomize ​ ====
  
система_kubernetes.1781243280.txt.gz · Last modified: 2026/06/12 08:48 by val