Categories: 미분류

Azure Storage 계정 만들고 Blob 저장소 연결하기

Azure Blob Storage는 마이크로소프트 애저에서 제공하는 객체 스토리지 서비스입니다. AWS S3와 유사하며, 이미지, 영상, 백업 파일 등 대용량 비정형 데이터를 저장하는 데 특화되어 있습니다.

이번 글에서는 Azure 포털을 사용해 Storage 계정을 생성하고, Blob 컨테이너를 만들고, 파일 업로드 및 공개 URL을 생성하는 전체 흐름을 실습 형태로 정리해드릴게요.


Azure Blob Storage란?

BlobBinary Large Object의 약자로, 이미지, 동영상, PDF, 로그, JSON, HTML 등 구조화되지 않은 파일 데이터를 의미합니다. Azure의 Blob Storage는 다음과 같은 특징을 가집니다.

주요 특징:

  • 저렴한 비용으로 대용량 저장 가능
  • Tier(핫/쿨/아카이브) 설정으로 비용 최적화 가능
  • 정적 웹 호스팅도 가능
  • 권한 관리 및 접근 제어 정책(Azure RBAC, SAS 등) 제공
  • HTTPS 기반의 글로벌 콘텐츠 전송 가능

1단계 – Azure Storage 계정 만들기

1. Azure 포털 접속

2. 스토리지 계정 생성

  1. + Create 클릭
  2. 기본 설정 입력
항목설정값 예시
Subscription기본 구독
Resource groupstorage-demo-rg (새로 만들기 가능)
Storage account namemyblobstorage123 (전 세계 고유 이름 필요, 소문자/숫자만)
RegionKorea Central 또는 가까운 지역
PerformanceStandard (일반적 사용에 적합)
RedundancyLRS (로컬 중복 저장, 기본값)
  1. Review + Create → Create 클릭

배포에는 1~2분 소요됩니다.


2단계 – Blob 컨테이너 만들기

1. 생성된 Storage 계정 열기

  • 생성 완료 후 → Storage 계정 이름 클릭
  • 좌측 메뉴에서 Containers 클릭

2. Blob 컨테이너 생성

  1. + Container 클릭
  2. 이름: media, files, images 등 원하는 이름 입력
  3. 공개 접근 권한(Public access level) 선택:
옵션설명
Private인증된 사용자만 접근 가능
Blob누구나 Blob 파일에 접근 가능 (목록은 못 봄)
ContainerBlob 및 목록까지 공개됨
  1. Create 클릭

3단계 – Blob 업로드 및 URL 연결

1. 컨테이너 안에 파일 업로드

  • 생성한 컨테이너 클릭 → Upload 클릭
  • 로컬 이미지, PDF, JS, CSS 등 원하는 파일 업로드

2. Blob URL 복사

  • 업로드한 파일 선택 → Blob URL 확인
  • URL 예시: https://myblobstorage123.blob.core.windows.net/media/sample.jpg
  • 퍼블릭 설정이 되어 있다면 해당 URL로 누구나 접근 가능

4단계 – Azure Storage 탐색기 or SDK 연결 (선택사항)

Azure Storage는 Azure Portal 외에도 다음을 통해 접근할 수 있습니다:

1. Azure Storage Explorer

2. SAS URL로 보안 접근 제공

  • Shared Access Signature(SAS) 생성 → 유효 시간, 권한 지정
  • 특정 사용자에게 제한된 시간 동안만 파일 업로드/다운로드 허용 가능

3. 프로그래밍 연동 (Python, .NET, JavaScript)

Azure SDK를 이용하면 프로그램에서도 Blob Storage를 읽고 쓸 수 있습니다. 예: Python

from azure.storage.blob import BlobServiceClient

conn_str = "DefaultEndpointsProtocol=https;AccountName=...;AccountKey=...;"
client = BlobServiceClient.from_connection_string(conn_str)
container = client.get_container_client("media")

for blob in container.list_blobs():
    print(blob.name)

Q&A

Q1. Storage 계정 이름이 중복된다고 나오는데 왜 그런가요?

