Azure Storage

완료됨

Azure Storage 플랫폼은 최신 데이터 스토리지 시나리오를 위한 Microsoft의 클라우드 스토리지 솔루션입니다. Azure Storage는 클라우드의 다양한 데이터 개체를 위한 고가용성, 대규모 확장성, 내구성 및 보안을 갖춘 스토리지를 제공합니다. AZURE Storage 데이터 개체는 REST API를 통해 HTTP 또는 HTTPS를 통해 전 세계 어디에서나 액세스할 수 있습니다. 또한 Azure Storage는 .NET, Java, Python, JavaScript, C++, Go를 사용하여 애플리케이션 또는 서비스를 빌드하는 개발자를 위한 클라이언트 라이브러리를 제공합니다. 개발자와 IT 전문가는 Azure PowerShell 및 Azure CLI를 사용하여 데이터 관리 또는 구성 작업에 대한 스크립트를 작성할 수 있습니다. Azure Portal 및 Azure Storage Explorer는 Azure Storage와 상호 작용하기 위한 사용자 인터페이스 도구를 제공합니다.

Azure Storage의 이점

Azure Storage 서비스는 애플리케이션 개발자 및 IT 전문가에게 다음과 같은 이점을 제공합니다.

  • 뛰어난 내구성 및 고가용성 중복성은 일시적인 하드웨어 오류가 있는 경우 데이터를 안전하게 보호합니다. 또한 지역 재해 또는 자연 재해로부터 추가 보호를 위해 데이터 센터 또는 지리적 지역에 데이터를 복제하도록 선택할 수도 있습니다. 이러한 방식으로 복제된 데이터는 예기치 않은 중단이 발생할 경우 고가용성 상태로 유지됩니다.
  • 안전 Azure Storage 계정에 기록된 모든 데이터는 암호화됩니다. Azure Storage는 데이터에 대한 액세스 권한이 있는 사용자를 세밀하게 제어할 수 있습니다.
  • 확장성. Azure Storage는 현재 애플리케이션의 데이터 스토리지 및 성능 요구 사항을 충족하도록 대규모로 확장할 수 있도록 설계되었습니다.
  • 관리됨 Azure는 하드웨어 유지 관리, 업데이트 및 중요한 문제를 처리합니다.
  • 접근 가능함. Azure Storage의 데이터는 HTTP 또는 HTTPS를 통해 전 세계 어디에서나 액세스할 수 있습니다. Microsoft는 .NET, Java, Node.js, Python, Go 및 기타 완성도 높은 REST API를 비롯한 다양한 언어로 Azure Storage용 클라이언트 라이브러리를 제공합니다. Azure Storage는 Azure PowerShell 또는 Azure CLI에서 스크립팅을 지원합니다. 또한 Azure Portal 및 Azure Storage Explorer는 데이터 작업을 위한 쉬운 시각적 솔루션을 제공합니다.

Azure Storage 데이터 서비스

Azure Storage 플랫폼에는 다음 데이터 서비스가 포함됩니다.

  • Azure Blob: 텍스트 및 이진 데이터에 대한 확장성이 뛰어난 대규모 개체 저장소입니다. Data Lake Storage Gen2를 통한 빅 데이터 분석 지원도 포함됩니다.
  • Azure Files: 클라우드 또는 온-프레미스 배포를 위한 관리되는 파일 공유입니다.
  • Azure Elastic SAN: Azure에서 SAN 배포, 크기 조정, 관리 및 구성을 간소화하는 완전히 통합된 솔루션입니다.
  • Azure 큐: 애플리케이션 구성 요소 간의 신뢰할 수 있는 메시징을 위한 메시징 저장소입니다.
  • Azure 테이블: 구조화된 데이터의 스키마 없는 스토리지를 위한 NoSQL 저장소입니다.
  • Azure Managed Disks: Azure VM에 대한 블록 수준 스토리지 볼륨입니다.
  • Azure Container Storage: 컨테이너용으로 기본적으로 빌드된 볼륨 관리, 배포 및 오케스트레이션 서비스입니다.

각 서비스는 고유한 주소가 있는 스토리지 계정을 통해 액세스됩니다. 시작하려면 스토리지 계정 만들기를 참조하세요.

