Azure Linux 아키텍처 개요

Azure Linux는 Fedora 에코시스템을 기반으로 하며 Azure 최적화된 Microsoft 유지 관리되는 Linux 배포판입니다. 이 문서에서는 Azure Linux의 구조화 방법, 기본적으로 포함되는 항목 및 의도적으로 경계를 그리는 위치를 설명합니다.

메모

Azure Linux 4.0은 현재 preview이며 평가 및 테스트 용도로 엄격하게 제한됩니다. 프로덕션 사용에 적합하지 않습니다.

Azure Linux가 Fedora와 어떻게 관련되는지

Azure Linux는 Fedora에서 파생되며 동일한 RPM 기반 패키징 에코시스템을 사용합니다. dnf5에 대한 익숙함, Fedora 빌드 도구(mock, fedpkg, koji, kiwi), 그리고 최신 컴파일러 툴체인을 모두 누릴 수 있으며, 이 모든 것은 업스트림 Fedora를 기반으로 추적됩니다. 이러한 기반 위에 Microsoft는 Azure에 특화된 보안 강화, 사용자 지정 커널, 그리고 클라우드 워크로드에 적합한 관리형 수명 주기를 추가합니다.

커널은 Hyper-V 게스트 드라이버, Azure 특정 성능 튜닝 및 Azure VM SKU에서 유효성이 검사된 보안 강화로 확장된 버전 6.18 LTS로 제공됩니다.

계층화된 아키텍처

Azure Linux는 계층화된 모델을 사용합니다. 각 계층은 기본의 하드웨어 및 펌웨어부터 맨 위에 있는 워크로드에 이르기까지 아래 계층을 기반으로 합니다.

Azure Linux 계층형 아키텍처를 보여주는 다이어그램의 스크린샷입니다.

커널 계층

사용자 지정 Azure Linux 커널에는 Hyper-V 게스트 드라이버, 보안 강화 패치 및 Azure 인프라에 맞게 조정된 성능 최적화가 포함됩니다. 안정성을 위한 Long-Term 지원(LTS) 커널 또는 새 하드웨어 및 GPU 지원을 위한 HWE(하드웨어 사용) 커널 중에서 선택할 수 있습니다. 자세한 내용은 릴리스 주기 및 수명 주기 를 참조하세요.

핵심 OS 계층

이 계층은 최소한의 루트 파일 시스템을 systemd 제공합니다. 서비스 관리를 위해 C glibc 런타임으로, 암호화용 OpenSSL을 제공합니다. 계층 1 구성 요소입니다. 즉, 주 릴리스의 수명 동안 버전이 잠겨 있고 보안 백포트만 받습니다. 이렇게 하면 ABI(애플리케이션 이진 인터페이스)가 안정적이고 동작을 예측할 수 있습니다.

사용자 공간 패키지 계층

언어 런타임(Python, Go, Rust, Node.js), 컨테이너 도구 및 애플리케이션 종속성은 여기에 있습니다. 계층 1 패키지는 안정성을 위해 잠겨 있습니다. 계층 2 패키지는 예측 가능한 주기로 업데이트됩니다. 자세한 내용은 릴리스 주기 및 수명 주기를 참조하세요.

워크로드 계층

Azure 서비스 및 애플리케이션은 여기에서 실행됩니다. Azure Linux는 AKS, Azure VM 또는 컨테이너 이미지에서 실행 중이든 동일한 OS 기반, 패키지 집합 및 동작을 제공합니다.

플랫폼 범위

Azure Linux는 Azure 클라우드 워크로드용으로 설계되었습니다. Azure Linux는 오픈 소스 있지만 Microsoft 지원 및 수명 주기 약정은 Azure 시나리오에만 적용됩니다.

다음 표에서는 Azure Linux에서 지원되지 않는 내용과 지원되지 않는 사항을 간략하게 설명합니다.

Area Supported 지원되지 않음
아키텍처 x86-64(v2 최소), ARMv8(64비트) 32비트 아키텍처
환경 Azure VM, AKS, 컨테이너 이미지 ISO 이미지, 온-프레미스, 멀티클라우드, IoT, 엣지 디바이스
사용자 인터페이스 텍스트 기반 콘솔, SSH 그래픽 데스크톱 환경, GUI 설치 관리자
가상화 KVM 게스트, Hyper-V Xen
주변 장치 하드웨어 Azure 연결된 스토리지, 네트워킹, GPU Bluetooth, Wi-Fi, 프린터, 오디오/비디오, 로봇 공학
신뢰할 수 있는 플랫폼 TPM 2.0 TPM 1.x
언어 지원 글로벌 로캘 지원 가능 기본 이미지에 모든 언어 팩이 포함되어 있지는 않습니다.

모든 Azure Linux 이미지에는 waagentcloud-init 포함됩니다. 이러한 구성 요소는 Azure 통합에 필요하며 항상 존재해야 합니다.

리포지토리 구조

