Во время развертывания сервиса или его работы вы можете инициировать операции с высоким риском на разных уровнях, вызывая сбои сервиса или его прерывание. Чтобы помочь вам более точно оценивать и избегать рисков операций, в этом разделе представлены последствия и решения операций с высоким риском с различных точек зрения, таких как кластеры, узлы, сеть, балансировка нагрузки, логи и EVS disks.
Категория | Операция | Воздействие | Решение |
|---|---|---|---|
Кластер | Использование kube-apiserver для одновременного получения больших объёмов данных. Например, одновременно инициируется большое количество запросов LIST, либо один запрос LIST используется для получения большого объёма данных. | Память master node перегружена, что влияет на стабильность системы. | Прекратите выполнение большого количества запросов. Чтобы предотвратить перегрузку кластера, увеличьте размер кластера. Подробности см. Resizing a Cluster. |
Master node | Изменение группы безопасности master nodes в кластере ПРИМЕЧАНИЕ: Правило именования группы безопасности master‑node: cluster-name-cce-control-random-ID | Мастер‑ноды могут стать недоступными. | Восстановите группу безопасности, обратившись к "Creating a Cluster", и разрешите трафик от и к мастер‑нодам. |
Разрешение истечения срока действия master‑node или удаление master‑node | Мастер‑node станет недоступным. | Эту операцию нельзя отменить. | |
Переустановка ОС | Компоненты master‑node будут удалены. | Эту операцию нельзя отменить. | |
Обновление компонентов master‑node или версии etcd | Кластер может стать недоступным. | Откат к исходной версии. | |
Удаление или форматирование основных каталогов (например /etc/kubernetes) на узле | Мастер‑node станет недоступным. | Эта операция не может быть отменена. | |
Изменение IP-адреса главного узла | Главный узел станет недоступным. | Измените IP-адрес обратно на исходный. | |
Изменение параметров основных компонентов (например, etcd, kube-apiserver или Docker) | Главный узел может стать недоступным. | Восстановите параметры до их рекомендуемых значений. Для получения подробной информации см. Modifying Cluster Configurations. | |
Замена главного узла или сертификата etcd | Кластер может стать недоступным. | Эта операция не может быть отменена. | |
Рабочий узел | Изменение группы безопасности рабочих узлов в кластере ПРИМЕЧАНИЕ: Правило именования группы безопасности рабочего узла: cluster-name-cce-node-random-ID | Узел может стать недоступным. | Восстановите группу безопасности, ссылаясь на "Creating a Cluster", и разрешите трафик от и к рабочим узлам. |
Изменение конфигурации DNS (/etc/resolv.conf) узла | Внутренние доменные имена недоступны. Основные функции, такие как add-on management и node reset upgrades, могут завершиться с ошибкой. ПРИМЕЧАНИЕ: Если вашему сервису необходимо использовать локальный DNS‑сервер, настройте DNS в рабочей нагрузке. Не изменяйте DNS‑адрес узла. Подробности см. в DNS Configuration. | Восстановите конфигурацию DNS, чтобы она соответствовала конфигурации нового узла. | |
Удаление узла | Узел станет недоступным. | Эту операцию нельзя отменить. | |
Удаление elastic network interface, используемого узлом | Pod network на этом узле становится недоступной. | Эту операцию нельзя отменить. | |
Переустановка ОС | Компоненты узла удаляются, и узел становится недоступным. | Сбросьте узел. Подробности см. в Resetting a Node. | |
Обновление ядра или компонентов, зависящих от платформы (например, Open vSwitch, IPvlan, docker или containerd) | Узел может стать недоступным, или сеть может работать аномально. ПРИМЕЧАНИЕ: Работа узла зависит от версии системного ядра. Не используйте yum update для обновления или переустановки ядра узла, если это не необходимо. (Переустановка ядра ОС, независимо от того, берётся ли оно из оригинального образа или другого образа, является операцией высокого риска.) | Сбросьте узел. Подробности см. в Resetting a Node. | |
Изменение IP-адреса узла | Узел станет недоступным. | Измените IP-адрес обратно на исходный. | |
Изменение параметров основных компонентов (например, kubelet и kube-proxy) | Узел может стать недоступным. Если изменены конфигурации, связанные с безопасностью, компоненты могут стать уязвимыми. Даже если ни одна из проблем не проявится сразу, изменённые параметры могут быть сброшены во время последующих обновлений кластера. Подробности см. в Precautions. | Если узел становится недоступным, восстановите его до рекомендованных параметров. Подробности см. в Configuring a Node Pool. Вносите изменения конфигурации в консоли CCE, чтобы они автоматически сохранялись во время обновлений кластера. | |
Изменение конфигураций ОС | Узел может стать недоступным. | Восстановите элементы конфигурации или сбросьте узел. Для получения подробностей см. Resetting a Node. | |
Удаление или изменение каталогов /opt/cloud/cce и /var/paas, либо удаление диска с данными | Узел станет недоступным. | Сбросьте узел. Для получения подробностей см. Resetting a Node. | |
Изменение прав доступа к каталогам узла и прав доступа к каталогам контейнера. Затронутые каталоги:
| Права доступа станут аномальными. | Не изменяйте эти права доступа. Если они изменены, восстановите их. | |
Formatting или разметка дисков на узле, включая системный диск и диски с данными, используемые средой выполнения контейнера и kubelet | Узел может стать недоступным. | Сбросьте узел. Для получения подробностей см. Resetting a Node. | |
Установка другого программного обеспечения на узел | Это может вызвать исключения в компонентах Kubernetes, установленных на узле, и узел может стать недоступным. | Удалите программное обеспечение и восстановите или сбросьте узел. Для получения подробностей см. Resetting a Node. | |
Изменение конфигураций NetworkManager | Узел станет недоступным. | Сбросьте узел. Для получения подробной информации см. Resetting a Node. | |
Удаление системных образов, таких как cce-pause, с узла | Контейнеры не могут быть созданы, и системные образы не могут быть получены. | Скопируйте образ со здорового узла. | |
Изменение флейвора узла в пуле узлов в консоли ECS | Если флейвор узла отличается от указанного в его пуле узлов, количество узлов, добавляемых при масштабировании пула узлов, будет отличаться от ожидаемого. | Измените флейвор узла, чтобы он соответствовал спецификации пула узлов, или удалите узел и снова масштабируйте пул узлов. | |
Удаление или перемещение бинарных файлов и файлов конфигурации, необходимых для работы containerd
| Если /usr/local/bin/crictl удалён, проверка состояния containerd завершится неудачей, и containerd будет постоянно перезапускаться. Удаление других файлов может привести к тому, что контейнеры не запустятся, а узлы станут недоступными. | Сбросьте узел, чтобы восстановить бинарные файлы и файлы конфигурации containerd. Для получения подробной информации см. Resetting a Node. | |
Изменение или ручное создание пользователя paas или группы пользователей | Компоненты CCE и сервисные pod'ы будут затронуты. Для получения подробной информации см. paas User and User Group. | Сбросьте узел. Для получения подробной информации см. Resetting a Node. |
Operation | Impact | Solution |
|---|---|---|
Изменение значения параметра ядра net.ipv4.ip_forward на 0 | Сеть становится недоступной. | Измените значение на 1. |
Изменение значения параметра ядра net.ipv4.tcp_tw_recycle на 1 | Служба NAT становится аномальной. | Измените значение на 0. |
Изменение значения параметра ядра net.ipv4.tcp_tw_reuse на 1 | Сеть становится аномальной. | Измените значение на 0. |
Не настроена группа безопасности узла для разрешения UDP‑трафика к порту 53 подсетей pod CIDR blocks | DNS в кластере не может работать корректно. | Восстановите группу безопасности, ссылаясь на Creating a Cluster и разрешите трафик от и к узлам кластера. |
Удаление network-attachment-definitions CRD‑ресурсов default-network | Сеть контейнеров отключена, либо кластер не может быть удалён. | Если ресурсы удалены по ошибке, используйте правильные конфигурации для создания ресурсов default-network. |
Включение iptables‑firewall | По умолчанию iptables‑firewall отключён в CCE. Включение firewall может сделать сеть недоступной. ПРИМЕЧАНИЕ: Не включайте iptables‑firewall. Если iptables‑firewall необходимо включить, проверьте, повлияют ли правила, сконфигурированные в /etc/sysconfig/iptables и /etc/sysconfig/ip6tables в тестовой среде, на сеть. | Отключите iptables‑firewall и проверьте правила, сконфигурированные в /etc/sysconfig/iptables и /etc/sysconfig/ip6tables. |
Operation | Impact | Solution |
|---|---|---|
Настройка привилегированных контейнеров для рабочей нагрузки и прямое управление аппаратным обеспечением хоста. Возможны ошибки в работе с системными файлами узла. Например, если задать команду запуска /usr/sbin/init и выполнить systemctl в контейнерах, системные файлы в каталоге /lib узла могут быть повреждены. | Все точки монтирования узла будут отмонтированы. В результате узел выходит из строя, что приводит к сбоям подов и затронутым функциям дополнения хранилища. | Не удаляйте точки монтирования в каталоге /lib узла. Выполните сброс узла для восстановления. Подробности см. в Resetting a Node. |
Монтирование каталога системного компонента с использованием hostPath, например, монтирование файлов в /var/lib/docker | После перезапуска системного компонента каталог системного компонента на узле может быть восстановлен, что прерывает inode link смонтированного каталога. В результате содержимое смонтированного каталога нельзя использовать в контейнере. | Не монтируйте каталог системного компонента. |
Operation | Impact | Solution |
|---|---|---|
Удаление load balancer, связанного с кластером CCE | Доступ к целевому Service или ingress завершится неудачей. | Не удаляйте такой load balancer. |
Отключение load balancer, связанного с кластером CCE | Доступ к целевому Service или ingress будет невозможен. | Не отключайте такой load balancer. Если load balancer был отключён, включите его. |
Изменение частного IPv4-адреса load balancer |
| Не меняйте частные IPv4-адреса load balancer'ов. Верните их обратно, если они были изменены. |
Отвязка IPv4 EIP от load balancer | После отвязки EIP от load balancer, load balancer не сможет перенаправлять трафик Internet. | Восстановите привязку EIP. |
Добавление listener к load balancer, связанному с кластером CCE | Если load balancer создаётся автоматически при создании Service или ingress, любой listener, добавленный к load balancer в консоли ELB, не может быть удалён при удалении Service или ingress. В этом случае load balancer не может быть удалён автоматически. | Используйте listener, автоматически создаваемый при создании Service или ingress. Если используется listener, добавленный в консоли ELB, вручную удалите этот load balancer. |
Удаление listener, автоматически добавленного CCE |
| Создайте заново или обновите Service или ingress. |
Изменение базовых конфигураций, таких как имя, контроль доступа, тайм‑аут или описание listener, добавленного CCE | Когда master nodes перезапускаются по причинам, например, обновлению кластера, все ваши изменения будут сброшены CCE. | Не изменяйте базовые конфигурации listener, созданного CCE. Восстановите конфигурации, если они были изменены. |
Изменение backend server group listener, добавленного CCE, включая добавление или удаление backend server в группу или из неё |
| Создайте заново или обновите Service или ingress. |
Замена backend server group listener, добавленного CCE. |
| Создайте заново или обновите Service или ingress. |
Изменение политики переадресации listener, добавленного CCE, включая добавление или удаление правил переадресации. |
| Не изменяйте политику переадресации такого listener. Восстановите конфигурации, если они были изменены. |
Замена сертификата listener, созданного CCE, в консоли ELB, или изменение серверного сертификата, созданного CCE, с использованием TLS‑ключа на странице Certificates ELB | В сценариях, когда требуется перезапуск master node, например во время cluster upgrade, изменение будет сброшено CCE. В результате Service или ingress могут стать недоступными. | Используйте консоль CCE или YAML для обновления сертификата, связанного с Service или ingress, либо обновите TLS‑ключ, связанный с Service или ingress. |
Operation | Impact | Solution |
|---|---|---|
Удаление каталога /tmp/ccs-log-collector/pos на хост‑машине | Логи собираются повторно. | Нет |
Удаление каталога /tmp/ccs-log-collector/buffer на хост‑машине | Логи потеряны. | Нет |
Операция | Воздействие | Решение |
|---|---|---|
Настройка большего количества шардов сбора в Cloud Native Cluster Monitoring, чем рекомендованное значение (один шард сбора на 50 узлов) | Избыточные шарды могут перегрузить память мастер‑узла, влияя на стабильность системы. | Измените количество шардов сбора до рекомендованного значения для Cloud Native Cluster Monitoring. |
Операция | Воздействие | Решение | Примечания |
|---|---|---|---|
Ручное отмонтирование EVS диска в консоли | Происходит ошибка I/O при записи данных в pod. | Удалите путь монтирования с node и запланируйте pod повторно. | Файл в pod фиксирует место, где следует собрать файлы. |
Отмонтирование точки монтирования диска на node | Данные pod записываются на локальный диск. | Повторно смонтируйте соответствующий путь в pod. | Буфер содержит файлы кэша логов для потребления. |
Работа с EVS дисками на node | Данные pod записываются на локальный диск. | None | None |
Создание PV с параметрами, не объявленными в файле Например, если YAML файл содержит параметры, такие как status, spec.claimRef и annotation.everest.io/set-disk-metadata при создании PV, PV может быть аномальным. | Эта операция может обходить некоторые стандартные процессы создания PV. В результате созданные PV могут стать недоступными или быть удалены неожиданно. | Перед удалением таких PV вручную удалите связанные параметры в их YAML files. | Нет |
Operation | Impact | Solution |
|---|---|---|
Изменение ресурсов add-on в бэкэнде | Могут возникнуть исключения add-on или другие непредвиденные проблемы. Например, параметры переопределяются после обновления. | Выполняйте операции на странице конфигурации add‑on или используя open add‑on management APIs. |