AWS Systems Manager
AWS Systems Manager
Centralne zarządzanie operacyjne infrastrukturą AWS. Łącz się z instancjami bez SSH, zarządzaj parametrami, patchuj serwery i automatyzuj operacje.
AWS Systems Manager (SSM) to rozbudowany serwis do zarządzania operacyjnego infrastrukturą AWS i on-premises. To jak szwajcarski scyzoryk administratora - w jednym miejscu masz dostęp do sesji SSH bez otwierania portów, bezpieczne przechowywanie parametrów i sekretów, automatyczne patchowanie serwerów i wiele więcej.
SSM składa się z wielu komponentów, z których najważniejsze to Session Manager (bezpieczne połączenia bez kluczy SSH), Parameter Store (przechowywanie konfiguracji i sekretów), Patch Manager (automatyczne aktualizacje) i Run Command (zdalne wykonywanie poleceń na wielu instancjach jednocześnie).
AWS Systems Manager był pierwotnie znany jako Amazon Simple Systems Manager (SSM) - stąd prefiksy ssm: w CLI i API. Serwis zarządza milionami instancji na całym świecie. Session Manager loguje każde naciśnięcie klawisza do S3 lub CloudWatch Logs, co czyni go idealnym narzędziem do audytu.
Używaj Parameter Store z hierarchicznymi nazwami (np. /app/prod/db-host) - możesz pobrać wszystkie parametry danej ścieżki jednym wywołaniem. Dla sekretów produkcyjnych rozważ AWS Secrets Manager, który oferuje automatyczną rotację. Zawsze konfiguruj VPC Endpoints dla SSM, aby ruch nie wychodził poza sieć AWS.
Systems Manager (SSM) to zestaw narzedzi do zarzadzania infrastruktura AWS na duzej skali. Pozwala na bezpieczne laczenie sie z instancjami bez SSH, centralne zarzadzanie konfiguracja, automatyzacje operacji i utrzymanie compliance. SSM Agent zainstalowany na instancjach komunikuje sie z serwisem przez HTTPS - nie wymaga otwartych portow przychodzacych ani bastion hostow.
SSM Agent - fundament zarzadzania
SSM Agent to lekki proces dzialajacy na instancjach EC2, ktory umozliwia komunikacje z serwisem Systems Manager. Agent jest preinstalowany na Amazon Linux 2/2023, Ubuntu 16.04+, Windows Server 2016+. Dla innych AMI zainstaluj recznie lub przez User Data. Agent wymaga IAM role z policy AmazonSSMManagedInstanceCorePolicy. Komunikacja odbywa sie przez HTTPS (port 443 outbound) - instancja w private subnet potrzebuje NAT Gateway lub VPC Endpoints (ssm, ssmmessages, ec2messages).
Managed Instances - inwentaryzacja floty
Po zainstalowaniu agenta i przypisaniu IAM role, instancja pojawia sie w Fleet Manager jako managed instance. Fleet Manager pokazuje status agenta, platforme, wersje OS i zainstalowane patche. Mozesz tez zarzadzac serwerami on-premises i VM w innych cloudach - rejestruj je jako hybrid managed instances (prefiks mi-). Inventory automatycznie zbiera informacje: zainstalowane aplikacje, konfiguracja sieci, uslugi Windows, pliki, registry.
Parameter Store - centralne zarzadzanie konfiguracja
Parameter Store to hierarchiczny magazyn klucz-wartosc do przechowywania konfiguracji, connection stringow, licencji i innych danych. Wspiera String, StringList i SecureString (szyfrowany KMS). Parametry sa wersjonowane - mozesz wrocic do poprzedniej wartosci. Hierarchia umozliwia organizacje: /app/prod/db/connection-string, /app/dev/db/connection-string. Lambda, ECS i EC2 moga pobierac parametry przez API lub SDK. Tier Standard (do 10000 parametrow) jest darmowy.
Session Manager - bezpieczny dostep bez SSH
Session Manager zapewnia interaktywna powloke (bash/PowerShell) do instancji EC2 bez otwierania portow SSH (22) lub RDP (3389). Polaczenie przechodzi przez SSM Agent i HTTPS - nie potrzebujesz bastion hosta, kluczy SSH ani publicznego IP. Kazda sesja jest logowana w CloudTrail (kto sie polaczyl, kiedy) i opcjonalnie w S3/CloudWatch Logs (pelny zapis komend). Mozesz ograniczyc dostep przez IAM policies - np. tylko do instancji z tagiem Environment=dev.
Run Command - zdalne wykonywanie komend
Run Command pozwala zdalnie wykonywac komendy na setkach instancji jednoczesnie bez logowania sie na kazda z osobna. Wybierasz targets (po tagach, resource groups lub recznie), document (zestaw komend) i parametry. AWS dostarcza gotowe documenty: AWS-RunShellScript (Linux), AWS-RunPowerShellScript (Windows), AWS-InstallApplication i wiele innych. Wyniki sa dostepne w konsoli SSM, S3 lub CloudWatch Logs. Rate control pozwala limitowac rownolegle wykonania.
Patch Manager - automatyczne patchowanie
Patch Manager automatyzuje proces skanowania i instalowania patchow bezpieczenstwa na instancjach EC2. Definiujesz Patch Baseline (ktore patche sa approved/rejected), Patch Group (ktore instancje), i Maintenance Window (kiedy patchowac). Domyslne baselines zatwierdzaja patche bezpieczenstwa 7 dni po wydaniu. Skanuj codziennie (bez instalacji), patchuj w Maintenance Windows (np. niedziela 2:00). Wyniki compliance sa widoczne w Config i Security Hub.
Praktyczne wskazowki wdrazania Systems Manager jako centralnej platformy operacyjnej - od eliminacji SSH po zarzadzanie flota setek instancji.
Session Manager zamiast SSH i bastion hostow
Session Manager calkowicie eliminuje potrzebe bastion hostow, kluczy SSH i otwartych portow 22/3389. Korzyci: pelny audit trail w CloudTrail, nagrywanie sesji w S3, kontrola dostepu przez IAM (zamiast zarzadzania kluczami SSH), port forwarding do baz danych i serwisow wewnetrznych. Zamknij port 22 we wszystkich Security Groups. Wymagane VPC Endpoints w private subnets: com.amazonaws.region.ssm, ssmmessages, ec2messages. Konfiguruj Session preferences: wlacz szyfrowanie KMS i logowanie do S3.
PoczatkujacyParameter Store vs Secrets Manager
Oba serwisy przechowuja tajne wartosci, ale maja rozne zastosowania. Parameter Store: darmowy (Standard tier), idealny dla konfiguracji aplikacji, connection stringow, feature flagow. Secrets Manager: platny ($0.40/secret/miesiac), automatyczna rotacja credentiali (RDS, Redshift, DocumentDB), cross-account sharing. Zasada: uzywaj Parameter Store (SecureString) dla wiekszosci konfiguracji, Secrets Manager tylko gdy potrzebujesz automatycznej rotacji hasel baz danych.
PoczatkujacyRun Command - zarzadzanie flota na skale
Run Command to najpotezniejsze narzedzie operacyjne w SSM. Typowe zastosowania: zbieranie logow z wielu instancji jednoczesnie, restart uslug po deploy, weryfikacja konfiguracji, emergency patching. Uzywaj tagow do targetowania (np. Environment=prod AND Role=webserver). Rate control: max 10% instancji jednoczesnie, error threshold 5% (zatrzymaj jesli wiecej niz 5% failuje). Zapisuj output w S3 - konsola SSM obcina dlugie wyniki.
ZaawansowanyMaintenance Windows - okna serwisowe
Maintenance Windows definiuja kiedy mozna wykonywac operacje na infrastrukturze (patchowanie, restarty, backupy). Typowa konfiguracja: Maintenance Window co niedziele 2:00-5:00, Patch Manager jako task, target: Patch Group = Production. Uzywaj oddzielnych okien dla roznych srodowisk (dev w tygodniu, prod w weekendy). Kazde okno ma rate control i error threshold - zatrzymuje sie jesli zbyt wiele instancji failuje. Integruj z Change Management procesem.
ZaawansowanyAutomation Runbooks - powtarzalne operacje
SSM Automation Documents (Runbooks) to wielokrokowe workflow operacyjne. AWS dostarcza gotowe runbooki: AWS-RestartEC2Instance, AWS-CreateImage, AWS-StopEC2Instance. Pisz wlasne runbooki w YAML dla powtarzalnych procedur: restart aplikacji (stop service, clear cache, start service, health check), disaster recovery (create AMI, launch in DR region), incident response (isolate instance, snapshot EBS, notify team). Runbooki sa wersjonowane i audytowane.
ZaawansowanyInventory + Patch Manager dla compliance
Polacz SSM Inventory (co jest zainstalowane) z Patch Manager (co powinno byc zainstalowane) dla pelnego obrazu compliance. Inventory zbiera dane o zainstalowanych patchach, aplikacjach, konfiguracji sieci. Patch Manager skanuje i porownuje z Patch Baseline. Wyniki compliance sa automatycznie raportowane do AWS Config i Security Hub. Ustaw dzienny skan compliance (bez instalacji patchow) i tygodniowe okno patchowania. Dashboard w Explorer pokazuje compliance calej floty.
PoczatkujacyScreenshoty z AWS Console
Wkrotce pojawia sie tu zrzuty ekranu pokazujace jak korzystac z AWS Systems Manager bezposrednio w konsoli AWS.
Do czego sluzy AWS Systems Manager?
Bezpieczny dostęp do instancji
Łącz się z instancjami EC2 przez Session Manager bez otwierania portu 22, bez kluczy SSH i bez publicznego IP. Wszystko logowane w CloudTrail.
Zarządzanie konfiguracją i sekretami
Przechowuj parametry aplikacji, connection stringi i sekrety w Parameter Store. Integracja z KMS do szyfrowania wrażliwych danych.
Automatyczne patchowanie serwerów
Patch Manager automatycznie aktualizuje systemy operacyjne i aplikacje według harmonogramu. Definiuj patch baselines i maintenance windows.
Automatyzacja operacji
Twórz runbooki automatyzujące rutynowe operacje - restart instancji, tworzenie AMI, czyszczenie logów. Uruchamiaj na setkach instancji jednocześnie.
Co musisz wiedziec?
Session Manager
Bezpieczne połączenie z instancjami EC2 przez przeglądarkę lub CLI. Nie wymaga SSH, kluczy ani otwartych portów. Sesje są logowane.
Parameter Store
Hierarchiczne przechowywanie parametrów konfiguracyjnych i sekretów. Obsługuje wersjonowanie, szyfrowanie KMS i integrację z innymi serwisami.
Patch Manager
Automatyczne zarządzanie patchami systemów operacyjnych i aplikacji. Patch Baselines definiują jakie poprawki mają być instalowane.
Run Command
Zdalne wykonywanie poleceń na jednej lub wielu instancjach jednocześnie. Bez konieczności logowania się na każdą maszynę osobno.
Automation
Runbooki do automatyzacji rutynowych zadań operacyjnych. Gotowe dokumenty od AWS lub własne z krokami do wykonania.
SSM Agent
Agent instalowany na instancjach EC2 (preinstalowany na Amazon Linux i Ubuntu). Umożliwia komunikację z Systems Manager.
Architektura: Centralne zarzadzanie flota z Systems Manager
Architektura operacyjna, w ktorej Systems Manager zarzadza flota EC2 bez bastion hostow i SSH. Administrator uzywa Session Manager, Run Command i Patch Manager, a cala komunikacja przechodzi przez HTTPS z pelnym audytem.
Ile kosztuje AWS Systems Manager?
Session Manager
Bezpłatny. Nie ma dodatkowych opłat za sesje SSH przez Session Manager.
Darmowy - płacisz tylko za instancje EC2
Parameter Store
Standard parameters za darmo (do 10 000). Advanced parameters płatne.
Standard: $0 (do 10 000 parametrów), Advanced: $0.05/parametr/miesiąc
Automation
Opłata za kroki automatyzacji. Pierwsze 100 000 kroków za darmo.
Powyżej Free Tier: $0.00025 za krok
On-premises
Opłata za zarządzane instancje on-premises zarejestrowane w SSM.
$0.00695/instancję/godzinę dla serwerów on-premises
Przyklady AWS CLI
Połącz się przez Session Manager
Otwórz sesję na instancji EC2 bez SSH i kluczy
aws ssm start-session \
--target i-0123456789abcdef0
Zapisz parametr w Parameter Store
Zapisz zaszyfrowany connection string do bazy danych
aws ssm put-parameter \
--name "/app/produkcja/db-connection-string" \
--value "Server=mydb.cluster-xxx.eu-west-1.rds.amazonaws.com;Database=app;User=admin;Password=s3cret" \
--type SecureString \
--key-id alias/app-key
Uruchom komendę na wielu instancjach
Wykonaj polecenie na wszystkich instancjach z tagiem Environment=Production
aws ssm send-command \
--document-name "AWS-RunShellScript" \
--targets 'Key=tag:Environment,Values=Production' \
--parameters 'commands=["df -h","free -m","uptime"]' \
--comment "Sprawdzenie zasobów serwerów produkcyjnych"
Pobierz parametr z Parameter Store
Odczytaj zaszyfrowany parametr z automatycznym deszyfrowaniem
aws ssm get-parameter \
--name "/app/produkcja/db-connection-string" \
--with-decryption \
--query "Parameter.Value" \
--output text
Quiz: AWS Systems Manager
Sprawdz czy dobrze rozumiesz podstawy. Kliknij odpowiedz — feedback pojawi sie od razu.
1. Co pozwala Session Manager w porównaniu do tradycyjnego SSH?
2. Jaka jest różnica między Standard a Advanced parameters w Parameter Store?
3. Co to jest SSM Agent?
4. Do czego służy Patch Manager?
Czesto uzywane razem z AWS Systems Manager
Chcesz poznac AWS Systems Manager w praktyce?
Darmowy kurs "AWS od podstaw" pokazuje jak uzywac AWS Systems Manager krok po kroku. Teoria + praktyka od zera.