AWS Certified Developer Associate Підказки - IAM, EC2, ALB та ASG (Частина I)

IAM, Users, Groups та Policies

Identity and Access Management (IAM):

  • Root account створюється за замовчуванням і не повинен використовуватися або передаватися.
  • Users — це окремі особи в організації, які можуть бути включені до Groups.
  • Groups допомагають ефективно керувати дозволами; Users можуть належати до кількох Groups.
  • Policies IAM визначають дозволи доступу.

Структура Policies IAM:

  • Version
  • Id (необов’язковий)
  • Statement(s), що містять:
    • Sid (необов’язковий ідентифікатор)
    • Effect (Дозволити/Заборонити)
    • Principal (кому надаються дозволи)
    • Action (дозволені/заборонені API виклики)
    • Resource (на що поширюється політика)
    • Condition (необов’язкові обмеження)

Функції безпеки IAM:

  • Password policy: примусове використання складних паролів і MFA.
  • IAM Roles: призначають дозволи AWS-сервісам замість Users.
  • IAM Credential Report: огляд доступу Users.
  • IAM Access Advisor: показує, які сервіси AWS використовуються.

AWS EC2 (Elastic Compute Cloud)

Конфігурація EC2 instance:

  • Вибір типу EC2 instance (CPU, RAM, storage, ОС, мережеві налаштування).
  • EC2 User Data: автоматизація налаштувань під час запуску.
  • Security Groups: контроль вхідного/вихідного трафіку.

Варіанти купівлі EC2:

  • On-Demand: оплата за секунду; найкраще для короткотривалих завдань.
  • Reserved: економія при зобов’язанні на 1-3 роки.
  • Savings Plans: гнучке ціноутворення для передбачуваного використання.
  • Spot Instances: знижені ціни, можливість завершення роботи в будь-який момент.
  • Dedicated Hosts: фізичні сервери, що використовуються винятково для вашого облікового запису.
  • Capacity Reservation: гарантована потужність у певній Availability Zone.

Варіанти сховища EC2:

  • EBS (Elastic Block Store): постійне мережеве сховище для EC2.
  • EBS Snapshots: Backup та міграція між регіонами.
  • EC2 Instance Store: тимчасове високошвидкісне сховище.
  • AMI (Amazon Machine Image): попередньо налаштовані EC2 templates.

AWS Elastic Load Balancing (ELB)

Переваги ELB:

  • Розподіляє вхідний трафік між EC2 instance.
  • Надає єдиний DNS-запис для масштабованості.
  • Моніторить стан бекенду.
  • Виконує SSL/TLS-термінацію.

Типи балансувальників навантаження:

  • Application Load Balancer (ALB): рівень 7, підтримує маршрутизацію.
  • Network Load Balancer (NLB): рівень 4, висока продуктивність TCP/UDP.
  • Gateway Load Balancer (GLB): рівень 3, інтеграція з третіми сервісами.

Ключові можливості ELB:

  • Sticky Sessions: прив’язка користувача до конкретного EC2 instance.
  • Cross-Zone Load Balancing: розподіл трафіку по кількох Availability Zones.
  • SNI (Server Name Indication): підтримка кількох SSL-сертифікатів на одному балансувальнику.
  • Connection Draining (Deregistration Delay): дозволяє завершити активні запити перед видаленням EC2 instance.

Auto Scaling Groups (ASG)

Переваги ASG:

  • Автоматично масштабує EC2 instance залежно від навантаження.
  • Гарантує високу доступність шляхом заміни несправних EC2 instance.
  • Інтегрується з ALB для розподілу трафіку.

Політики масштабування:

  • Target Tracking: підтримка метрики (наприклад, CPU) на певному рівні.
  • Step Scaling: зміна потужностей кроками.
  • Scheduled Scaling: зміна кількості EC2 instance за розкладом.
  • Predictive Scaling: прогнозування потреб у ресурсах за допомогою AWS.

Найкращі практики:

  • Використовуйте CloudWatch Alarms для активації подій масштабування.
  • Оптимізуйте конфігурацію EC2 instance за допомогою Launch Templates.
  • Використовуйте Instance Refresh для оновлення працюючих EC2 instance.

Висновок

Сервіси AWS IAM, EC2, ALB та ASG є основою для управління безпекою, обчислювальною потужністю, масштабованістю та розподілом трафіку. Розуміння їх конфігурацій та найкращих практик є ключовим для успішного складання іспиту AWS Certified Developer Associate.