IP flow verify
IP flow verify 기능을 사용하면 출발지 및 목적지 IPv4 주소, 포트, 프로토콜(TCP/UDP), 트래픽 방향(인바운드 또는 아웃바운드) 을 지정할 수 있습니다.
IP flow verify는 지정된 통신을 테스트하여 연결이 성공하는지 또는 실패하는지 알려줍니다.
만약 연결이 실패하면, 어떤 보안 규칙(NSG Rule) 이 해당 통신을 허용하거나 차단했는지 알려 주어 문제를 해결할 수 있도록 도와줍니다.
연결 문제 해결(Connection troubleshoot)
Connection troubleshoot 기능을 사용하면 VM과 다음 대상 간의 연결을 테스트할 수 있습니다:
이 테스트는 Connection Monitor 기능과 유사한 정보를 제공하지만, 차이점은 특정 시점의 연결을 테스트한다는 점입니다.
Connection Monitor가 시간이 지남에 따라 지속적으로 모니터링하는 것과는 다릅니다.
Azure Container Registry(ACR)의 Private Link(프라이빗 엔드포인트) 지원 여부는 요금제(Tier) 에 따라 달라집니다.
🔍 ACR Private Link 지원 계층
ACR TierPrivate Link 지원 여부
| Basic |
❌ 불가 |
| Standard |
❌ 불가 |
| Premium |
✔ 지원 |
문제에서 ACR은 Standard tier 라고 했으므로,
Private Link 기능을 사용하려면 반드시 Premium tier로 업그레이드 해야 함.
따라서 먼저 해야 할 일은:
👉 ACR을 Premium tier로 업그레이드하는 것
- .NET Core 3.0: Windows 및 Linux에서 지원
- ASP .NET V4.7: Windows에서만 지원
- PHP 7.3: Windows 및 Linux에서 지원
- Python 3.11: Linux에서만 지원
또한, Windows 앱과 Linux 앱은 같은 App Service Plan(ASP)에서 사용할 수 없습니다.
새로운 App Service Plan을 만들 때 운영 체제(OS) 유형을 반드시 선택해야 하기 때문입니다.
즉, 하나의 App Service Plan에 Windows 앱과 Linux 앱을 혼합하여 실행할 수 없습니다.
Virtual Network Gateway 필요성
시나리오 핵심:
- WebApp1 = Azure App Service(웹앱)
- Share1 = 온프레미스 SMB 파일 공유
- 목표 = WebApp1이 온프레미스 네트워크의 SMB 공유에 연결해야 함
Azure App Service는 일반적으로 온프레미스 네트워크에 직접 접근할 수 없습니다.
온프레미스를 연결하려면 반드시 다음 중 하나가 필요합니다:
- Site-to-Site VPN
- ExpressRoute
이 연결을 만들기 위해 필수 요소가 바로:
👉 Azure Virtual Network Gateway
App Service(VNet Integration) → VNet1 → VPN Gateway → 온프레미스 Share1
이 구조로 SMB 접근이 가능합니다.
Azure Data Lake Storage를 지원하는 Azure Storage 계정을 만들려면 계층적 네임스페이스(hierarchical namespace) 옵션을 활성화해야 합니다.
이 옵션을 사용하면 데이터 레이크에서 파일과 폴더를 효율적으로 구성하고 조작할 수 있습니다.
또한, 빅데이터 분석에서 널리 사용되는 Hadoop Distributed File System(HDFS) API와의 호환성도 제공합니다.
자세한 내용은 Azure Data Lake Storage Gen2 소개를 참고하세요.
비용을 최소화하려면, 특히 자주 액세스되지 않는 데이터에 대해 스토리지 계정의 Cool 액세스 계층을 선택할 수 있습니다.
이 계층은 Hot 액세스 계층보다 저장 비용이 낮지만, 액세스 및 트랜잭션 비용은 더 높습니다.
Cool 액세스 계층은 짧은 기간의 백업, 재해 복구용 데이터, 아카이브 데이터처럼 자주 액세스되거나 수정되지 않는 데이터에 적합합니다.
Cool 계층에 저장된 데이터는 최소 30일 이상 보관되어야 합니다.
자세한 내용은 Blob 데이터 액세스 계층을 참고하세요.
데이터를 자동으로 보조 Azure 지역으로 복제하려면 스토리지 계정에서 GRS(geo-redundant storage, 지역 중복 스토리지) 옵션을 선택할 수 있습니다.
이 옵션은 데이터를 기본 지역에서 동기적으로 세 번 복제한 후, 보조 지역으로 비동기적으로 복제합니다.
GRS는 데이터에 대해 가장 높은 수준의 내구성과 가용성을 제공하며, 지역 전체 장애나 재해로부터 데이터를 보호합니다.
어떤 구독에서 GA(Global Administrator, 전역 관리자)라고 해서, 모든 구독에서 리소스를 만들 수 있다는 의미는 아닙니다.
Azure Active Directory(Azure AD)의 전역 관리자(Global Administrator)라 하더라도, 디렉터리 내의 모든 구독과 관리 그룹에 자동으로 접근 권한이 부여되는 것은 아닙니다.
Azure AD와 Azure 리소스는 서로 독립적으로 보안이 적용됩니다.
즉, Azure AD 역할 할당은 Azure 리소스에 대한 접근 권한을 부여하지 않으며, Azure 역할 할당 역시 Azure AD에 대한 권한을 부여하지 않습니다.
그러나 Azure AD의 전역 관리자(Global Administrator)라면, 디렉터리 내의 모든 Azure 구독 및 관리 그룹에 대해 스스로 접근 권한을 부여할 수 있습니다.
“컨테이너 크기를 자동으로 조정(Auto-scale)할 수 있는 Azure 서비스”
여기서 "자동 크기 조정"은
- 인스턴스 수 자동 증가/감소
- CPU/메모리 기반 autoscale
- KEDA 기반 이벤트 드리븐 autoscale
등을 의미하는 것으로 해석됩니다.
🔍 서비스별 Autoscale 지원 여부
서비스Autoscale 지원설명
| Azure Container Apps (ACA) |
⭐ 지원 |
KEDA 기반 자동 확장 (scale to zero 가능) |
| Azure Container Instances (ACI) |
❌ 미지원 |
단일 컨테이너 실행, autoscale 없음 |
| Azure App Service (Web App for Containers) |
⭐ 지원 |
App Service Plan에서 autoscale 가능 |
📌 도메인의 Standard ?
요구사항 분석:
1) app.contoso.com 사용자 지정 도메인 사용 가능해야 함
- Custom domain 지원 요금제:
Shared, Basic, Standard 이상
- Free 요금제는 ❌ 사용자 지정 도메인 불가
2) 최대 8개 인스턴스까지 자동 확장(Autoscale)
- Autoscale(자동 확장)은 Standard 이상에서만 가능
(Free, Shared, Basic은 autoscale 지원 ❌)
따라서 자동 확장이 필수 → Standard가 최소 조건
➡ Standard 요금제 선택해야 함
📌 도메인 인증 레코드 유형: TXT
Azure App Service에서 custom domain을 추가할 때:
- 도메인 소유권 확인(verification) → TXT 레코드 사용
- A 레코드 / CNAME 레코드는 실제 도메인 연결용이지만
"도메인 인증" 요구사항에서는 TXT가 정답
따라서 맞는 레코드: TXT
Azure Firewall 배포 규칙 (핵심 포인트)
- Azure Firewall은 가상 네트워크와 같은 Azure Region에만 배치 가능
- 리소스 그룹은 중요하지 않음
- 방화벽이 있는 RG와 VNet이 있는 RG가 달라도 상관없음
- 지역만 맞으면 된다
게스트 사용자를 Microsoft Entra ID(Azure AD)에 대량으로 초대하려면 New-MgInvitation cmdlet을 사용합니다.
- New-MgInvitation = 외부 사용자(게스트)를 초대하는 PowerShell 명령
- 초대 이메일을 보내고, 게스트 사용자 계정을 엔트라 테넌트(contoso.com)에 생성함
- CSV 파일을 읽어서 반복 호출하면 500명의 게스트 사용자 계정 생성 가능
따라서 "각 외부 사용자에 대해 New-MgInvitation을 실행하는 스크립트를 만든다" → 정확한 해결 방법입니다.
📌 참고 설명
기능설명
| New-MgUser |
내부 사용자(회원) 계정 생성 |
| New-MgInvitation |
외부 사용자(게스트) 초대 및 생성 |
문제의 요구 사항은 “게스트 사용자 생성” → 반드시 New-MgInvitation 사용해야 합니다.
✅ 1. BlobStorage (Blob 전용 스토리지 계정)
✔ 특징
- Blob 서비스만 지원
(Blob Containers, Block Blob, Append Blob)
- 다른 서비스(Queue, Table, File)는 지원 X
- Hot / Cool 액세스 계층 지원
- 요금 모델이 액세스 계층 중심
✔ 언제 사용?
- 저렴한 비용으로
“저장만 하면 되는 Blob 데이터” 보관이 목적일 때
- 예: 이미지, 문서, 백업 파일
✅ 2. BlockBlobStorage (프리미엄 Block Blob 특화 계정)
✔ 특징
- Block Blob만 사용 가능
- Premium SSD 기반 → 초고속 처리
- 지연 시간 Low, 높은 IOPS
- Hot, Cool 계층 없음 (Premium만 존재)
✔ 언제 사용?
- 매우 높은 처리량이 필요한 대규모 Blob 데이터 업로드 시
- 예:
- 대규모 미디어 처리
- 고속 로그 수집
- 빅데이터 실시간 분석 입력 데이터 저장
✅ 3. Storage (General Purpose V1, GPv1) — 구형 계정
✔ 특징
- Blob + File + Queue + Table 모두 지원
- 다양한 서비스 제공하지만 성능/요금 모델이 구식
- Access Tier(Hot/Cool/Archive) 기능 일부 제한
- 신규 기능 업데이트 적음
✔언제 사용?
- 레거시 시스템에서 GPv1을 계속 사용하는 경우
- 특별한 이유가 없다면 새로 만들 필요 없음
✅ 4. StorageV2 (General Purpose V2, GPv2) — 최신 표준, 추천
✔ 특징
- Blob / File / Queue / Table / Disk 모두 지원
- Hot / Cool / Archive 모든 계층 지원
- 가장 많은 기능 제공
- 대부분의 신규 기능이 GPv2에서만 활성화
- Data Lake Storage Gen2
- Lifecycle management
- Static website hosting
- Soft delete / Versioning / MFA delete 등
✔ 언제 사용?
- 새로 만드는 모든 Storage 계정 → GPv2 권장
- 거의 모든 워크로드에 적합
📌 한 표로 전체 비교
| 항목 |
BlobStorage |
BlockBlobStorage |
GPv1 (Storage) |
GPv2 (StorageV2) |
| 지원 서비스 |
Blob |
Blob(Block only) |
Blob, File, Queue, Table |
Blob, File, Queue, Table |
| 성능 계층 |
Hot/Cool |
Premium |
Standard |
Standard/Premium 일부 |
| 가격 |
저렴 |
비쌈(Premium) |
구식 |
가장 효율적 |
| Access Tier |
Hot/Cool |
없음 |
제한적 |
Hot/Cool/Archive |
| 최신 기능 |
제한 |
없음 |
매우 제한 |
⭐ 대부분 지원 |
| 추천 사용 |
일반 Blob 저장 |
초고속 Blob |
레거시 |
⭐ 신규 모든 워크로드 |
📌 결론적으로…
- BlobStorage → Blob만 필요하고 비용 절감하고 싶을 때
- BlockBlobStorage → Premium SSD 속도 필요할 때
- GPv1(Storage) → 레거시 외 신규 사용 비추천
- GPv2(StorageV2) → 모든 신규 스토리지 계정의 기본 선택