Jak używać AWS CLI do zarządzania instancją EC2 [część 1]

Jak używać AWS CLI do zarządzania instancją EC2 [część 1]

„AWS pozwala zarządzać wszystkimi usługami i zasobami za pomocą interfejsu wiersza poleceń. Chociaż nie otrzymujesz fantazyjnego graficznego interfejsu użytkownika, nadal jest uważany za bardziej profesjonalny i przydatny. Istnieje nawet kilka opcji, których nie można użyć za pomocą konsoli GUI, na przykład, włączając „MFA Usuń” na wiadrze S3 i generowanie wstępnie podpisanych adresów URL dla obiektu S3. Zanim zaczniesz zarządzać instancjami za pomocą AWS CLI, musisz skonfigurować go w swoim systemie. Odwiedź następujący artykuł, aby dowiedzieć się, w jaki sposób skonfigurować poświadczenia AWS CLI w systemie Windows, Linux lub Mac."

https: // linuxhint.com/configure-AWS-CLI-CREDENTYS/

W tym artykule omówiono następujące operacje, które można wykonać na EC2 za pomocą interfejsu wiersza poleceń AWS.

  • Tworzenie pary kluczy SSH
  • Tworzenie grupy bezpieczeństwa instancji
  • Tworzenie instancji EC2

Tworzenie pary kluczy SSH

Przed utworzeniem instancji EC2 na AWS musimy utworzyć klucz SSH, który zostanie skonfigurowany z instancją EC2, aby uzyskać do niego dostęp. Użyj następujących poleceń na swoim CLI AWS, aby wygenerować parę klucza SSH przed uruchomieniem instancji EC2.

Ubuntu@ubuntu: ~ $ AWS EC2 Create-Key-Pair \
--nazwa klucza \
--Kluczowy format

Tutaj właśnie podaliśmy nazwę naszej pary kluczy i format kluczowy. Aby uzyskać format kluczowy, możesz albo wybrać pem Lub ppk, w zależności od systemu operacyjnego. pem Format służy najczęściej do dostępu do systemu systemu Linux za pośrednictwem SSH, podczas gdy ppk Format służy do uzyskiwania dostępu do komputera Windows za pośrednictwem RDP.

Powyższe polecenie wygeneruje klucz prywatny w wyjściu; Musisz go zapisać natychmiast, ponieważ nigdy więcej go nie zobaczysz. Musisz zapisać to wyjście w pliku za pomocą .pem rozszerzenie i zostanie użyte do SSH w przypadku powiązania.

Tworzenie grupy bezpieczeństwa instancji

Grupy bezpieczeństwa pomagają poprawić bezpieczeństwo sieci instancji EC2, umożliwiając zdefiniowanie ruchu przychodzącego i wychodzącego dla instancji. Grupa bezpieczeństwa działa jako wirtualna zapora przed instancją EC2 i może być używana do ochrony instancji przed porwaniem. Możesz określić zakresy IP i inne grupy bezpieczeństwa jako źródła i umożliwić ruch w określonych portach z tych źródeł.

Grupy bezpieczeństwa mają ograniczenie: możesz tylko stworzyć umożliwić zasady i zaprzeczyć Nie można stworzyć zasad. Ponadto grupy bezpieczeństwa są stanowe, co oznacza, że ​​jeśli ustawisz regułę przychodzącą dla IP, automatycznie osiągnie możliwości wychodzące.

Aby utworzyć grupę zabezpieczeń za pomocą interfejsu wiersza polecenia AWS, użyj następującego polecenia w terminalu.

Ubuntu@ubuntu: ~ $ AWS ec2 create-security-group \
--Nazwa grupy \
--opis <“Security Group Description”>

W wyjściu otrzymujesz tylko identyfikator grupy bezpieczeństwa. Nowo utworzona grupa domyślnie nie ma uprawnień przychodzących i wszystkich uprawnień wychodzących. Możesz wyświetlić dane grupy bezpieczeństwa zgodnie z opisem poniżej.

Ubuntu@ubuntu: ~ $ AWS ec2 opisuj-security-grupy \
--Nazwy grupowe

Teraz, aby dodać regułę przychodzącą do grupy bezpieczeństwa, można użyć następującego polecenia.

Ubuntu@ubuntu: ~ $ AWS EC2 autoryze-security-group-iningress \
--Port 22 \
--protokół tcp \
--Identyfikator grupy \
--CIDR 0.0.0.0/0

W tym poleceniu autoryzujesz swoją grupę bezpieczeństwa, aby umożliwić ruch sieciowy z dowolnego adresu IP na porcie 22. Polecenie wygeneruje następujące dane wyjściowe.

Teraz, jeśli ponownie uruchomimy Opisz grupę bezpieczeństwa polecenie, zobaczysz nowo dodaną regułę przychodzącą.

Tworzenie instancji EC2

Tworzenie instancji EC2 z CLI jest prostym zadaniem; Istnieje wiele opcji, które możesz określić podczas tworzenia instancji EC2, którą zobaczysz jeden po drugim.

Zacznijmy od utworzenia instancji za pomocą AWS CLI z minimalnymi opcjami. Poniższe polecenie można użyć na terminalu do utworzenia instancji EC2 z minimalnymi opcjami.

Ubuntu@ubuntu: ~ $ AWS EC2 Run-instances \
--Image-ID \
--liczyć \
--typ instancji \
--nazwa klucza \
--IDS-Grupa Bezpieczeństwa

Po uruchomieniu tego polecenia otrzymasz szczegółowe dane wyjściowe nowo utworzonej instancji.

Jak widać, w poleceniu znajduje się wiele parametrów, aby utworzyć instancję EC2, a następujące jest szczegółowy opis każdego parametru.

