MySQL сервер на kubernetes не будет перезагружаться - PullRequest
0 голосов
/ 16 мая 2018

Я пытаюсь перезапустить мой сервер MySQL.Сервер находится в контейнере Kubernetes / fedora.Я попытался использовать # /etc/init.d/mysqld restart и # systemctl restart mysqld.Проблема в том, что в файле init.d нет файлов.При запуске # /etc/init.d/mysqld restart bash говорит, что такого файла нет, очевидно, такого файла нет.При запуске # systemctl restart mysqld он отвечает «bash: systemctl: Команда не найдена». MySQL-сервер работает нормально, и я могу войти в него, однако я не могу перезапустить его.Пожалуйста, помогите.

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

Чтобы перезапустить сервер в Kubernetes, вам просто нужно удалить модуль с kubectl delete pod <id>.Если вы создали модуль не вручную, а с помощью развертывания , он будет перезагружен и автоматически подключится к сети.

Удаление модуля - это правильный способ завершения работы серверов.Сначала Kubernetes отправит mysql сигнал TERM, который вежливо попросит его отключиться.Затем через некоторое время (настраивается) он выстрелит в него с KILL, если он не соответствует.

0 голосов
/ 16 мая 2018

MySQL-сервер работает нормально, и я могу войти в него, однако я не могу перезапустить его.

У вас есть 2 варианта, и оба имеют свои «опасности» для адреса:

  • Скорее всего, контейнер запускается либо с CMD, указанным в образе docker, либо с директивой command в манифесте kubernetes, которая фактически запускает ваш mysql.В этом случае, независимо от того, как вам удастся завершить (при перезапуске) запуск экземпляра mysql в этом контейнере, вы также - завершите весь контейнер.Затем Kubernetes перезапустит этот контейнер или весь модуль.

  • Менее вероятно, но возможно то, что контейнер был запущен какой-то другой командой 'main', а mysql запускается как часть отдельногоскрипт.В этом случае проверка файла Docker или манифеста kubernetes даст вам подробную информацию о процедуре запуска / остановки, и только в этом случае вы можете перезапустить mysql без фактического уничтожения контейнера, на котором он работает.

Опасности: постоянство данных.Если у вас нет надлежащего сохранения данных на месте, уничтожение запущенного контейнера (либо путем перезапуска, либо обновления) также уничтожит все временные данные с ним.

Дополнительное примечание: вы пробовали service mysql status и service mysql restart?

...