Перейти к содержанию

Amazon Linux

Материал из Википедии — свободной энциклопедии

Amazon Linux — семейство Linux-дистрибутивов, разрабатываемое компанией Amazon Web Services (AWS) для использования прежде всего в инфраструктуре AWS и связанных с ней сценариях. Дистрибутивы Amazon Linux оптимизированы для Amazon EC2, включают средства интеграции с сервисами AWS и распространяются без отдельной платы сверх стандартной тарификации используемых облачных сервисов. Первое поколение, известное как Amazon Linux AMI или Amazon Linux 1, появилось в 2010 году; второе поколение, Amazon Linux 2, было представлено в 2017 году; третье поколение, Amazon Linux 2023 (AL2023), стало общедоступным в 2023 году.[1][2][3][4]

Amazon Linux ориентирован прежде всего на серверные, контейнерные и облачные нагрузки. В разных поколениях семейства использовались менеджеры пакетов YUM и Dnf, а также различные модели обновления: от поточных региональных репозиториев в Amazon Linux AMI до versioned repositories и детерминированных обновлений в AL2023.[1][5][6][7]

AWS указывает, что предоставляет собственный cloud-optimized Linux-дистрибутив с 2010 года. Первоначально он распространялся как Amazon Linux AMI — поддерживаемый образ для Amazon EC2, предназначенный для стабильного, безопасного и производительного запуска приложений в инфраструктуре AWS.[4][8]

В декабре 2017 года AWS представила Amazon Linux 2 как LTS Candidate; в сопроводительных материалах дистрибутив позиционировался как более современная и «enterprise-friendly» версия Amazon Linux с долговременной поддержкой, обновлённым ядром, переходом на `systemd` и возможностью использования вне EC2 для локальной разработки и тестирования.[2][9]

В 2022 году AWS публиковала техпредпросмотр следующего поколения, фигурировавший в документации как Amazon Linux 2022; позднее общедоступный релиз получил имя Amazon Linux 2023. В мартe 2023 года AWS объявила AL2023 третьим поколением семейства Amazon Linux.[10][3]

Независимые ИТ-издания также отмечали этот переход. Так, The Register писал, что Amazon Linux дебютировал в 2010 году, а релиз Amazon Linux 2023 стал очередным крупным этапом развития собственного дистрибутива AWS после Amazon Linux 2.[11]

Основные поколения

[править | править код]
Поколение Публичное появление Статус Основной менеджер пакетов Краткая характеристика
Amazon Linux AMI / Amazon Linux 1 2010[4] снят с поддержки с 2024 года[1] YUM[1] Поддерживаемый AMI для EC2; доступен только в EC2; использовал региональные yum-репозитории и модель непрерывных обновлений.[1]
Amazon Linux 2 2017[2] поддерживается до 30 июня 2026 года[12] YUM[5] LTS-поколение; переход на `systemd`; появление Extras Library; образы для локальной виртуализации и контейнеров; поддержка AWS Graviton.[12][13][14]
Amazon Linux 2023 2023[3] поддерживается до июня 2029 года[15] Dnf[6] Третье поколение; versioned repositories и детерминированные обновления; SELinux включён по умолчанию в режиме permissive; отдельные образы для EC2, KVM, VMware, Hyper-V и контейнеров.[7][16][17]

Amazon Linux AMI (Amazon Linux 1)

[править | править код]

Первое поколение Amazon Linux было известно как Amazon Linux AMI. AWS описывала его как поддерживаемый и сопровождаемый Linux-образ для Amazon EC2, ориентированный на стабильный, безопасный и производительный запуск приложений внутри EC2. Это поколение не поддерживалось вне EC2.[8][1]

Для Amazon Linux AMI использовались yum-репозитории, развернутые в каждом регионе AWS. Обновления публиковались в режиме непрерывного потока, а сами AMI трактовались как «снимки во времени»; при этом пользователь мог закрепить конкретную версию репозитория через параметр `releasever`.[1]