또한 Azure는 다음과 같은 특수 스토리지를 제공합니다.

  • Azure NetApp Files: NetApp에서 제공하는 엔터프라이즈 파일 스토리지입니다. 파일 스토리지를 사용하면 엔터프라이즈 LOB(기간 업무) 및 스토리지 전문가가 코드 변경 없이 복잡한 파일 기반 애플리케이션을 쉽게 마이그레이션하고 실행할 수 있습니다. Azure NetApp Files는 NetApp 계정을 통해 관리되며 NFS, SMB 및 이중 프로토콜 볼륨을 통해 액세스할 수 있습니다.

Azure Storage 서비스에 대한 샘플 시나리오

다음 표에서는 Azure Storage 서비스를 비교하고 각각에 대한 예제 시나리오를 보여 줍니다.

특징 설명 사용하는 경우
Azure Files 업계 표준 SMB(서버 메시지 블록) 프로토콜, NFS(네트워크 파일 시스템) 프로토콜 및 Azure Files REST API를 통해 어디서나 액세스할 수 있는 완전 관리형 클라우드 파일 공유를 제공합니다. Windows, Linux 및 macOS의 클라우드 또는 온-프레미스 배포에서 Azure 파일 공유를 탑재할 수 있습니다. 이미 네이티브 파일 시스템 API를 사용하여 Azure에서 실행되는 다른 애플리케이션 간에 데이터를 공유하는 클라우드로 애플리케이션을 "리프트 앤 시프트"하려고 합니다. 온-프레미스 파일 서버 또는 NAS 디바이스를 대체하거나 보완하려고 합니다. 많은 가상 머신에서 액세스해야 하는 개발 및 디버깅 도구를 저장하려고 합니다.
Azure NetApp Files 고급 데이터 관리 기능이 필요한 가장 까다롭고 성능이 높고 대기 시간이 짧은 워크로드를 처리할 수 있는 완전 관리형 고가용성 엔터프라이즈급 NAS 서비스를 제공합니다. POSIX(이식 가능한 운영 체제 인터페이스) 규격 Linux 및 Windows 애플리케이션, SAP HANA, 데이터베이스, HPC(고성능 컴퓨팅) 인프라 및 앱, 엔터프라이즈 웹 애플리케이션과 같이 마이그레이션하기 어려운 워크로드가 있습니다. NFSv3, NFSv4.1 및 SMB3.1.x를 비롯한 단일 서비스에서 여러 파일 스토리지 프로토콜에 대한 지원이 필요하므로 코드 변경 없이 다양한 애플리케이션 리프트 앤 시프트 시나리오를 사용할 수 있습니다.
Azure Blob 구조화되지 않은 데이터를 블록 Blob에서 대규모로 저장하고 액세스할 수 있습니다. 엔터프라이즈 빅 데이터 분석 솔루션용 Azure Data Lake Storage Gen2도 지원합니다. 애플리케이션에서 스트리밍 및 임의 액세스 시나리오를 지원하려고 합니다. 어디서나 애플리케이션 데이터에 액세스할 수 있어야 합니다. Azure에서 엔터프라이즈 데이터 레이크를 빌드하고 빅 데이터 분석을 수행하려고 합니다.
Azure Elastic SAN Azure Elastic SAN은 SAN 배포, 크기 조정, 관리 및 구성을 간소화하는 완전히 통합된 솔루션입니다. 이 서비스는 고가용성 같은 기본 제공 클라우드 기능을 제공합니다. 인터넷 iSCSI(Small Computer Systems Interface) 프로토콜을 통해 액세스하는 여러 유형의 컴퓨팅 리소스(예: SQL, MariaDB, Azure Virtual Machines 및 Azure Kubernetes Services)와 상호 운용 가능한 대규모 스토리지를 원합니다.
Azure Disks 연결된 가상 하드 디스크에서 데이터를 영구적으로 저장하고 액세스할 수 있습니다. 네이티브 파일 시스템 API를 사용하여 영구 디스크에 데이터를 읽고 쓰는 애플리케이션을 "리프트 앤 시프트"하려고 합니다. 디스크가 연결된 가상 머신 외부에서 액세스할 필요가 없는 데이터를 저장하려고 합니다.
Azure 컨테이너 스토리지 Azure Container Storage는 Kubernetes와 통합되고 컨테이너용으로 기본적으로 빌드되는 볼륨 관리, 배포 및 오케스트레이션 서비스입니다. Kubernetes 클러스터에서 실행되는 상태 저장 애플리케이션에 대한 데이터를 저장하는 영구 볼륨을 동적으로 자동으로 만들려고 합니다.
Azure Queues 애플리케이션 구성 요소 간에 비동기 메시지 큐를 허용합니다. 애플리케이션 구성 요소를 분리하고 비동기 메시징을 사용하여 통신하려고 합니다.
Azure Tables 구조화된 NoSQL 데이터를 클라우드에 저장하여 키/특성 저장소에 스키마 없는 디자인을 제공할 수 있습니다. 웹 애플리케이션, 주소록, 디바이스 정보 또는 서비스에 필요한 다른 유형의 메타데이터에 대한 사용자 데이터와 같은 유연한 데이터 세트를 저장하려고 합니다.

