Malati di Gestione di Server? Ecco Come iniziare con Contenitori su AWS

0
206

Contenitori pacchetto di backup di tutte le app del codice, le dipendenze, e di configurazione in una singola immagine che è possibile eseguire su Amazon Elastic Contenitore di Servizio senza la configurazione o la gestione di una singola istanza EC2.

Quali Sono i Contenitori, e Come Li posso Utilizzare?

I contenitori sono Unix concetto che consente di eseguire le applicazioni isolate ambienti virtualizzati, libero di degrado di prestazioni che viene fornito con le macchine virtuali in esecuzione.

Si può pensare a loro come i Cd che contengono tutto ciò che la vostra applicazione ha bisogno per funzionare. È possibile inviare questo CD di AWS, e saranno in grado di gestire la creazione di copie e la distribuzione ai più lavoro dei server. Questi server verrà eseguito l’applicazione confezionato in CD, e può essere rapidamente avviato e terminato come parte di un sistema di auto-scaling gruppo sia partita spostamento di carico e ottimizzare i costi.

Mentre sono molto utili nel loro diritto, contenitori servire anche un altro importante scopo: portare la vostra infrastruttura e delle operazioni sulla stessa versione di gestione del flusso di lavoro, come il tuo codice, e sincronizzare il vostro sviluppo e ambienti di produzione. Il codice verrà eseguito lo stesso sul tuo locale macchina di sviluppo, come sarà sul vostro server. E, perché tutta la configurazione del tuo server fa parte di questo contenitore, può essere gestito tramite git, come si dovrebbe gestire il vostro codice sorgente.

Ci sono alcune limitazioni di contenitori di se. Sono per lo più di sola lettura; strumenti di orchestrazione come ECS e Kubernetes sono progettati intorno contenitori essendo apolide. Solo realmente desidera utilizzare per calcolare, mai di archiviazione se si esegue contenitori in un ambiente riservato istanza EC2, potrebbe essere un bene per l’esecuzione di una banca dati su di loro, ma le applicazioni in esecuzione su ECS sono progettati per avere flessibile di avvio e di arresto. Tutti i dati memorizzati su di loro, che è effimero, proprio come la RAM.

Se l’applicazione fa uso di un database o di archiviazione locale, si potrebbe desiderare di prendere in considerazione lo spostamento che per un servizio separato, che può essere più conveniente che in esecuzione su EC2 comunque. AWS ha gestito molti servizi di database e S3 è molto a buon mercato per la conservazione rispetto a EBS o EFS.

Pacchetto la Tua App Mobile

Questa è la parte più difficile, e la parte che è più specifico per la tua app—creazione e configurazione del contenitore. Ironia della sorte, questo è molto simile alla configurazione di server, tranne che dovrete fare una volta tutta la tua configurazione sarà in un posto centrale, e sarete in grado di sincronizzare il vostro sviluppo e ambienti di produzione. I benefici superano notevolmente iniziale mal di testa.

Dovrai installare finestra Mobile Desktop per il tuo sistema operativo, in modo che è possibile eseguire e gestire i contenitori sul tuo computer locale.

Il principale punto di ingresso che definisce la configurazione Mobile è chiamato un Dockerfile. Si desidera creare una nuova directory del progetto e creare un nuovo Dockerfile, chiamato semplicemente Dockerfilewith senza estensione:

toccare Dockerfile

All’interno di questo file, devi utilizzare la finestra Mobile comandi per indicare Mobile su come costruire la vostra istanza. Per iniziare, è probabile che si desidera forcella un’immagine preesistente da scaricatore di porto Hub, come Ubuntu, con il comando:

DA ubuntu

Ci sono molti precompilati finestra Mobile di immagini per scegliere da, come le immagini con il software come nginx preinstallato.

È possibile collegare cartelle locali in questa directory di progetto per le cartelle nell’immagine con il comando COPIA. Per esempio, se si ha una cartella di progetto denominata nginx/ con la configurazione di nginx, si possono copiare che oltre con:

COPIA nginx /etc/nginx/

Questo farà in modo che l’eventuale contenitore ha la corretta configurazione di default nginx posizione.

La finestra mobile è molto più complicato di questo, e ci sono molti comandi per l’esecuzione di script di inizializzazione, passando stateful informazioni ai contenitori, ed esegue l’applicazione all’avvio. Potete leggere la nostra guida completa sulla confezione la vostra applicazione Mobile per saperne di più.

Invia la Tua Dockerfile di Amazon per ECS

Avrete bisogno di caricare la tua immagine di un ECR repository. Testa a RACCOLTA Console di Gestione, e creare un nuovo repository con un nome univoco. Scegliere “Visualizza Spingere i Comandi” e verrà visualizzata questa finestra di dialogo, che dovrebbe aiutare a collegare il tuo mobile client con il repository, costruire la vostra immagine, e caricarlo in RACC.

In breve, è necessario accedere con il tuo AWS credenziali, costruire l’immagine, dare un tag, e quindi eseguire:

mobile push

Con il repository di URI.

Una volta che hai finito con questo, oltre al capo della ECS Management Console e selezionare “inizia”. Scegliere “Custom”, come il tipo di immagine:

Inserire nel l’URI completo per la vostra immagine dovrebbe apparire come:

aws_account_id.dkr.ecr.region.amazonaws.com/repository:latest

C’è una tonnellata di extra di configurazione in questa finestra di dialogo “Configurazione Avanzata”, e si desidera assicurarsi di che leggere di tutto e di compilare tutto ciò che è utile a te. Una cosa importante è controllare “Auto-Configurare CloudWatch Log”, che consentirà di collegare il vostro containerizzato app registri di Ur.

Per impostazione predefinita, l’app verrà eseguito su AWS Fargate come il compute engine, non EC2. Fargate è AWS versione di Kubernetes; si coordina e gestisce l’esecuzione di vostri contenitori. Il principale svantaggio è che non hanno accesso a un effettivo casi, avrete bisogno di apportare modifiche attraverso la finestra mobile aggiornamenti (che è comunque). Se non si desidera utilizzare Fargate, è possibile utilizzare standard istanze EC2, che verrà eseguito il AWS ECS Contenitore Agente.

Nella schermata successiva, è necessario definire come molti dei vostri contenitori per eseguire, e ti verrà data la possibilità di creare un sistema di bilanciamento del carico tra di loro:

È inoltre possibile configurare il servizio per l’utilizzo di Auto Scaling, che scala la vostra applicazione su e giù a seconda della domanda.

Una volta fatto, fare clic su “Crea” per avviare il cluster. Sarà visibile sotto il “Cluster” della scheda ECS Console di Gestione di una volta creato.