Azure Storage 계정 이름은 전 세계적으로 유일한 이름이어야 합니다. 따라서 myfiles, teststorage 같은 일반적인 이름은 이미 누군가 사용 중일 수 있습니다. 소문자와 숫자만 사용 가능하며, 고유성을 위해 이름 뒤에 랜덤 숫자나 회사명, 날짜 등을 붙여서 조합해보세요. 예: myblogmedia202504


Q2. 업로드한 파일이 외부에서 열리지 않아요. 왜 그럴까요?

가장 흔한 원인은 퍼블릭 액세스 권한 설정이 ‘Private’으로 되어 있는 경우입니다. Blob 컨테이너를 만들 때 Blob 또는 Container로 접근 권한을 설정해야 외부에서 접근할 수 있습니다. 이미 만든 컨테이너의 권한은 나중에 **’Change access level’**을 통해 변경할 수 있습니다.


Q3. 컨테이너 단위로 접근 제한을 둘 수 있나요?

네, 가능합니다. 다음 3가지 방식으로 접근을 제어할 수 있습니다:

  1. 퍼블릭 접근 차단: Blob Level에서 비공개 설정
  2. Shared Access Signature(SAS): 유효 기간/권한이 제한된 임시 토큰
  3. Azure RBAC: 사용자/그룹 단위의 리소스 권한 관리

즉, “파일은 외부 공유 가능하지만 업로드는 내부 개발자만” 등으로 세부 제어가 가능합니다.


Q4. Blob Storage에서 정적 웹사이트 호스팅도 가능한가요?

네! Azure Storage는 정적 웹사이트 호스팅 기능을 지원합니다. HTML, JS, CSS 기반의 SPA(React, Vue 등)를 업로드해 손쉽게 웹사이트를 운영할 수 있죠.

설정 방법:

  • Storage 계정 → Static website 탭 → 활성화
  • index.html, 404.html 지정
  • https://{account-name}.z13.web.core.windows.net 형태의 웹 주소 제공

Q5. 비용은 얼마나 발생하나요?

Azure Blob Storage는 사용량 기반으로 청구됩니다. 과금 요소는 다음과 같습니다:

  • 저장 용량 (GB 단위)
  • 요청 수 (읽기/쓰기 요청당 과금)
  • 데이터 전송량 (Outbound)

가장 저렴한 옵션은 Cool 또는 Archive Tier입니다. 그러나 자주 접근하는 데이터는 Hot Tier를 사용하는 것이 빠릅니다. 프리 티어는 매월 5GB 저장소, 20,000 읽기 요청 등이 무료로 제공됩니다.


huniverse4

Recent Posts

윈드라이브 동기화 용량 초과 시 대처법

윈드라이브(OneDrive)를 사용하다 보면 어느 순간 “동기화 중지됨”, “저장소 가득 참”이라는 메시지를 마주할 수 있습니다. 이는…

1개월 ago

윈드라이브 동기화 폴더 바꾸는 법 (드라이브 변경 포함)

윈드라이브(OneDrive)를 사용하다 보면, 기본으로 설정된 동기화 폴더 위치가 불편하거나 C드라이브 용량 부족 등으로 인해 다른…

1개월 ago

윈드라이브를 수동 동기화로 설정하는 방법

윈드라이브(OneDrive)는 기본적으로 자동으로 파일을 클라우드와 동기화하도록 설정되어 있습니다. 문서를 수정하거나 사진을 추가하면, 몇 초 내로…

1개월 ago

윈드라이브 동기화 안 될 때 체크할 설정 5가지

윈드라이브(OneDrive)는 자동으로 파일을 클라우드에 백업하고 여러 기기와 실시간으로 동기화해주는 매우 유용한 도구입니다. 하지만 간혹 “OneDrive…

1개월 ago

윈드라이브 동기화 상태 확인 및 오류 해결법

윈드라이브(OneDrive)는 실시간으로 파일을 클라우드에 저장하고 여러 기기에서 자동으로 동기화해주는 편리한 서비스지만, 때때로 동기화가 멈추거나 오류가…

1개월 ago

윈드라이브 특정 폴더만 동기화하는 방법

윈드라이브(OneDrive)는 기본적으로 전체 OneDrive 폴더를 PC와 동기화하지만, 모든 데이터를 동기화할 필요는 없습니다. 저장 공간을 절약하거나,…

1개월 ago