블롭 스토리지

Azure Blob Storage는 클라우드용 Microsoft의 개체 스토리지 솔루션입니다. Blob Storage는 텍스트 또는 이진 데이터와 같은 대량의 구조화되지 않은 데이터를 저장하기 위해 최적화되어 있습니다.

Blob Storage는 다음 작업에 적합합니다.

  • 브라우저에 직접 이미지 또는 문서 제공
  • 분산 액세스를 위해 파일을 저장합니다.
  • 비디오 및 오디오 스트리밍.
  • 백업 및 복원, 재해 복구 및 보관을 위한 데이터 저장
  • 온-프레미스 또는 Azure 호스티드 서비스에서 분석을 위해 데이터를 저장합니다.

Blob Storage의 개체는 HTTP 또는 HTTPS를 통해 전 세계 어디에서나 액세스할 수 있습니다. 사용자 또는 클라이언트 애플리케이션은 URL, Azure Storage REST API, Azure PowerShell, Azure CLI 또는 Azure Storage 클라이언트 라이브러리를 통해 Blob에 액세스할 수 있습니다. 스토리지 클라이언트 라이브러리는 .NET, Java, Node.js및 Python을 비롯한 여러 언어에 사용할 수 있습니다.

또한 클라이언트는 SFTP(SSH 파일 전송 프로토콜)를 사용하여 Blob Storage에 안전하게 연결하고 NFS(네트워크 파일 시스템) 3.0 프로토콜을 사용하여 Blob Storage 컨테이너를 탑재할 수 있습니다.

Azure Files

Azure Files를 사용하면 업계 표준 SMB(서버 메시지 블록) 프로토콜, NFS(네트워크 파일 시스템) 프로토콜 및 Azure Files REST API를 사용하여 액세스할 수 있는 고가용성 네트워크 파일 공유를 설정할 수 있습니다. 즉, 여러 VM이 읽기 및 쓰기 액세스 권한으로 동일한 파일을 공유할 수 있습니다. REST 인터페이스 또는 스토리지 클라이언트 라이브러리를 사용하여 파일을 읽을 수도 있습니다.

Azure Files를 회사 파일 공유의 파일과 구별하는 한 가지는 전 세계 어디에서나 파일에 액세스할 수 있다는 것입니다. 파일을 가리키고 SAS(공유 액세스 서명) 토큰을 포함하는 URL을 사용하여 파일에 액세스합니다. SAS 토큰을 생성할 수 있습니다. 특정 시간 동안 프라이빗 자산에 대한 특정 액세스를 허용합니다.

파일 공유는 다음과 같은 여러 일반적인 시나리오에 사용할 수 있습니다.

  • 많은 온-프레미스 애플리케이션은 파일 공유를 사용합니다. 이 기능을 사용하면 데이터를 공유하는 애플리케이션을 Azure로 더 쉽게 마이그레이션할 수 있습니다. 온-프레미스 애플리케이션에서 사용하는 것과 동일한 드라이브 문자에 파일 공유를 탑재하는 경우 파일 공유에 액세스하는 애플리케이션의 부분은 최소한의 변경 내용으로 작동해야 합니다.
  • 구성 파일은 파일 공유에 저장하고 여러 VM에서 액세스할 수 있습니다. 그룹의 여러 개발자가 사용하는 도구와 유틸리티를 파일 공유에 저장하여 모든 사용자가 찾을 수 있고 동일한 버전을 사용할 수 있도록 할 수 있습니다.
  • 리소스 로그, 메트릭 및 크래시 덤프는 파일 공유에 쓰고 나중에 처리 또는 분석할 수 있는 데이터의 세 가지 예에 불과합니다.

Azure Elastic Storage 영역 네트워크

