зачем_нужен_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 [2025/01/11 05:56]
val [Шаг 1. Что у нас есть для начала]
зачем_нужен_kubernetes [2025/02/13 07:24] (current)
val [Запись вебинара]
Line 15: Line 15:
 ===== Запись вебинара ===== ===== Запись вебинара =====
  
-  * Тэги: Docker, Docker Compose, Kubernetes, Deployment ​+  * Тэги: ​Stress Testing, ​Docker, Docker Compose, Kubernetes, Deployment, Service, Keepalived 
 +  * https://​rutube.ru/​video/​010673aafbfa7669938d1c3fec3a2ed8/​
  
 ===== Методическая подготовка ===== ===== Методическая подготовка =====
Line 26: Line 27:
 ===== Шаг 1. Что у нас есть для начала ===== ===== Шаг 1. Что у нас есть для начала =====
  
-  * [[Технология Docker]] на server +  * По окончании основной части курса ДЕВОПС1:​ 
-  ​[[Инструмент GitLab]] +  - [[Технология Docker]] на server 
-  ​[[Инструмент GitLab#​GitLab Docker Registry]] +  ​[[Инструмент GitLab]] 
-  ​[[Технология Vagrant]] +  ​[[Инструмент GitLab#​GitLab Docker Registry]] 
-  ​[[Технология Docker]] на nodes через [[Сервис Ansible]]+  ​[[Технология Vagrant]] 
 +  ​[[Технология Docker]] на nodes через [[Сервис Ansible]]
 ===== Шаг 2. Web сервер на shell ===== ===== Шаг 2. Web сервер на shell =====
  
-  * [[Средства программирования shell#Web сервер на shell]]+  * [[Средства программирования shell#Web сервер на shell]] ​(/var/www уже есть, снять все комментарии,​ показать работу через STDIN/​STDOUT)
   * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]   * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]
  
Line 43: Line 45:
 server# docker run --name webd0N -h webd0N -itd -v /​var/​www/:/​var/​www/​ --rm -P test/webd server# docker run --name webd0N -h webd0N -itd -v /​var/​www/:/​var/​www/​ --rm -P test/webd
 </​code>​ </​code>​
-  ​* [[Сервис Keepalived#​Настройка балансировки нагрузки]] + 
-  * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]+  ​Сервис Keepalived [[Сервис Keepalived#​Установка]] и [[Сервис Keepalived#​Настройка балансировки нагрузки]] 
 +  * [[Технология Docker#​Анализ параметров запущенного контейнера|Анализ журналов запущенного контейнера]] 
 +  * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]] ​(-rate=5000)
  
 ===== Шаг 4. Kubernetes своими руками ===== ===== Шаг 4. Kubernetes своими руками =====
  
-  * [[Технология Docker#​Insecure Private Registry]] на server и nodeN 
   * Создание Public проекта webd в GitLab   * Создание Public проекта webd в GitLab
 +  * [[Технология Docker#​Insecure Private Registry]] на server
   * [[Технология Docker#​Аутентификация в Registry]] и [[Технология Docker#​Использование Private Registry]] для размещения образа webd   * [[Технология Docker#​Аутентификация в Registry]] и [[Технология Docker#​Использование Private Registry]] для размещения образа webd
 +
   * [[Сервис NFS]] сервер на server   * [[Сервис NFS]] сервер на server
   * [[Сервис NFS#​Установка nfs клиента]] на node1,2,3   * [[Сервис NFS#​Установка nfs клиента]] на node1,2,3
Line 60: Line 65:
 server:/​var/​www ​           /​var/​www ​          ​nfs ​    ​rw,​soft ​      ​0 ​      0 server:/​var/​www ​           /​var/​www ​          ​nfs ​    ​rw,​soft ​      ​0 ​      0
  
-root@node1:~# systemctl daemon-reload+node1,2,3# systemctl daemon-reload
  
 node1,2,3# mount /var/www node1,2,3# mount /var/www
 </​code>​ </​code>​
 +
 +  * [[Технология Docker#​Insecure Private Registry]] на nodeN
   * [[Технология Docker#​docker-compose]]   * [[Технология Docker#​docker-compose]]
  
Line 71: Line 78:
 services: services:
   webd:   webd:
-    image: server.corpX.un:​5000/​student/​webd:ver1.N+    image: server.corpX.un:​5000/​student/​webd
     ports:     ports:
       - "​80"​       - "​80"​
Line 86: Line 93:
 node1,2,3# docker compose logs webd -f node1,2,3# docker compose logs webd -f
 </​code>​ </​code>​
 +
   * [[Сервис Keepalived#​Настройка балансировки нагрузки]]   * [[Сервис Keepalived#​Настройка балансировки нагрузки]]
   * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]   * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]
Line 108: Line 116:
  
   * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]   * Сервис HTTP [[Сервис HTTP#​Нагрузочное тестирование]]
-  ​* "​Ломаем"​ один из Worker+ 
 +  ​* "​Ломаем"​ один из Worker-ов 
 + 
 +  * Наблюдаем реакцию клиентов 
 +<​code>​ 
 +user13@gate:​~$ curl http://​172.16.1.X/​t 
 +</​code>​ 
 + 
 +  * Наблюдаем реакцию в [[Сервис Keepalived]] 
 + 
 +  * Наблюдаем реакцию в kubernetes 
 +<​code>​ 
 +root@node1:​~#​ kubectl get pods -n my-ns -o wide --watch 
 +</​code>​
  
 ===== Вопросы ===== ===== Вопросы =====
зачем_нужен_kubernetes.1736564184.txt.gz · Last modified: 2025/01/11 05:56 by val