Azure Linux는 여러 개별 리포지토리에 패키지를 제공합니다. 패키지가 제공되는 리포지토리를 알면 지원 가능성, 기본적으로 사용할 수 있는 항목 및 옵트인해야 하는 사항을 추론하는 데 도움이 됩니다. 일상적인 패키지 관리 정보는 패키지 관리를 참조하세요.

네트워킹 기본값

Azure Linux는 Azure VM, AKS 노드 및 컨테이너 워크로드에 대해 조정된 네트워킹 스택과 함께 제공됩니다. 대부분의 워크로드는 변경 없이 기본값을 사용할 수 있습니다.

다음 표에는 Azure Linux의 기본 네트워킹 구성 요소와 특정 시나리오의 기본값을 재정의해야 하는 경우 사용할 수 있는 대안이 요약되어 있습니다.

Component 기본값 대체 Notes
네트워크 관리자 systemd‑networkd + cloud‑init NetworkManager(사용 가능, 기본값 아님) systemd-networkd는 Azure VM 및 컨테이너 시나리오의 기본값입니다.
방화벽 방화벽 N/A 기본적으로 사용으로 설정되어 있으며, 인바운드 차단, 아웃바운드 허용 정책이 적용됩니다.
방화벽 백 엔드 nftables iptables(레거시, 사용 가능) nftable은 iptable을 최신으로 대체합니다. iptables 레거시 지원은 사용할 수 있지만 기본값은 아닙니다.
IPv6 활성화되고 강화됨 N/A 엄격한 sysctl 강화는 IPv4 및 IPv6 모두에 적용됩니다.

스토리지 기본값

Azure Linux 스토리지 기본값은 Azure 연결된 디스크 및 모든 Azure VM 아래의 Hyper-V 하이퍼바이저에 대해 조정됩니다. 파일 시스템, 부팅 로더 및 클록 원본은 스냅샷 및 관리 디스크와 같은 Azure 플랫폼 기능과의 예측 가능한 성능 및 호환성을 위해 선택됩니다.

다음 표에는 Azure Linux의 기본 스토리지 설정과 특정 시나리오의 기본값을 재정의해야 하는 경우 사용할 수 있는 대안이 요약되어 있습니다.

Setting 기본값 Alternatives
파일 시스템 ext4 xfs, btrfs
부팅 GRUB2 부팅 로더 N/A
시계 Hyper‑V PTP 클록 소스 N/A
NVMe Azure에 연결된 스토리지에 맞게 조정된 시간 제한 N/A

보안 아키텍처

Azure Linux는 커널부터 공급망까지 모든 계층에서 강화됩니다. 다음 섹션에서는 기본적으로 사용하도록 설정된 보안 컨트롤에 대해 설명합니다. 자세한 내용은 보안 및 규정 준수 를 참조하세요.

필수 액세스 제어

MAC(필수 액세스 제어)는 루트로 실행되는 경우에도 프로세스가 실제로 필요한 액세스로 제한됩니다.

Azure Linux 4.0 미리 보기에서는 SELinux를 MAC 프레임워크로 사용하며, 강제 모드로 활성화합니다.

보안 부팅

보안 부팅은 서명된 부팅 로더 및 커널만 실행되도록 합니다. 커널 잠금은 실행 중인 커널을 보호하고 런타임 시 신뢰할 수 없는 커널 모듈 로드를 사용하지 않도록 설정합니다.

메모

Azure Linux 4.0은 이제 preview이며 해당 구성 요소는 아직 보안 부팅에 서명되지 않았습니다.

커널 및 시스템 강화

커널과 사용자 공간은 익스플로잇을 작성하기 더 어렵게 하고, 설령 성공하더라도 그 영향을 더 쉽게 제한할 수 있도록 하는 완화 기법을 적용해 빌드됩니다.

다음 표에는 Azure Linux의 커널 및 시스템 강화 기능이 요약되어 있습니다.

Capability Description
Aslr 강화된 주소 공간 배치 난수화가 사용 설정되었습니다.
스택 보호 모든 패키지에 적용되는 컴파일러 수준 스택 보호입니다.
Syscall 제한 사항 기본 seccomp 프로필 및 syscall 필터링
최소 기본 이미지 최소 패키지 집합을 통해 공격 노출 영역을 줄입니다.

Cryptography

Azure Linux는 암호화 정책을 중앙 집중화하여 OpenSSL, GnuTLS, NSS 및 OpenSSH에서 알고리즘 및 키 크기를 일관되게 유지합니다.

다음 표에는 Azure Linux의 암호화 설정이 요약되어 있습니다.

Setting 가치
Fips FIPS 140-3 인증은 필수입니다.
암호화 정책 일관된 알고리즘 선택을 위해 채택된 Fedora 암호화 정책입니다.
포스트 양자 ML-KEM은 Fedora 및 RHEL 로드맵에 맞춰 계획되었습니다.

로깅 및 감사

다음 표에는 Azure Linux의 로깅 및 감사 설정이 요약되어 있습니다.

Setting 가치
감사 데몬 auditd를 사용하도록 설정했습니다.
저널 스토리지 영구 저널 스토리지.