AZURE SAN(Elastic Storage 영역 네트워크)은 대규모 데이터베이스와 성능 집약적인 중요 업무용 애플리케이션 간의 워크로드 최적화 및 통합 문제를 해결합니다. Elastic SAN은 SAN 배포, 크기 조정, 관리 및 구성을 간소화하여 고가용성을 제공하는 완전히 통합된 솔루션입니다.

Elastic SAN은 대규모 입력/출력 집약적 워크로드 및 SQL 및 MariaDB와 같은 최상위 계층 데이터베이스를 위해 설계되었으며, Azure Kubernetes Service와 같은 가상 머신 또는 컨테이너에서 워크로드 호스팅을 지원합니다. 탄력적 SAN 볼륨은 iSCSI(Internet Small Computer Systems Interface) 프로토콜을 통해 다양한 컴퓨팅 리소스와 호환됩니다. Elastic SAN의 다른 이점으로는 간소화된 배포 및 관리 인터페이스를 통해 단일 인터페이스에서 여러 컴퓨팅 리소스에 대한 스토리지를 관리할 수 있고 효율적인 리소스 사용률을 통한 비용 최적화가 있습니다.

Azure 컨테이너 스토리지

Azure Container Storage는 Kubernetes와 통합되고 실제 데이터 스토리지에 대한 기존 Azure Storage 제품을 활용하여 컨테이너용으로 의도적으로 빌드된 볼륨 오케스트레이션 및 관리 솔루션을 제공합니다. 지원되는 백업 스토리지 옵션 중 하나를 선택하여 영구 볼륨에 대한 스토리지 풀을 만들 수 있습니다.

Azure Container Storage는 다음과 같은 상당한 이점을 제공합니다.

  • 상태 저장 Pod의 신속한 스케일 아웃
  • 상태 저장 워크로드의 성능 향상
  • Kubernetes 네이티브 볼륨 오케스트레이션

Queue Storage

Azure Queue 서비스는 메시지를 저장하고 검색하는 데 사용됩니다. 큐 메시지의 크기는 최대 64KB이며 큐에는 수백만 개의 메시지가 포함될 수 있습니다. 큐는 비동기적으로 처리할 메시지 목록을 저장하는 데 사용됩니다.

예를 들어 고객이 그림을 업로드할 수 있도록 하고 각 그림에 대한 썸네일을 만들려고 한다고 가정해 보겠습니다. 고객에게 그림을 업로드하는 동안 썸네일을 만드는 것을 기다리도록 할 수 있습니다. 큐를 사용하는 것이 대안입니다. 고객이 업로드를 완료하면 큐에 메시지를 씁니다. 그런 다음, Azure Function이 큐에서 메시지를 검색하고 썸네일을 만듭니다. 이 처리의 각 부분은 개별적으로 크기를 조정할 수 있으므로 사용량에 맞게 튜닝할 때 더 많은 제어를 제공합니다.

Table Storage

Azure Table Storage는 이제 Azure Cosmos DB의 일부입니다. 기존 Azure Table Storage 서비스 외에도 처리량 최적화 테이블, 전역 배포 및 자동 보조 인덱스를 제공하는 새로운 Azure Cosmos DB for Table 제품이 있습니다.

디스크 스토리지

Azure 관리 디스크는 VHD(가상 하드 디스크)입니다. 온-프레미스 서버의 실제 디스크처럼 생각할 수 있지만 가상화되어 있습니다. Azure 관리 디스크는 Azure에서 임의 입력/출력 스토리지 개체인 페이지 Blob으로 저장됩니다. 관리 디스크를 ‘관리’로 부르는 것은 페이지 Blob, Blob 컨테이너 및 Azure Storage 계정에 대해 추상이기 때문입니다. 관리 디스크를 사용하면 디스크를 만들고 Azure에서 나머지를 관리하기만 하면 됩니다.

Azure NetApp Files

Azure NetApp Files는 엔터프라이즈급 고성능 관리형 파일 스토리지 서비스입니다. Azure NetApp Files는 모든 워크로드 유형을 지원하며 기본적으로 고가용성입니다. 서비스 및 성능 수준을 선택하고, NetApp 계정, 용량 풀, 볼륨을 만들고, 데이터 보호를 관리할 수 있습니다.

스토리지 계정에 대한 보안 액세스

