AWS CloudShell – dostęp do zasobów AWS z wiersza poleceń
Niezależnie od tego, ile automatyzacji stworzyłeś, jak świetny jesteś w ćwiczeniu IAC (Infrastructure as Code), czasami musisz wchodzić w interakcję ze swoimi zasobami AWS w wierszu poleceń. Być może będziesz musiał sprawdzić albo dopasować plik konfiguracyjny, dokonać szybkiej naprawy środowiska produkcyjnego lub nawet eksperymentować z niektórymi nowymi funkcjami bądź usługami AWS.
Niektórzy z klientów czują się najbardziej komfortowo, kiedy pracują w obrębie przeglądarki internetowej i wciąż nie skonfigurowali ani nie dostosowali swojego własnego wiersza poleceń (CLI). Twierdzą, że nie chcą zajmować się aplikacjami klientów, kluczami publicznymi, danymi uwierzytelniającymi AWS, narzędziami itp. Podczas gdy żaden z tych kroków nie jest trudny ani nie zajmuje zbyt dużo czasu, może mimo wszystko wydawać się złożony i powodować napięcie, dlatego zespół stara się zrobić wszystko, co w jego mocy, aby dało się tego uniknąć.
Pora na AWS CloudShell
Aby proces uzyskiwania dostępu do powłoki osłaniającej AWS był dokładny, szybki i bezpieczny, warto zainteresować się nowo uruchomionym AWS CloudShell. Każde środowisko powłoki uruchamiane z CloudShell posiada zainstalowany i skonfigurowany interfejs wiersza poleceń AWS Command Line Interface (CLI) (v2), dzięki czemu możesz uruchamiać polecenia aws zaraz po „wyjęciu z pudełka”. Środowiska zawierają także środowiska wykonawcze programów Python oraz Node i wielu więcej, które pojawią się w przyszłości.
Aby rozpocząć, należy kliknąć na ikonę CloudShell w konsoli zarządzania AWS (AWS Management Console):
Powłoka konfiguruje się w przeciągu kilku sekund, dlatego możliwe jest natychmiastowe wydanie pierwszej komendy aws:
Środowisko powłoki jest oparte na Amazon Linux 2. Można przechowywać do 1 GB plików na region w katalogu domowym, które będą dostępne za każdym razem, kiedy powłoka zostanie otwarta w regionie. Dotyczy to także plików konfiguracyjnych powłoki jak .bashrc i plików historii powłoki.
Dostęp do powłoki można uzyskać poprzez SSO lub jako dowolny podmiot IAM, który może zalogować się do AWS Management Console, w tym do ról operacyjnych. W celu uzyskania dostępu do CloudShell muszą obowiązywać zasady AWS Cloud Shell Full Access. Powłoka działa jako zwykły (nieuprzywilejowany) użytkownik, ale może również wywoływać programy z uprawnieniami innych użytkowników (sudo) i zainstalować pakiety, jeśli będzie to konieczne.
Poniżej znajduje się kilka funkcji, o których warto wiedzieć:
Motywy i rozmiary czcionek – możesz przełączać się pomiędzy jasnymi i ciemnymi motywami i wybrać jeden z pięciu rozmiarów czcionek:
Zakładki i Sesje – możesz mieć otwartych kilka sesji w tym samym regionie i możesz kontrolować ich „zachowanie”; z możliwością rozdzielenia horyzontalnego i wertykalnego.
Możesz także pobrać pliki ze środowiska powłoki do swojego pulpitu, a następnie przesłać je z pulpitu do powłoki.
Warto wiedzieć
Poniżej znajduje się kilka ważnych informacji, o których warto pamiętać podczas oceny CloudShell:
- Limity czasowe i trwałość – każda sesja CloudShell wygaśnie po około 20 minutach braku aktywności i może zostać przywrócona poprzez odświeżenie okna:
- Regiony – CloudShell jest aktualnie dostępna w następujących regionach: USA – Północnej Wirginii, Ohio, Oregonie, na terenie Europy (Irlandia), Azji Pacyficznej (Tokio); pozostałe regiony będą dostępne wkrótce.
- Pamięć trwała – pliki przechowywanie wewnątrz $HOME utrzymują się pomiędzy wywołaniami (inwokacjami) CloudShell z limitem 1 GB na region; pozostała pamięć jest nietrwała. Oznacza to, że jakiekolwiek oprogramowanie zainstalowane poza $HOME nie przetrwa i niezależnie od tego, co zmienisz (lub zepsujesz), możesz zawsze rozpocząć na nowo z nowym środowiskiem CloudShell.
- Dostęp do sieci – sesje mogą nawiązywać połączenia wychodzące z internetem, ale nie zezwalają na jakikolwiek rodzaj połączeń przychodzących. Aktualnie sesje nie mogą łączyć się z zasobami w prywatnych podsieciach VPC, jednakże to też znajduje się już w planach.
- Czas pracy – oprócz czasów pracy Pythona i Node zainstalowane i gotowe do pracy są także: Bash, PowerShell, jq, git, ECS CLI, SAM CLI, npm oraz pip.
- Cennik – możesz używać do 10 powłok w każdym regionie jednocześnie, bez opłat. Płacisz tylko za pozostałe zasoby AWS, których używasz z CloudShell do stworzenia i uruchamiania swoich aplikacji.
Źródło: https://aws.amazon.com/blogs/aws/