Одной из особенностей Amazon Linux AMI была автоматическая установка критических и важных обновлений безопасности при первом запуске экземпляра. Стандартная поддержка AL1 завершилась 31 декабря 2020 года, затем система находилась в фазе maintenance support до 31 декабря 2023 года, после чего была полностью снята с поддержки.[1][14]

Amazon Linux 2 стало вторым поколением семейства. В материалах AWS оно описывалось как современная стабильная версия Amazon Linux с долговременной поддержкой, ориентированная на серверные, виртуализованные и контейнерные нагрузки. По сравнению с AL1 в AL2 были обновлены ядро, базовая пользовательская среда, компиляторы и системные библиотеки.[9][12]

В AL2 система инициализации systemd заменила Upstart, а само поколение ввело поддержку процессоров AWS Graviton. В качестве штатного пакетного менеджера использовался YUM. AWS также выделяла в AL2 набор «core packages», поддерживаемых в рамках долгосрочной политики сопровождения, и отдельный канал Extras Library для более быстро развивающихся технологий.[14][5][13][12]

Extras Library позволяла устанавливать версии программ и стеков, обновлявшиеся быстрее, чем базовая система. В AWS объясняли, что этот механизм должен был смягчить компромисс между стабильностью базовой платформы и свежестью прикладного ПО.[13][18]

AL2 стала первой версией семейства, официально доступной не только как EC2 AMI, но и как образы виртуальных машин для локальной эксплуатации и разработки. AWS отдельно подчёркивала, что AL2 доступна как on-premises virtual machine image и как контейнерные образы.[19][20][21]

Согласно документации AWS, AL2 имеет высокую степень совместимости с CentOS 7, поэтому многие пакеты EPEL 7 работают в этой системе. Поддержка Amazon Linux 2 завершилась 30 июня 2026 года.[22][12]

Amazon Linux 2023 (AL2023) — третье поколение Amazon Linux, общедоступное с марта 2023 года. AWS позиционирует его как следующую генерацию дистрибутива для облачных и корпоративных приложений, с долговременной поддержкой, обновлённым набором пакетов и более предсказуемой моделью обновления.[3][23]

В AL2023 штатным пакетным менеджером стал Dnf, пришедший на смену YUM, использовавшемуся в AL2. Командный синтаксис в целом схож с YUM, но новая система опирается на DNF и versioned repositories.[6]

Ключевой особенностью AL2023 стала модель deterministic upgrades through versioned repositories. По умолчанию система привязывается к конкретной версии репозитория, а новые экземпляры AMI и обновления могут быть синхронизированы с этой версией. Это позволяет администраторам контролировать момент перехода на новую ревизию набора пакетов и добиваться большей повторяемости между экземплярами одной и той же AMI.[7]

В AL2023 также были изменены некоторые системные характеристики: по умолчанию включён SELinux в режиме `permissive`, тогда как в AL2 он был отключён; major releases Amazon Linux 2023 частично основаны на актуальном состоянии upstream-дистрибутива Fedora Linux, при этом AWS может добавлять или заменять отдельные пакеты из других источников; кроме того, AL2023 не имеет бинарной совместимости с EPEL, в отличие от AL2, для которого многие пакеты EPEL7 работали благодаря близости к CentOS 7.[16][24][22]

Документация AWS отдельно подчёркивает, что core packages AL2023, включая `glibc`, `OpenSSL`, `OpenSSH` и `DNF`, поддерживаются в течение всего жизненного цикла major release AL2023. Конечная точка жизненного цикла AL2023 установлена на июнь 2029 года.[23][15]

Технические особенности

[править | править код]

Оптимизация под AWS

[править | править код]

Все поколения Amazon Linux разрабатывались как дистрибутивы, ориентированные на работу в AWS, прежде всего в Amazon EC2. AWS подчёркивает, что Amazon Linux включает пакеты и конфигурации для тесной интеграции с сервисами AWS, а также поддерживает актуальные возможности EC2 instance types.[8][12]