Azure Storage에 대한 모든 요청에는 권한이 부여되어야 합니다. Azure Storage는 다음 권한 부여 방법을 지원합니다.

  • Blob, 파일, 큐 및 테이블 데이터에 대한 Microsoft Entra 통합입니다. Azure Storage는 Azure RBAC(역할 기반 액세스 제어)를 통해 Blob, 파일, 테이블 및 큐 서비스에 대한 Microsoft Entra ID를 사용하여 인증 및 권한 부여를 지원합니다. 다른 권한 부여 방법보다 뛰어난 보안 및 사용 편의성을 위해 Microsoft Entra ID를 사용하여 요청 권한을 부여하는 것이 좋습니다.
  • Azure Files에 대한 SMB를 통한 ID 기반 인증입니다. Azure Files는 온-프레미스 AD DS(Active Directory Domain Services), Microsoft Entra Domain Services 또는 Microsoft Entra Kerberos(하이브리드 사용자 계정용)를 통해 SMB(서버 메시지 블록)에 대한 ID 기반 권한 부여를 지원합니다.
  • 공유 키를 사용한 권한 부여 Azure Storage Blob, 파일, 큐 및 테이블 서비스는 공유 키를 사용한 권한 부여를 지원합니다. 공유 키 권한 부여를 사용하는 클라이언트는 스토리지 계정 액세스 키를 사용하여 서명된 모든 요청이 있는 헤더를 전달합니다. 지원되지만 가능한 경우 공유 키 권한 부여에서 더 안전한 방법으로 전환하는 것이 좋습니다.
  • SAS(공유 액세스 서명). 공유 액세스 서명은 스토리지 계정의 리소스에 대한 보안 위임된 액세스를 제공합니다. SAS 토큰은 스토리지 리소스에 대한 URI에 추가됩니다. 보안 토큰은 권한 및 액세스 간격과 같은 제약 조건을 캡슐화합니다.
  • Azure NetApp Files를 사용하는 Microsoft Entra Domain Services. SMB 볼륨, 이중 프로토콜 볼륨 및 NFSv4.1 Kerberos 볼륨과 같은 Azure NetApp Files 기능은 ID 기반 액세스 제어를 위해 Microsoft Entra Domain Services와 통합됩니다.

암호화

Azure Storage에 사용할 수 있는 암호화에는 기본적으로 미사용 암호화클라이언트 쪽 암호화 두 가지 종류가 있습니다.

1. 미사용 암호화

Azure Storage 암호화는 조직의 보안 및 규정 준수 약정을 충족하기 위해 데이터를 보호하고 보호합니다. Azure Storage는 스토리지 계정에 유지되는 모든 데이터를 자동으로 암호화하고 검색 시 암호를 해독합니다. 암호화, 암호 해독 및 키 관리 프로세스는 사용자에게 투명합니다. 고객은 Azure Key Vault를 사용하여 자체 키를 관리하도록 선택할 수도 있습니다.

2. 클라이언트 쪽 암호화

Azure Storage 클라이언트 라이브러리는 유선으로 데이터를 보내고 응답을 해독하기 전에 클라이언트 라이브러리에서 데이터를 암호화하는 방법을 제공합니다. 클라이언트 쪽 암호화를 통해 암호화된 데이터는 Azure Storage 암호화 프로세스를 사용합니다.

Azure NetApp Files 데이터 트래픽은 퍼블릭 엔드포인트를 제공하지 않으며 데이터 트래픽은 고객 소유의 가상 네트워크 내에 유지되므로 기본적으로 안전합니다. 전송 중인 데이터는 기본적으로 암호화되지 않습니다. 그러나 Azure VM(네트워크 파일 시스템 또는 서버 메시지 블록 클라이언트 실행)에서 Azure NetApp Files로의 데이터 트래픽은 다른 Azure-VMto-VM 트래픽만큼 안전합니다. NFSv4.1 및 SMB3 데이터 전송 중 암호화는 필요에 따라 보안 강화를 위해 사용하도록 설정할 수 있습니다.

중복성

데이터가 지속 가능하도록 Azure Storage는 데이터의 여러 복사본을 저장합니다. 스토리지 계정을 설정할 때 중복성 옵션을 선택합니다.

Azure NetApp Files는 99.99% 가용성의 로컬 중복 스토리지를 제공합니다.

Azure Storage 간에 데이터 전송

Azure Storage 내/외부로 데이터를 이동하기 위한 몇 가지 옵션이 있습니다. 선택하는 옵션은 데이터 세트의 크기와 네트워크 대역폭에 따라 달라집니다.

Azure NetApp Files는 NFS 및 SMB 볼륨을 제공합니다. 파일 기반 복사 도구를 사용하여 데이터를 서비스로 마이그레이션할 수 있습니다.