Object Storage / Swift 란?
Swift라고도 하는 OpenStack Object Storage는 확장성, 내구성 및 가용성을 위해 설계된 분산 스토리지 시스템입니다. 미디어 파일, 백업 및 로그와 같은 대량의 비정형 데이터를 저장하고 검색하기 위한 간단하고 확장 가능한 솔루션을 제공합니다.
Swift의 기본 저장 단위는 파일 및 관련 메타데이터인 개체라고 합니다. 개체는 파일 시스템의 폴더와 같은 컨테이너에 저장됩니다. 개체 및 컨테이너는 RESTful API를 사용하여 액세스할 수 있으므로 개발자는 Swift를 애플리케이션과 통합할 수 있습니다.
Swift는 확장성이 뛰어나고 내결함성이 있도록 설계되었습니다. 분산 아키텍처를 사용하여 여러 노드에 데이터를 저장하고 각 개체는 중복성을 위해 서로 다른 노드에 여러 복사본에 저장됩니다. 이렇게 하면 일부 노드가 실패하거나 사용할 수 없게 되더라도 데이터를 항상 사용할 수 있습니다.
또한 Swift는 데이터 복제, 버전 관리 및 수명 주기 관리와 같은 다양한 고급 기능을 제공합니다. 데이터 복제를 사용하면 재해 복구 목적으로 데이터를 여러 지역 또는 데이터 센터 간에 복제할 수 있습니다. 버전 관리를 통해 객체의 여러 버전을 저장하고 검색할 수 있으며 수명 주기 관리를 통해 객체를 자동으로 삭제하거나 구성 가능한 정책에 따라 저렴한 스토리지 계층으로 이동할 수 있습니다.
Swift는 OpenStack 플랫폼의 핵심 구성 요소이며 많은 조직에서 클라우드 스토리지 서비스를 제공하는 데 사용됩니다. 확장성과 안정성이 뛰어나며 대량의 비정형 데이터를 저장하고 액세스할 수 있는 간단하고 비용 효율적인 방법을 제공합니다.
Object Storage / Swift 필수 용어
Object storage인 Swift를 이해하려면 Account, Container, Obejct 이 세개의 용어를 이해를 하고 있어야 합니다
Swift에서 Account은 사용자 또는 프로젝트를 나타내는 최상위 entitiy이며 하나 이상의 Container에 대한 논리적 Container역할을 합니다. 각 Account에는 Account 이름이라는 고유한 식별자가 있으며 사용자 또는 응용 프로그램이 계정의 리소스에 액세스할 수 있도록 하는 자격 증명 집합과 연결됩니다.
Container는 파일 시스템의 디렉토리 또는 폴더와 유사한 Swift의 논리적 개체 그룹입니다. 각 컨테이너는 계정 내에서 고유한 이름을 가지며 임의 개수의 개체를 포함할 수 있습니다. 컨테이너는 개체를 구성하고 개체에 대한 액세스를 제어하는 데 사용됩니다. 누가 컨테이너를 읽거나 쓸 수 있는지 정의하는 액세스 제어 정책을 설정하여 컨테이너에 대한 액세스를 제한할 수 있습니다.
개체는 Swift의 기본 저장 단위이며 메타데이터와 함께 파일을 나타냅니다. 개체는 컨테이너에 저장되며 컨테이너 내의 고유한 개체 이름으로 식별됩니다. 객체는 몇 바이트에서 몇 기가바이트까지 모든 크기가 될 수 있으며 RESTful API를 사용하여 저장하고 검색할 수 있습니다. 또한 개체에는 콘텐츠 유형, 수정 시간 및 사용자 지정 메타데이터와 같은 관련 메타데이터가 있을 수 있습니다.
요약하자면, Swift의 계정은 사용자 또는 프로젝트를 나타내고, 컨테이너는 개체의 논리적 그룹을 나타내며, 개체는 메타데이터와 함께 파일을 나타냅니다. 계정, 컨테이너 및 개체는 함께 분산 환경에서 대량의 비정형 데이터를 저장하고 액세스할 수 있는 유연하고 확장 가능한 방법을 제공합니다.
Object Storage / Swift 사용법
Object Storage / Swift 를 실제로 사용하는 방법은 총 4가지가 있습니다.
1. Dashboard인 horizion에서 사용
2. Swift API를 사용
3. OpenStack CLI에서 사용
4. S3 cli에서 사용
간단하게 알아보도록 하겠습니다.
Swift API
Swift API는 아래 페이지에서 확인 할 수 있습니다.
Swift API를 공부하면서 각 API의 request parameter에 대해 하나 하나 이해하는데 시간이 많이 걸렸고 여전히 이해를 못하는 부분은 있지만 만약 궁금하신 부분이 있으시다면 댓글로 남겨주시면 제가 아는 선에서 알려드리도록 하겠습니다. 만약 시간이 된다면 각 parameter에 대해서 설명하는 페이지를 만들어 보도록 하겠습니다.
Openstack CLI 에서 사용하기
OpenStack 기본 CLI에서는 swift를 사용하는 것이 불가하고 다운로드를 받은 후 사용이 가능합니다. 아래 페이지를 참고하여 따라하면 해 볼 수 있습니다.
OpenStack CLI ObjectStorage/Swift Command
S3 CLI에서 사용하기
아래 페이지에서 S3 CLI 설치 및 사용법을 보실 수 있습니다. command 사용법은 aws만 제외하고 사용하면 동일하게 작동합니다.
번외로 cyberduck에서도 사용이 가능하지만 이번에서는 다루지 않도록 하겠습니다.
'Openstack' 카테고리의 다른 글
AWS S3 CLI (0) | 2023.05.15 |
---|---|
Openstack에 대해서 (0) | 2023.05.08 |
댓글