Менеджеры пакетов

[править | править код]

В Amazon Linux AMI и Amazon Linux 2 по умолчанию использовался YUM. В AL2023 по умолчанию используется Dnf, который AWS называет преемником YUM в рамках этой линейки.[1][5][6]

Модель обновлений

[править | править код]

Для Amazon Linux AMI была характерна модель постоянного потока обновлений через региональные yum-репозитории. В AL2 сохранялась традиционная yum-модель. В AL2023 AWS перешла к versioned repositories и детерминированным обновлениям, позволяющим выбирать момент перехода на новый репозиторный срез.[1][7]

Инициализация и системные компоненты

[править | править код]

В Amazon Linux 2 `systemd` заменил `upstart`. В AL2023 по умолчанию включён SELinux в режиме permissive. Для AL2 AWS также предоставляла механизм kernel live patching, позволяющий применять исправления ядра без перезагрузки, а позже аналогичные возможности появились и для AL2023.[14][16][25][26]

Архитектуры

[править | править код]

Amazon Linux 2 ввела поддержку AWS Graviton-процессоров. Для AL2023 документация указывает поддержку как `x86_64`, так и `aarch64`; KVM-образы доступны для обеих архитектур, тогда как Hyper-V-образы ограничены `x86_64`.[14][27][28][29]

Использование

[править | править код]

Наиболее типичный способ использования Amazon Linux — запуск AMI в Amazon EC2. AWS публикует образы Amazon Linux для разных поколений и типов нагрузки, а для ряда сервисов поддерживает публичные параметры в Systems Manager Parameter Store, указывающие на актуальные рекомендованные AMI.[30][31]

Контейнеры

[править | править код]

Amazon Linux используется и как базовая система для контейнерных образов. AWS распространяет базовый контейнерный образ AL2023, собранный из тех же программных компонентов, что и AL2023 AMI; он доступен для использования как base image для Docker-нагрузок. Существует также минимальный контейнерный образ AL2023.[32][33]

В AWS Lambda AL2023 используется как основа для runtime `provided.al2023`. Документация AWS указывает, что этот runtime основан на минимальном контейнерном образе AL2023 и существенно меньше по размеру, чем прежний `provided.al2`.[34]

AWS публикует отдельные Amazon ECS-optimized AMI на базе Amazon Linux 2 и Amazon Linux 2023. Для ECS существуют стандартные, ARM, GPU и Neuron-варианты таких образов; для новых контейнерных инсталляций AWS рекомендует ECS-optimized AMI на базе AL2023.[35]

Если первое поколение Amazon Linux было доступно только в EC2, то Amazon Linux 2 и Amazon Linux 2023 поддерживаются и вне непосредственно AWS-облака. Для AL2 AWS предоставляла on-premises VM images, а для AL2023 выпускаются образы для KVM, VMware и Hyper-V. Документация AWS также описывает использование AL2023 вне EC2 как виртуализированного гостя.[1][20][17][36]

Жизненный цикл и поддержка

[править | править код]

Для разных поколений Amazon Linux действовали разные модели поддержки.

Amazon Linux AMI (AL1) завершил стандартную поддержку 31 декабря 2020 года, затем находился в режиме maintenance support до 31 декабря 2023 года. После этой даты обновления безопасности и исправления ошибок для него больше не публикуются.[1]

Поддержка Amazon Linux 2 завершилась 30 июня 2026 года. AWS ранее рекомендовали миграцию с AL2 на AL2023 до этой даты.[12]

AL2023 поддерживается до июня 2029 года. В документации AWS также указано, что core packages AL2023 получают поддержку на протяжении всего жизненного цикла major release, а остальные пакеты могут иметь индивидуальные сроки сопровождения в зависимости от upstream-источников.[15][23]

Место в экосистеме

[править | править код]

