GCloud SQL от K8s - ошибки - PullRequest
       17

GCloud SQL от K8s - ошибки

0 голосов
/ 29 ноября 2018

Я пытаюсь подключиться к облачному sql из экземпляра k8s, используя прокси-сервер, работающий на том же модуле.

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

С только что созданным экземпляром SQL я автоматически получаю служебную учетную запись, которая выглядит следующим образом: [hash]@speckle-umbrella-pg-8.iam.gserviceaccount.com

С этой учетной записью, как я могу сгенерировать закрытый ключ JSON?Я пытался создать сертификат SSL на вкладке «Подключения», но у меня нет возможности создать JSON.

В качестве второго варианта я пытался повторно использовать существующую учетную запись службы IAM - «Учетная запись службы Compute Engine по умолчанию»,сгенерировав для него ключ JSON, но он не сработал.

Я его настроил так:

  1. Я создаю секрет kubectl create secret generic cloudsql-instance-credentials --from-file=credentials.json=[PROXY_KEY_FILE_PATH]
  2. Я прикрепляю контейнер к стручку:

    - name: cloudsql-proxy image: gcr.io/cloudsql-docker/gce-proxy:1.11 command: ["/cloud_sql_proxy", "-instances=project-name:us-central1:sql-instance-name=tcp:5432", "-credential_file=/secrets/cloudsql/credentials.json"] securityContext: runAsUser: 2 # non-root user allowPrivilegeEscalation: false volumeMounts: - name: cloudsql-instance-credentials mountPath: /secrets/cloudsql readOnly: true

Какой правильный путь?Документы Goole не содержат полной информации.

1 Ответ

0 голосов
/ 30 ноября 2018

1 - В первом варианте вы можете создать закрытый ключ JSON, следуя рекомендациям, упомянутым в этой статье .После того, как ключ был сгенерирован, вы можете сохранить его в каталоге, чтобы создать сертификат SSL.

2- Во втором варианте нам нужно точно знать, с какой проблемой вы столкнулись.Пожалуйста, поделитесь сообщением об ошибке.Проблема заключается в том, что учетная запись службы Compute Engine по умолчанию может иметь или не иметь необходимых разрешений для использования других API облачной платформы.Это зависит от того, как настроен ваш проект.

...