GKE Использование нескольких кластеров с одним экземпляром CloudSQL - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть кластер для постановки, который был запущен более года с использованием CloudSQL, и теперь я хотел бы вызвать еще один кластер GKE (тот же проект Google), направленный на ту же базу данных для тестирования.Тем не менее я вижу ошибки при попытке использовать credentials.json из старого кластера в новом.

googleapi: Error 403: The client is not authorized to make this request., notAuthorized" 

Я искал IAM, чтобы найти способ открыть разрешения для нового кластера, но не нашел способа, даже если я вижу учетную запись службы с ролью «Cloud SQL Client».

Как правильно предоставить учетные данные или открыть разрешения (или мне нужно создать для этого новую учетную запись службы)?

Наш шаблон развертывания шаблонов выглядит следующим образом:

  - name: postgres-proxy
    image: gcr.io/cloudsql-docker/gce-proxy:1.09
    imagePullPolicy: Always
    command: ["/cloud_sql_proxy",
              "--dir=/cloudsql",
              "-instances=@@PROJECT@@:us-central1:@@DBINST@@=tcp:5432",
              "-credential_file=/secrets/cloudsql/credentials.json"]
    volumeMounts:
      - name: cloudsql-oauth-credentials
        mountPath: /secrets/cloudsql
        readOnly: true
      - name: ssl-certs
        mountPath: /etc/ssl/certs
      - name: cloudsql
        mountPath: /cloudsql

Ответы [ 2 ]

0 голосов
/ 19 января 2019

GKE в настоящее время поддерживает подключение по частному IP-адресу.Вы можете подключиться к облачному кластеру sql, если вы находитесь в том же регионе, и в кластере включен IP-псевдоним.

0 голосов
/ 07 января 2019

Когда вы получаете сообщение об ошибке 403 от какого-либо API Google, появляется ошибка разрешения IAM.Чтобы решить эту проблему, убедитесь, что вашей учетной записи службы назначена роль «Cloud SQL Client».Чтобы проверить, какие разрешения добавляются к вашей учетной записи службы, перейдите на страницу IAM облачного проекта (Левое меню> IAM & Admin> IAM) и найдите строку с учетной записью службы, в которой возникла проблема.Учетная запись службы должна содержать слово «Cloud SQL Client» в столбце «Роль».

Если вы обнаружите, что роль «Cloud SQL Client» не добавлена ​​в учетную запись службы, попробуйте выполнить инструкции, изложенные в этого документа .Если учетной записи службы еще нет в списке участников, ей не будет назначена никакая роль.Нажмите кнопку Добавить и введите адрес электронной почты учетной записи службы.Если учетная запись службы уже есть в списке участников, она имеет существующие роли.Щелкните раскрывающийся список под Ролями для учетной записи службы, которую вы хотите изменить, или вы можете добавить роль «Cloud SQL Client» в качестве дополнительной роли для учетной записи службы.Вам необходимо выбрать роль «Cloud SQL Client» в раскрывающемся списке «Cloud SQL».

Если вы видите, что роль «Cloud SQL Client» уже существует, нажмите «Изменить», чтобы открыть раскрывающийся список.После этого нажмите «Удалить» и сохраните его.Убедитесь, что учетная запись службы удалена со страницы IAM.Нажмите кнопку ДОБАВИТЬ в верхней части страницы IAM в облачном проекте.Введите адрес электронной почты учетной записи службы и выберите роль «Cloud SQL Client» в раскрывающемся списке «Cloud SQL».После этого нажмите кнопку SAVE, и учетная запись службы снова появится в списке.При этом мы удаляем, а затем снова добавляем разрешения для учетной записи службы.

Вы также можете попробовать добавить новую учетную запись службы, как указано в в этом документе , и выбрав «Cloud SQL».Роль клиента »из раскрывающегося списка в разделе« Облачный SQL ».Обратите внимание, что для выполнения операций вам нужна роль «Администратор учетной записи службы» или примитивная роль «Редактор».

Если проблема по-прежнему не устранена, убедитесь, что имя «Cloud SQL Instance» указано правильно.Вы можете скопировать и вставить «имя подключения экземпляра» со страницы консоли Google Cloud в экземпляре Cloud SQL, как описано в этой проблеме StackOverflow .

В качестве альтернативы , обновив секрет доиспользуйте правильную клавишу , чтобы решить проблему.Вы можете сделать более одного ключа для учетной записи службы.

...