Configurazione dell'ambiente Google Cloud

Questa pagina descrive i passaggi per configurare l'ambiente Google Cloud in modo da poter distribuire le app Kubernetes.

Creare lo spazio di lavoro

Ti consigliamo di creare un nuovo progetto nella console Google Cloud principalmente per i tuoi prodotti Cloud Marketplace.

Per gestire i prodotti che invii a Cloud Marketplace, è consigliabile: crei un nuovo progetto con un ID progetto che termina con -public. Per creare un progetto per i tuoi prodotti, consulta la pagina Creare e gestire progetti.

Se hai già configurato un progetto da vendere su Cloud Marketplace che vuoi utilizzare, verifica che i ruoli di Identity and Access Management (IAM) siano concessi correttamente per Kubernetes e vai a Configurare un registry dei container.

Concedi ruoli per il tuo progetto

Per completare la configurazione del progetto, completa i seguenti passaggi:

  1. Dopo aver creato il progetto, concedi i seguenti ruoli a livello di progetto livello:

    • editor di progetto per cloud-commerce-marketplace-onboarding@twosync-src.google.com
    • Amministratore Service Management (roles/servicemanagement.serviceAdmin), a cloud-commerce-marketplace-onboarding@twosync-src.google.com e managed-services@cloud-marketplace.iam.gserviceaccount.com
    • Editor di configurazione (roles/servicemanagement.configEditor), a cloud-commerce-producer@system.gserviceaccount.com

    Per concedere l'accesso al tuo progetto, consulta Concessione, modifica e revoca dell'accesso alle risorse.

  2. Concedi i seguenti ruoli a livello di servizio a cloud-commerce-procurement@system.gserviceaccount.com:

    • Consumer servizi (roles/servicemanagement.serviceConsumer)
    • Titolare del servizio (roles/servicemanagement.serviceController)

    Per i passaggi per concedere l'accesso a livello di servizio, vedi Concedere e revocare l'accesso all'API.

  3. Imposta un contatto per la sicurezza. Per saperne di più, consulta la pagina relativa alla gestione dei contatti per le notifiche.

  4. Compila il modulo Informazioni sul progetto fornito dal team di Cloud Marketplace. te.

Configurare un registry dei container

Per ospitare le immagini container per la tua app, hai bisogno di un repository Container Registry. Artifact Analysis esegue continuamente la scansione delle immagini dell'app per rilevare le vulnerabilità, in modo da poter esaminare e risolvere i problemi prima di inviare il prodotto a Cloud Marketplace.

Per configurare Container Registry, Docker e Google Cloud SDK, segui la guida rapida di Container Registry.

Dopo aver configurato Container Registry, nel progetto che contiene il registry, concedi il ruolo Visualizzatore progetto a cloud-commerce-marketplace-onboarding@twosync-src.google.com.

Abilita l'API Container Analysis

Devi abilitare l'API Artifact Analysis, che analizza il tuo container in Container Registry per individuare le vulnerabilità. Per una panoramica dell'analisi delle vulnerabilità in Artifact Analysis, consulta la documentazione di Container Registry.

Aggiungi il tuo prodotto a Cloud Marketplace

Per creare e pubblicare il tuo prodotto in Cloud Marketplace, utilizza Producer Portale. Il tuo Partner Engineer lo abilita per te dopo che hai completato Cloud Marketplace Modulo con le informazioni sul progetto.

Per pubblicare il tuo prodotto in Producer Portal, crea una voce per il prodotto e invia le seguenti informazioni per la revisione:

  • Dettagli del prodotto: aggiungi le schede e le informazioni di marketing relative al prodotto.
  • Prezzi: scegli e specifica il tuo modello di prezzi per determinare in che modo i clienti ti pagheranno per il tuo prodotto.
  • Immagini container: fornisci il repository di Google Container Registry che include le immagini container.
  • Conformità open source: assicurati che il tuo prodotto sia conforme alle linee guida di Google per il software open source.

Puoi inviare queste revisioni in qualsiasi momento e in qualsiasi ordine. Alcune recensioni potrebbero l'approvazione può richiedere fino a due settimane, pertanto ti consigliamo di consultare i requisiti e iniziare il prima possibile.

Per creare la voce di Cloud Marketplace del tuo prodotto:

  1. Apri il Producer Portal nella console Google Cloud:

    https://console.cloud.google.com/producer-portal?project=YOUR_PUBLIC_PROJECT_ID
    

    Sostituisci YOUR_PUBLIC_PROJECT_ID con l'ID per il pubblico creato per Cloud Marketplace, ad esempio my-organization-public.

  2. Nella parte superiore della pagina, fai clic su Aggiungi prodotto.

  3. Seleziona Kubernetes.

  4. In Nome del prodotto, assegna un nome al prodotto e controlla l'ID prodotto. La L'ID prodotto viene utilizzato nell'URL della scheda di Cloud Marketplace.

  5. Fai clic su Crea. La creazione del prodotto potrebbe richiedere alcuni secondi.

