Обновить SSL-сертификат Google Cloud SQL сервера MySQL без простоя?
Если я подключаюсь с помощью SSL к серверу MySQL Google Cloud SQL 2-го поколения, сертификат самоподписывается, и создается впечатление, что сертификат длится всего 1 год. До истечения года я могу обновить сертификат, используя gcloud sql instances reset-ssl-config [INSTANCE_NAME]
, На этом этапе новый сертификат генерируется и немедленно вводится в действие на сервере MySQL.
К сожалению, это приведет к простою, потому что у меня будет развернуто несколько разных клиентов MySQL, чьи --ssl-ca
Конфигурация должна будет измениться, как только будет создан новый сертификат сервера. Кроме того, в документации указано, что все клиентские сертификаты также отозваны одновременно!
Есть ли способ избежать простоя на стороне клиента в Google Cloud SQL MySQL при обновлении сертификата сервера? Например, можно ли сгенерировать новый сертификат сервера без его немедленного включения, чтобы клиенты --ssl-ca
можно обновить, а затем начать использовать новый сертификат, как только все клиенты будут готовы?
Для сравнения, как описано в письме команды RDS, Amazon RDS не использует самозаверяющие сертификаты для сервера MySQL. Вместо этого он использует сертификат (с именем хоста, которое проверяется с помощью --ssl-verify-server-cert
) и центр сертификации, чей сертификат длится 5 лет. До истечения срока действия сертификата CA Amazon публикует файл центра сертификации, который содержит как старые сертификаты CA, так и новые сертификаты CA (так как клиент mysql --ssl-ca
файл может содержать несколько доверенных сертификатов CA). Как только все клиенты доверяют новому сертификату CA и вы готовы, вы можете поменять сертификат сервера RDS MySQL с сертификата, подписанного старым CA, на сертификат, подписанный новым CA, без простоев.
1 ответ
Служба Cloud SQL не имеет способа для клиентов обновить сертификат без простоя в настоящее время. Я принял к сведению и сделал запрос на добавление функций в систему отслеживания публичных проблем Google, чтобы реализовать эту функцию в Cloud SQL в будущем.
Не существует способа предварительной выборки данных CA, которые будут использоваться для обновления сертификата, чтобы клиент мог быть подготовлен заранее.