Lansering og avslutning EC2-forekomster ved hjelp av AWS-kommandolinjegrensesnittet er hoveddelen av å bruke automatisering for horisontal skalering av infrastruktur på AWS. AWS -infrastrukturressurser overvåkes kontinuerlig, og en ny EC2 -forekomst blir lansert eller avsluttes avhengig av ressursene som leveres og belastningen. AWS-kommandolinje-grensesnitt gjør det mulig for en å overvåke og levere infrastruktur på AWS ved hjelp av noen automatiseringsskript. Denne bloggen vil diskutere hvordan en EC2 -forekomst kan lanseres ved hjelp av Command Line -grensesnittet på AWS.
Konfigurer AWS CLI -legitimasjon
For å bruke AWS-kommandolinjegrensesnittet, genererer du og konfigurerer AWS-kommandolinjegrensesnittets legitimasjon på systemet ditt på systemet ditt. Følgende kommando kan brukes til å konfigurere AWS-kommandolinje-grensesnittopplysning på ditt lokale system.
ubuntu@ubuntu: ~ $ aws konfigurere
Opprett VPC
Den første tingen før du lanserer en EC2 -forekomst er å sette opp en VPC (virtuell privat sky) der EC2 -forekomsten vil bli lansert. Først må du liste opp alle VPC -ene som er tilgjengelige i en bestemt region.
ubuntu@ubuntu: ~ $ aws ec2 beskriver-vpcs \
--Region US-East-1
Fra utgangen er det tydelig at det bare er en standard VPC i USA-East-1-regionen. Bruk nå Create-VPC-kommandoen til EC2-tjenesten for å opprette en VPC.
ubuntu@ubuntu: ~ $ aws ec2 create-vpc \
--CIDR-Block 192.168.0.0/16 \
--Region US-East-1
Kommandoen ovenfor vil opprette en VPC med en spesifisert CIDR -blokk og generere følgende utgang.
Legg merke til IDen til VPC, da den vil bli brukt til å lage andre ressurser i VPC.
Lag undernett
Etter å ha opprettet VPC, lag nå et undernett inne i den tidligere opprettet VPC. Undernettet kan opprettes ved hjelp av Create-Subnet-kommandoen levert av AWS-kommandolinjegrensesnittet.
ubuntu@ubuntu: ~ $ aws ec2 create-subnet \
--VPC-ID\
--CIDR-Block 192.168.0.0/24 \
--Region US-East-1
Endre nå undernettet for automatisk å tilordne offentlig IP til EC2 -forekomstene som er lansert inne i undernettet. Utfør dette trinnet bare på undernettene du vil offentliggjøre.
ubuntu@ubuntu: ~ $ aws ec2 modify-subnet-attributt \
--undernett-ID\
--kart-public-ip-on-lansering \
--Region US-East-1
Opprett og fest internettporten til VPC
Internet Gateway muliggjør internettforbindelse til og fra VPC på AWS. Bruk nå Create-Internet-Gateway-kommandoen til EC2-tjenesten for å opprette en internett gateway.
ubuntu@ubuntu: ~ $ aws ec2 create-internet-gateway \
--Region US-East-1
Fest nå internettporten til den tidligere opprettet VPC ved hjelp av vedlegg-internett-Gateway-kommandoen til EC2-tjenesten.
ubuntu@ubuntu: ~ $ aws ec2 vedlegg-internett-gateway \
--VPC-ID\
--Internett-Gateway-ID\
--Region US-East-1
Lag og tilknyttet rutebord med undernett
Internett -gateway er festet til VPC, og nå kan vi rute trafikken fra undernettet vårt til Internet Gateway ved hjelp av rutetabellen. Ved å gjøre det, vil vi gjøre vårt undernett til et offentlig undernett. Lag rutetabellen ved å bruke Create-Route-Table-kommandoen til EC2-tjenesten.
ubuntu@ubuntu: ~ $ aws ec2 create-route-table \
--VPC-ID\
--Region US-East-1
Det vil lage en rutebord med standard rute som rutet all trafikk inne i undernettet. Lag nå en ny rute som vil rute all trafikk mot Internet Gateway som muliggjør internettforbindelse.
ubuntu@ubuntu: ~ $ aws ec2 create-route \
--Rute-table-id\
--Destinasjon-CIDR 0.0.0.0/0 \
--Gateway-id\
--Region US-East-1
Etter å ha opprettet rutetabellen og ruten, bruker du nå tilknyttet-rute-tabell-kommandoen for å knytte rutebordet til undernettet.
ubuntu@ubuntu: ~ $ aws EC2 Associate-Route-Table \
--undernett-ID\
--Rute-table-id\
--Region US-East-1
Opprett sikkerhetsgruppe
Etter å ha opprettet VPC-, undernett- og rutetabellen, er det nå på tide å opprette en sikkerhetsgruppe for EC2 -forekomsten. Sikkerhetsgruppe er en virtuell brannmur levert av AWS og brukes til å kontrollere den innkommende og utgående trafikken fra EC2 -forekomster. AWS-kommandolinjegrensesnitt gir kommando for sikkerhetsgruppe fra EC2-tjenesten for å opprette sikkerhetsgruppen.
ubuntu@ubuntu: ~ $ aws EC2 Create-Security-Group \
--Gruppenavn Demo-SG \
--Beskrivelse “Sikkerhetsgruppe for Demo -forekomst” \
--VPC-ID\
--Region US-East-1
Kommandoen ovenfor vil opprette en sikkerhetsgruppe i den spesifiserte VPC og returnere sikkerhetsgruppe -IDen som svar.
Etter å ha opprettet sikkerhetsgruppen, konfigurerer du sikkerhetsgruppen for å tillate eller blokkere inngående og utgående trafikk. For denne sikkerhetsgruppen vil vi åpne port 22 for SSH -tilkobling og port 80 for HTTP -trafikk.
ubuntu@ubuntu: ~ $ aws ec2 autoriserer-sikkerhetsgruppe-ingress \
--gruppe-id\
--Protokoll TCP \
--port 80 \
--CIDR 0.0.0.0/0 \
--Region US-East-1
ubuntu@ubuntu: ~ $ aws ec2 autoriserer-sikkerhetsgruppe-ingress \
--gruppe-id\
--Protokoll TCP \
--port 22 \
--CIDR 0.0.0.0/0 \
--Region US-East-1
Ovennevnte to kommandoer vil lage to inntrengingsregler for sikkerhetsgruppen for å tillate inngående trafikk fra havner 22 og 80.
Generer SSH -tast
Før du starter en EC2-forekomst ved hjelp av AWS-kommandolinjegrensesnittet, oppretter du en SSH-tast. En SSH -tast brukes til autentisering, og den er sikrere enn de konvensjonelle brukernavnet og passordmetodene for autentisering. AWS-kommandolinje-grensesnitt gir Create-Key-Pair-kommandoen fra EC2-tjenesten for å opprette et SSH-nøkkelpar.
ubuntu@ubuntu: ~ $ aws ec2 create-key-pair \
--Nøkkelnavn Demo-Key-Pair \
--Utgangstekst \
--spør “Keymateriale” \
--Region US-East-1> ./Demo-Key-Pair.Pem
Create-Key-Pair-kommandoen tar nøkkelnavn og outputtypen som alternativer, og standardutgangen til denne kommandoen er omdirigert til en fil som heter Demo-Key-Pair.Pem. Bruk CAT -kommandoen for å sjekke om nøkkelen genereres lokalt eller ikke.
ubuntu@ubuntu: ~ $ cat demo-key-pair.Pem
Etter å ha generert SSH-tasten, må du nå liste SSH-tasten ved å bruke kommandoen for beskrivelses-par-par av EC2-tjenesten for å bekrefte om den er opprettet på AWS eller ikke.
ubuntu@ubuntu: ~ $ aws ec2 beskrive-nøkkel-par \
--Nøkkelnavn Demo-Key-Pair \
--Region US-East-1
Start EC2 -forekomst ved hjelp av CLI
Så langt har vi laget alle ressursene som ble brukt til å starte EC2 -forekomsten; Nå er det på tide å starte en EC2-forekomst ved å bruke kommandolinjegrensesnittet. AWS-kommandolinje-grensesnittet gir kommandoen Run-Instances for å starte EC2-forekomsten.
ubuntu@ubuntu: ~ $ aws ec2 run-instances \
--Image-id\
--Tell 1 \
--forekomst-type T2.nano \
--Nøkkelnavn Demo-Key-Pair \
--Sikkerhetsgruppe-ID-er\
--undernett-ID\
--Region US-East-1
Kommandoen ovenfor vil returnere en lang utgang som inkluderer detaljert informasjon fra EC2 -forekomsten. Kopier nå forekomst -ID og bruk følgende kommando for å bekrefte om forekomsten er opprettet eller ikke.
ubuntu@ubuntu: ~ $ aws ec2 beskrive-instanser \
--forekomst-id\
--Region US-East-1
Konklusjon
AWS-kommandolinjegrensesnitt er et kraftig verktøy for å automatisere levering og avslutning av EC2-forekomstene. AWS-kommandolinjegrensesnitt gir forskjellige kommandoer for å lage forskjellige ressurser på AWS-skyen. Denne bloggen brukte kommandolinjegrensesnittet for å lage forskjellige ressurser som VPC, Internet Gateway, Subnet, Route Table, SSH Key, Security Group, Route Table Ruter og EC2-forekomst. Etter å ha lest denne bloggen, vil du kunne opprette en EC2-forekomst ved å bruke kommandolinjegrensesnittet.