Amazon Linux занимает особое место среди Linux-дистрибутивов, развиваемых крупными облачными провайдерами. В отличие от дистрибутивов общего назначения, он проектируется прежде всего как платформа для виртуальных машин, контейнеров и сервисов внутри экосистемы AWS. При этом эволюция семейства отражает и более широкие тенденции Linux-мира: переход от yum к dnf, усиление роли ARM-архитектуры, рост значения контейнерных базовых образов, а также переход к более предсказуемым моделям обновления.[6][7][14]

Примечания

[править | править код]
  1. 1 2 3 4 5 6 7 8 9 10 11 12 Amazon Linux AMI FAQs (англ.). Amazon Web Services. Дата обращения: 8 апреля 2026.
  2. 1 2 3 Introducing Amazon Linux 2 (англ.). Amazon Web Services (13 декабря 2017). Дата обращения: 8 апреля 2026.
  3. 1 2 3 4 Announcing Amazon Linux 2023 (англ.). Amazon Web Services (15 марта 2023). Дата обращения: 8 апреля 2026.
  4. 1 2 3 Amazon Linux 2023, a Cloud-Optimized Linux Distribution with Long-Term Support (англ.). AWS News Blog (15 марта 2023). Дата обращения: 8 апреля 2026.
  5. 1 2 3 4 Find and install software packages on an AL2 instance (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  6. 1 2 3 4 5 Package management tool (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  7. 1 2 3 4 5 Deterministic upgrades through versioned repositories on AL2023 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  8. 1 2 3 Amazon Linux AMI (англ.). Amazon Web Services. Дата обращения: 8 апреля 2026.
  9. 1 2 Amazon Linux 2 – Modern, Stable, and Enterprise-Friendly (англ.). AWS News Blog (19 декабря 2017). Дата обращения: 8 апреля 2026.
  10. Amazon Linux 2023 version 2022.0.20221102 release notes (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  11. AWS delivers a – rather late – major release of its homebrew Linux distribution. The Register (англ.). 20 марта 2023. Дата обращения: 8 апреля 2026.
  12. 1 2 3 4 5 6 7 Amazon Linux 2 FAQs (англ.). Amazon Web Services. Дата обращения: 8 апреля 2026.
  13. 1 2 3 AL2 Extras Library (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  14. 1 2 3 4 5 6 Compare AL1 and AL2 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  15. 1 2 3 Package support statements - Amazon Linux 2023 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  16. 1 2 3 SELinux (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  17. 1 2 Using Amazon Linux 2023 outside of Amazon EC2 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  18. Amazon Linux 2 Features (англ.). Amazon Web Services. Дата обращения: 8 апреля 2026.
  19. Amazon Linux 2 (англ.). Amazon Web Services. Дата обращения: 8 апреля 2026.
  20. 1 2 Run AL2 as a virtual machine on premises (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  21. Amazon Linux 2 Now Supports 32-bit Applications and Libraries (англ.). Amazon Web Services (25 сентября 2018). Дата обращения: 8 апреля 2026.
  22. 1 2 Extra Packages for Enterprise Linux (EPEL) (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  23. 1 2 3 Amazon Linux 2023 User Guide (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  24. Release cadence (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  25. Kernel Live Patching for Amazon Linux 2 is now generally available (англ.). Amazon Web Services (29 июня 2020). Дата обращения: 8 апреля 2026.
  26. Kernel Live Patching on AL2023 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  27. System requirements (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  28. Requirements for running AL2023 on KVM (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  29. Requirements for running Amazon Linux 2023 on Hyper-V (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  30. AL2 on Amazon EC2 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  31. AL2023 on Amazon EC2 (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  32. Using the AL2023 base container image (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  33. AL2023 Minimal container image (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  34. Using AL2023 in AWS Lambda (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  35. Amazon ECS-optimized Linux AMIs (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.
  36. Download Amazon Linux 2023 images for use with KVM, VMware, and Hyper-V (англ.). AWS Documentation. Дата обращения: 8 апреля 2026.