Image-ID to identyfikator obrazu Amazon Machine lub systemu operacyjnego, którego chcesz użyć w swojej instancji. Istnieje długa lista dostępnych obrazów maszyn w AWS, a także możesz tworzyć własny obraz i sprzedać go na rynku społecznościowym.

liczyć Można użyć opcji do określenia liczby instancji EC2, które chcesz utworzyć za pomocą interfejsu wiersza polecenia AWS z tymi samymi konfiguracją.

typ instancji Opcja służy do określenia alokacji zasobów, takiej jak procesor i pamięć do instancji EC2. AWS zapewnia różne typy instancji i możesz wyświetlić wszystkie typy instancji, odwiedzając następujący link.

https: // AWS.Amazonka.com/ec2/instance-type/

nazwa klucza Opcja określa nazwę pary klucza SSH, którą musimy dołączyć do naszej instancji. Tej pary klucza SSH można następnie użyć do zdalnego dostępu do instancji EC2. W poprzedniej sekcji omówiliśmy, w jaki sposób możemy utworzyć parę klawiszy SSH za pomocą interfejsu wiersza poleceń AWS.

grupa bezpieczeństwa Opcja służy do określenia listy grup bezpieczeństwa, które zostaną dołączone do uruchomionej instancji EC2. AWS dołączy domyślną grupę bezpieczeństwa do instancji EC2, jeśli nie zostanie określona.

Dodatkowe parametry EC2

Wyjaśniliśmy już wiele parametrów instancji, ale nadal dostępnych jest wiele innych parametrów. W tej sekcji omówiono bardziej szczegółowe parametry, które pomogą nam skonfigurować nowo utworzoną instancję EC2 zgodnie z naszymi wymaganiami. Te parametry są zdefiniowane za pomocą tworzenia instancji EC2, ale są opcjonalne i nie są wymagane do określania przez cały czas.

Strefa dostępności

Każdy region AWS ma jedną lub więcej stref dostępności, które są geograficznie oddzielonymi centrami danych. Pomagają zwiększyć dostępność usługi AWS w regionie; Jeśli jedna strefa dostępności w regionie spadnie, pozostałe strefy dostępności nadal będą działać.

Po utworzeniu instancji EC2 AWS automatycznie przypisuje do niej strefę dostępności, ale możesz ją również określić zgodnie z wymogami infrastruktury. Strefę dostępności można określić za pomocą następującego parametru podczas tworzenia instancji EC2 za pomocą interfejsu wiersza polecenia AWS.

Ubuntu@ubuntu: ~ $ AWS EC2 Run-instances \
--liczyć \
--typ instancji \
--Dostępność do umieszczania =
--Image-ID \

W wyjściu można zobaczyć, że instancja jest uruchamiana w naszej pożądanej strefie dostępności.

VPC i podsieć

Zwykle tworzymy oddzielne VPC (wirtualna chmura prywatna) i podsieci dla każdej nowej aplikacji, którą wprowadzamy na nasze konto AWS. Zapewnia to wysoki poziom bezpieczeństwa i pozwala wszystkim zasobom komunikować się bez dostępu do sieci publicznej. Jeśli nie określisz VPC, wszystkie instancje są uruchamiane w losowej podsieci domyślnej VPC.

Podczas tworzenia instancji EC2 za pomocą interfejsu wiersza poleceń AWS możesz określić podsieć za pomocą -podsieć-id opcja.

Ubuntu@ubuntu: ~ $ AWS EC2 Run-instances \
--T2 typu instancji.micro \
--Podsieć podsieci-0d1721ef0b75a675b \
--Image-id AMI-0cff7528ff583bf9a \
--hrabia 1

Podczas tworzenia instancji EC2 musimy tylko określić identyfikator podsieci, a instancja EC2 jest automatycznie tworzona w VPC, do której należy podsieć.

Dane użytkownika EC2

Podczas tworzenia nowej instancji możesz określić skrypt lub polecenia, które chcesz uruchomić podczas uruchamiania, takich jak aktualizacja systemu lub zainstalowanie pakietów oprogramowania. To tylko opcjonalna rzecz do zrobienia i nie wymagana przez cały czas, ale w niektórych przypadkach może być bardzo pomocna. Aby dostarczyć dane użytkownika, musisz utworzyć skrypt bash, który zostanie podany jako parametr podczas inicjowania instancji EC2.

Więc otwórz swój terminal i utwórz w nim prosty plik tekstowy.

Ubuntu@ubuntu: ~ $ sudo nano

Napiszmy skrypt, aby zainstalować i uruchomić serwer WWW Apache w naszej instancji.

#!/bin/bash
sudo yum instaluj httpd -y
sudo systemctl start httpd

Teraz możemy użyć tego skryptu danych użytkownika do uruchomienia nowej instancji; W tej instancji będzie miał wstępnie zainstalowany i uruchomiony serwer Apache.

Użyj publicznego adresu IP nowo uruchomionej instancji EC2, aby uzyskać dostęp do portu 80 w przeglądarce, a wyświetli domyślną stronę serwera Apache Web Server.

W ten sposób możesz użyć danych użytkownika do instalacji lub skonfigurowania czegoś podczas uruchamiania instancji.

Wniosek

AWS zapewnia narzędzie wiersza poleceń do programowego zarządzania i tworzenia instancji EC2. Umożliwia to również tworzenie zasobów takich jak klawisze SSH, grupy bezpieczeństwa i wolumine przechowywania. Możesz zarządzać danymi użytkownika EC2, strefami dostępności i podzbiorami za pomocą CLI. Większość profesjonalistów w branży IT woli korzystać z CLI nad konsolą GUI, ponieważ nie musisz przełączać się między kartami i stronami internetowymi. Ponadto GUI ciągle aktualizuje, co utrudnia zarządzanie wszystkimi parametrami i opcjami.