Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Gestisci le applicazioni container locali configurando Amazon ECS Anywhere con AWS CDK
Creato dal dott. Rahul Sharad Gaikwad (AWS)
Archivio amazon-ecs-anywhere-cdk di codice | Ambiente: PoC o pilota | Tecnologie: modernizzazione; contenitori e microservizi; cloud ibrido DevOps; infrastruttura |
Carico di lavoro: tutti gli altri carichi di lavoro | Servizi AWS: AWS CDK; Amazon ECS; AWS Identity and Access Management |
Riepilogo
Amazon ECS
Questo modello illustra i passaggi per configurare ECS Anywhere utilizzando gli stack AWS Cloud Development Kit (AWS CDK)
Prerequisiti e limitazioni
Prerequisiti
Un account AWS attivo.
AWS Command Line Interface (AWS CLI), installata e configurata. (Vedi Installazione, aggiornamento e disinstallazione dell'AWS CLI nella documentazione dell'interfaccia a riga di comando di AWS.)
AWS CDK Toolkit, installato e configurato. (Consulta AWS CDK Toolkit nella documentazione di AWS CDK e segui le istruzioni per installare la versione 2 a livello globale).
Node package manager (npm), installato e configurato per AWS CDK in. TypeScript (Vedi Download e installazione di Node.js e npm nella documentazione di npm
.)
Limitazioni
Per limitazioni e considerazioni, consulta Istanze esterne (Amazon ECS Anywhere) nella documentazione di Amazon ECS.
Versioni del prodotto
AWS CDK Toolkit versione 2
npm versione 7.20.3 o successiva
Node.js versione 16.6.1 o successiva
Architettura
Stack tecnologico Target
AWS CloudFormation
AWS CDK
Amazon ECS Anywhere
AWS Identity and Access Management (IAM)
Architettura Target
Il diagramma seguente illustra un'architettura di sistema di alto livello di configurazione di ECS Anywhere che utilizza AWS CDK con TypeScript, come implementato da questo modello.
Quando distribuisci lo stack CDK AWS, viene creato uno CloudFormation stack su AWS.
Lo CloudFormation stack fornisce un cluster Amazon ECS e le relative risorse AWS.
Per registrare un'istanza esterna con un cluster Amazon ECS, devi installare AWS Systems Manager Agent (SSM Agent) sulla tua macchina virtuale (VM) e registrare la macchina virtuale come istanza gestita da AWS Systems Manager.
È inoltre necessario installare l'agente contenitore Amazon ECS e Docker sulla macchina virtuale per registrarla come istanza esterna nel cluster Amazon ECS.
Quando l'istanza esterna è registrata e configurata con il cluster Amazon ECS, può eseguire più contenitori sulla macchina virtuale, che è registrata come istanza esterna.
Automazione e scalabilità
Il GitHub repository
Strumenti
AWS Cloud Development Kit (AWS CDK) è un framework di sviluppo software che aiuta a definire e fornire l'infrastruttura cloud AWS in codice.
AWS Command Line Interface (AWS CLI) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
Codice
Il codice sorgente per questo pattern è disponibile nel GitHub repository Amazon ECS Anywhere CDK
Epiche
Attività | Descrizione | Competenze richieste |
---|---|---|
Verifica la versione di AWS CDK. | Verifica la versione di AWS CDK Toolkit eseguendo il seguente comando:
Questo modello richiede la versione 2 di AWS CDK. Se disponi di una versione precedente di AWS CDK, segui le istruzioni nella documentazione di AWS CDK per aggiornarla. | DevOps ingegnere |
Configura le credenziali AWS. | Per configurare le credenziali, esegui il
| DevOps ingegnere |
Attività | Descrizione | Competenze richieste |
---|---|---|
Clona il repository di codice AWS CDK. | Clona il repository di GitHub codice per questo pattern usando il comando:
| DevOps ingegnere |
Avvia l'ambiente. | Per distribuire il CloudFormation modello AWS nell'account e nella regione AWS che desideri utilizzare, esegui il seguente comando:
Per ulteriori informazioni, consulta Bootstrapping nella documentazione di AWS CDK. | DevOps ingegnere |
Attività | Descrizione | Competenze richieste |
---|---|---|
Installa le dipendenze dei pacchetti e compila i file TypeScript . | Installa le dipendenze del pacchetto e compila TypeScript i file eseguendo i seguenti comandi:
Questi comandi installano tutti i pacchetti dal repository di esempio. Importante: in caso di errori relativi ai pacchetti mancanti, usa uno dei seguenti comandi:
oppure
Per ulteriori informazioni, consulta npm ci | DevOps ingegnere |
Compilare il progetto. | Per creare il codice del progetto, esegui il comando:
Per ulteriori informazioni sulla creazione e la distribuzione del progetto, consulta La tua prima app AWS CDK nella documentazione di AWS CDK. | DevOps ingegnere |
Distribuisci il progetto | Per distribuire il codice del progetto, esegui il comando:
| DevOps ingegnere |
Verifica la creazione e l'output dello stack. | Apri la CloudFormation console AWS all'indirizzo https://console.aws.amazon.com/cloudformation | DevOps ingegnere |
Attività | Descrizione | Competenze richieste |
---|---|---|
Configura la tua VM usando Vagrant. | A scopo dimostrativo, puoi usare HashiCorp Vagrant | DevOps ingegnere |
Registra la tua macchina virtuale come istanza esterna. | 1. Accedi alla VM Vagrant utilizzando il comando. 2. Crea un codice di attivazione e un ID che puoi utilizzare per registrare la tua macchina virtuale con AWS Systems Manager e attivare l'istanza esterna. L'output di questo comando include
3. Esporta l'ID di attivazione e i valori del codice:
4. Scarica lo script di installazione sul server o sulla macchina virtuale locale:
5. Esegui lo script di installazione sul server o sulla macchina virtuale locale:
Per ulteriori informazioni sulla configurazione e la registrazione di una macchina virtuale, consulta Registrazione di un'istanza esterna in un cluster | DevOps ingegnere |
Verifica lo stato di ECS Anywhere e della macchina virtuale esterna. | Per verificare se la tua casella virtuale è connessa al piano di controllo di Amazon ECS e se è in funzione, usa i seguenti comandi:
| DevOps ingegnere |
Attività | Descrizione | Competenze richieste |
---|---|---|
Pulisci ed elimina le risorse. | Dopo aver seguito questo schema, dovresti rimuovere le risorse che hai creato per evitare di incorrere in ulteriori addebiti. Per eseguire la pulizia, esegui il comando:
| DevOps ingegnere |