#typescript #google-cloud-platform #pulumi
# #typescript #google-облачная платформа #pulumi
Вопрос:
Я работаю над созданием кластера в Google Cloud через Pulumi на платформе VSCode, и он написан на Typescript, но «кластер» помечен красным.
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const cluster = new gcp.container.Cluster("cluster", {
zone: "us-central1-a"
initialNodeCount: 3,
});
export const clusterId = cluster.id;
Пожалуйста, помогите, что можно сделать для успешного создания кластера с помощью Pulumi с IAC для Google Cloud. Спасибо.
Ответ №1:
Похоже, что Pulumi не может найти проект GCP для развертывания.
Вам необходимо войти в Google Cloud на вашей рабочей станции в соответствии с: https://www.pulumi.com/docs/get-started/gcp/begin/#configure-gcp
Или вы можете настроить связанные переменные среды: https://www.pulumi.com/docs/intro/cloud-providers/gcp/setup/#optional-settings
Ответ №2:
Предполагая, что вы установили Google Cloud SDK, а затем инициализировали Cloud SDK;
Беги: gcloud auth application-default login
Что приведет к следующему;
Your browser has been opened to visit:
https://accounts.google.com/o/oauth2/auth?response_type=codeamp;client_id=000000000000-abcdefghijklmnopqrstuvwxyz.apps.googleusercontent.comamp;redirect_uri=http://localhost:8085/amp;scope=openid https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/cloud......
Credentials saved to file: [/Users/$HOME/.config/gcloud/application_default_credentials.json]
These credentials will be used by any library that requests Application Default Credentials (ADC).
/Users/$HOME/.bin/google-cloud-sdk/lib/third_party/google/auth/_default.py:69: UserWarning: Your application has authenticated using end user credentials from Google Cloud SDK without a quota project. You might receive a "quota exceeded" or "API not enabled" error. We recommend you rerun `gcloud auth application-default login` and make sure a quota project is added. Or you can use service accounts instead. For more information about service accounts, see https://cloud.google.com/docs/authentication/
warnings.warn(_CLOUD_SDK_CREDENTIALS_WARNING)
Quota project "<PROJECT_NAME>" was added to ADC which can be used by Google client libraries for billing and quota. Note that some services may still bill the project owning the resource.
Затем запустите: pulumi preview
Похоже zone:
, что теперь он устарел, для меня работает следующая конфигурация:
const cluster = new gcp.container.Cluster("cluster", {
initialNodeCount: 1,
loggingService: "logging.googleapis.com/kubernetes",
monitoringService: "monitoring.googleapis.com/kubernetes",
removeDefaultNodePool: true,
enableLegacyAbac: false,
enableBinaryAuthorization: true,
addonsConfig: {
horizontalPodAutoscaling: {
disabled: false,
},
istioConfig: {
disabled: false,
auth: "AUTH_MUTUAL_TLS",
},
cloudrunConfig: {
disabled: true
}
},
}, {
customTimeouts: {
create: "30m",
update: "30m",
delete: "30m"
}
});