6. Работа с кластерами
если.ваша.текущая.архитектура.состоит.из.десяти.облачных. серверов,.кластеру.Kubernetes,.вероятно,.не.понадобится.больше.десяти.узлов.для. обслуживания.той.же.нагрузки;.плюс.еще.один.в.качестве.резерва..На.самом.деле. это,. скорее. всего,. перебор:. благодаря. равномерному. распределению. нагрузки. между.узлами.Kubernetes.может.достичь.более.высокой.загруженности,.чем.тра- диционные.серверы..Но.чтобы.откалибровать.кластер.для.оптимальной.мощности,. вам.могут.понадобиться.некоторое.время.и.опыт.
Если у вас имеются аппаратные серверы с излишком ресурсов или если вы еще не готовы полностью мигрировать в облако, используйте Kubernetes для вы- полнения контейнерных рабочих заданий на ваших собственных компьютерах.
Не следует выключать те узлы, которые вам больше не нужны. Сначала очистите их, чтобы рабочие задания могли мигрировать на другие узлы, и убедитесь в том, что в вашем кластере остается достаточно свободных ресурсов.
Утилита.K8Guard,.разработанная.компанией.Target,.умеет.искать.распространен- ные.проблемы.в.кластерах.Kubernetes.и.либо.исправлять.их.самостоятельно,.либо. уведомлять.о.них..Вы.можете.сконфигурировать.ее.с.учетом.конкретных.политик. вашего. кластера. (например,. можете. настроить. уведомления. на. случай,. если. ка- кой-либо.образ.контейнера.превышает.1.ГиБ.или.если.правило.условного.доступа. позволяет.обращаться.к.ресурсу.откуда.угодно). K8Guard.также.экспортирует.показатели,.которые.можно.собирать.с.помощью.такой. системы. мониторинга,. как. Prometheus. (больше. об. этом. —. в. главе. 16).. Благодаря. чему,.например,.можно.узнать,.сколько.развертываний.нарушают.ваши.политики,. и. оценить. производительность. ответов. Kubernetes. API.. Это. помогает. н.аходить. и.исправлять.проблемы.на.ранних.этапах. Лучше. всего. сделать. так,. чтобы. утилита. K8Guard. постоянно. работала. с. вашим. кластером.и.могла.предупреждать.вас.о.любых.нарушениях,.как.только.они.про- изойдут.
Copper.(copper.sh).—.это.инструмент.для.проверки.манифестов.Kubernetes.перед. их. развертыванием;. он. отмечает. распространенные. проблемы. или. применяет. отдельные. политики.. Copper. включает. в. себя. проблемно-ориентированный. язык. (domain-specific. language,. DSL),. предназначенный. для. описания. правил. и.политик.проверки.
Если.применить.команду.copper.check.к.манифесту.Kubernetes,.который.содержит. спецификацию.образа.контейнера.latest,.на.экране.появится.следующее.сообще- ние.об.ошибке: copper check --rules no_latest.cop --files deployment.yml Validating part 0 NoLatest - FAIL
Вы,.к.примеру,.можете.выбрать. произвольную.pod-оболочку,.принудительно.ее.остановить.и.проверить,.перезапу- стит.ли.ее.Kubernetes.и.не.повлияет.ли.это.на.частоту.ошибок.в.системе. Ручное.выполнение.такой.процедуры.занимает.много.времени..К.тому.же.вы.мо- жете.подсознательно.обходить.стороной.слишком.важные.для.ваших.приложений. ресурсы..Чтобы.проверка.была.честной,.ее.следует.автоматизировать. Такой. вид. автоматического,. произвольного. вмешательства. в. промышленные. сервисы.иногда.называют.тестом обезьяны.в.честь.инструмента.Chaos.Monkey. («хаотическая. обезьяна»),. разработанного. компанией. Netflix. для. тестирования. своей.инфраструктуры.
Инструмент.Chaos.Monkey,.выключающий.произвольные.облачные.серверы,.вхо- дит.в.состав.пакета.Netflix.Simian Army,.который.содержит.и.другие.инструменты. хаотического тестирования..Latency.Monkey,.например,.создает.коммуникаци- онные.задержки,.симулируя.проблемы.с.сетью,.Security.Monkey.ищет.известные. уязвимости,.а.Chaos.Gorilla.выключает.целую.зону.доступности.AWS.
No Comments