Я не могу создать кластер для Pulumi, потому что код помечается, пожалуйста, помогите

Я работаю над созданием кластера в облаке Google через 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. Спасибо.

Отображение кода машинописного текста и соответствующих ошибок


person Sam Bayo    schedule 14.12.2020    source источник


Ответы (2)


Похоже, Pulumi не может найти проект GCP для развертывания.

Вам необходимо войти в облако Google на своей рабочей станции в соответствии с: https://www.pulumi.com/docs/get-started/gcp/begin/#configure-gcp

Или вы можете настроить связанные переменные среды: https://www.pulumi.com/docs/intro/cloud-providers/gcp/setup/#optional-settings

person Mitch G    schedule 14.12.2020

Предположим, вы установили 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=code&client_id=000000000000-abcdefghijklmnopqrstuvwxyz.apps.googleusercontent.com&redirect_uri=http%3A%2F%2Flocalhost%3A8085%2F&scope=openid+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcloud......

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"
    }
});
person ramene    schedule 04.03.2021