Puoi aggiungere il modello di determinazione del prezzo e le informazioni di marketing per la tua soluzione in passaggi successivi.

Crea un cluster di sviluppo in Kubernetes Engine

Puoi usare Google Kubernetes Engine per gestire e scalare i cluster Kubernetes. Per creare un cluster di test ed eseguire il deployment di un'app di base, segui la guida rapida di Google Kubernetes Engine.

Installa lo strumento di sviluppo mpdev

Lo strumento mpdev è un container che raggruppa utilità per testare e pubblicare immagini dell'app. Durante l'installazione di mpdev non è necessario inviare un'app per puoi eseguire mpdev per verificare il tuo ambiente di sviluppo e testare se l'app viene installata correttamente nel cluster di sviluppo.

Installa mpdev dal repository GitHub degli strumenti di Cloud Marketplace.

Per informazioni sull'utilizzo di mpdev per controllare l'ambiente e testare l'app: vedi il riferimento mpdev su GitHub.

Organizzazione delle uscite

In generale, ogni versione dell'app deve adottare il controllo delle versioni semantico 2.0, che segue la convenzione di numerazione MAJOR.MINOR.PATCH. Ogni versione deve avere un numero di versione univoco, ad esempio 1.0.1, 1.0.2, 1.3.1 e così via. Facoltativamente, aggiungi un trattino dopo il numero di versione per aggiungere un modificatore pre-release. ad esempio 1.3.1-alpha201910. I modificatori pre-release possono essere usati per archiviare e evidenziare eventuali informazioni aggiuntive che ritieni utili, come le date di creazione che indica quando sono state create le versioni.

Ti consigliamo di rilasciare il software in canali. Ogni canale è costituito da una serie di versioni con aggiornamenti compatibili con le versioni precedenti. I canali di rilascio devono essere basati su una versione secondaria, ad esempio 4.1.x. Come best practice, evita di utilizzare nomi di versioni generici come latest.

Ad esempio, se rilasci la versione 2.0 del software su Cloud Marketplace e si prevede che le versioni 2.0.1, 2.0.5 e così via saranno compatibili con le versioni precedenti di 2.0, organizza queste release in 2.0 percorso di rilascio.

Quando pubblichi una versione non compatibile con le versioni precedenti della tua app o una versione che richiede agli utenti di eseguire la procedura di migrazione manuale, pubblicala su un nuovo canale in modo che gli utenti possano pianificare i propri aggiornamenti.

Scegli gli identificatori dei prodotti

Devi selezionare i seguenti identificatori per la tua azienda, il tuo prodotto e immagini container, utilizzate per creare gli URL di Cloud Marketplace, e gli URI delle immagini container:

  • Il nome della tua azienda. Ad esempio, se il nome dell'azienda è Examplesoft Inc., puoi utilizzare l'identificatore examplesoft.

  • Il nome del tuo prodotto. Ad esempio, se il nome del prodotto è Example Pro, utilizzano l'identificatore example-pro.

  • Il canale di rilascio del prodotto, ad esempio 4.0.

    Consulta i requisiti per organizzare le uscite.

  • Le tue immagini container. Seleziona un identificatore univoco per ogni immagine contenitore nella tua app. I seguenti identificatori sono obbligatori per tutte le app:

    • L'immagine principale: questa immagine container è l'immagine principale del tuo e utilizza lo stesso identificatore del prodotto. Ad esempio, se l'ID prodotto è example-pro, l'immagine principale utilizza la lo stesso identificatore.
    • deployer: l'immagine container di deployment per la traccia. Il contenitore di deployment viene eseguito quando gli utenti eseguono il deployment dell'app dalla console Google Cloud. Puoi creare un'immagine di deployment quando crei il pacchetto dell'app.

Ad esempio, la società Examplesoft Inc. sceglie i seguenti identificatori per il loro prodotto, Example Pro:

Nome Identificatore
Società examplesoft Inc examplesoft
Prodotto Pro di esempio esempio-pro
Immagine [1] (principale) Server Pro di esempio n/a
Immagine [2] Coda di esempio example-queue
Immagine [deployer] n/a deployer
Canale di rilascio [1] Versione 4.x.x 4.0
Canale di rilascio [2] Versione 5.x.x 5,0

Per questi identificatori, vengono generate automaticamente le seguenti informazioni:

  • L'URL del prodotto in Cloud Marketplace: https://console.cloud.google.com/marketplace/details/examplesoft/example-pro

  • Gli URI dell'immagine container:

    • marketplace.gcr.io/examplesoft/example-pro:4.0
    • marketplace.gcr.io/examplesoft/example-pro/example-queue:4.0
    • marketplace.gcr.io/examplesoft/example-pro/deployer:4.0
    • marketplace.gcr.io/examplesoft/example-pro:5.0
    • marketplace.gcr.io/examplesoft/example-pro/example-queue:5.0
    • marketplace.gcr.io/examplesoft/example-pro/deployer:5.0