클라우드 호스팅의 핵심 기술은 무엇입니까?
가상 디스크 구축
서버 확장 스토리지는 주로 DAS, SAN, NAS 등 세 가지 방법으로 확장할 수 있습니다. 그렇다면 가상 디스크 구축에 사용할 수 있는 스토리지 유형은 무엇입니까?
가상화 환경에서는 VMWare 와 같은 hypervisor 가 동시에 여러 가상 시스템에 스토리지 공간을 할당해야 합니다. 이 과정에서 물리적 스토리지 자원을 가상 디스크로 분할한 다음 VM 에 할당해야 합니다.
분명히 DAS 를 통해 물리적 디스크를 가상 시스템에 직접 연결할 수 없습니다. 이 경우 물리적 디스크가 너무 많이 필요합니다. SAN 은 LUN (논리 유닛) 형태로 스토리지 자원을 제공하지만 가상 환경의 가상 시스템 수가 너무 많아 LUN 수가 이렇게 많은 가상 디스크를 지원하기에 충분하지 않습니다.
더 중요한 것은 많은 수의 가상 시스템에서 가상 디스크를 공유한다는 것입니다. 가상 시스템은 언제든지 생성, 삭제 또는 마이그레이션해야 하기 때문에 가상 시스템을 마이그레이션할 때 스토리지 공간이 필요하며 원본 데이터만 손실되지 않습니다. DAS 나 SAN 중 어느 것도 * * * 스토리지를 즐기기에 적합하지 않습니다.
자원 할당 및 * * * 공유 문제를 고려하여 하이퍼바이저는 가상 디스크를 NAS 형식으로 구현합니다. VMware 는 일반적으로 가상 디스크를 구현하기 위해 가상 시스템 환경을 위한 프로토콜인 VMFS (virtual machine file system) 또는 NFS 프로토콜을 사용합니다.
각 가상 시스템의 데이터는 실제로 파일 더미, 가장 중요한 파일의 가상 디스크 파일 (VMDK 파일), 스왑 파티션 파일 (VSWP 파일, 동등한 교환), 비휘발성 메모리 (NVRAM 파일은 BIOS 와 동일) 등입니다. 가상 디스크에 대한 각 가상 시스템의 입출력은 실제로 가상 디스크 파일에 대한 읽기 및 쓰기 작업입니다.
가상 서버 환경의 설계, 구축 및 최적화를 통해 여러 가상 시스템이 통합된 클러스터 스토리지 풀에 액세스할 수 있으므로 리소스 활용도가 크게 향상됩니다. 사용 및 자원 공유를 통해 관리자는 효율성과 스토리지 활용도를 직접 높일 수 있습니다.
그렇다면 클라우드 컴퓨팅에서 가상 디스크를 어떻게 사용합니까?
인스턴스 저장소
가상 디스크를 사용하는 가장 중요한 방법 중 하나는 인스턴스 스토리지입니다. 각 VM 은 CPU, 메모리, 디스크 등 각 인스턴스에서 시뮬레이션된 하드웨어 환경을 제공하는 VM 인스턴스입니다. 이렇게 하면 가상 디스크가 물리적 세계처럼 가상 시스템 인스턴스의 일부가 됩니다. 가상 시스템을 삭제하면 가상 디스크도 삭제됩니다.
이 인스턴스 스토리지 모델에서 가상 디스크와 가상 시스템 간의 스토리지 관계는 실제로 DAS 스토리지입니다. 하지만 가상 디스크의 기본 구현은 NAS 로 이뤄졌다고 합니다. Hypervisor 의 기능은 구현 프로토콜 (VMfs 또는 NFS) 과는 별도로 가상 시스템의 하위 계층인 스토리지 VM 계층을 저장하는 스토리지 모델입니다.
VMFS 프로토콜은 스토리지 자원을 가상화한 다음 가상 시스템을 할당합니다.
볼륨 저장소
인스턴스 저장소에는 한계가 있습니다. 일반적으로 개발자는 VM 을 재구축할 때 사용자 데이터를 유지하기 위해 OS 와 설치된 일부 서버 어플리케이션 및 사용자 데이터와 같은 인스턴스 데이터를 분리하려고 합니다.
이러한 요구 사항으로 인해 또 다른 스토리지 모델인 볼륨 스토리지가 발생합니다. 볼륨은 스토리지의 기본 단위이며 가상 디스크 파티션과 같습니다. 가상 시스템 인스턴스의 일부는 아니지만 가상 시스템의 외부 스토리지 디바이스로 간주될 수 있습니다.
이 볼륨은 한 가상 시스템에서 마운트 해제한 다음 다른 가상 시스템에 연결할 수 있습니다. 이를 통해 인스턴스 데이터와 사용자 데이터를 분리할 수 있습니다. OpenStack cinder 는 볼륨 스토리지의 구현입니다.
인스턴스 스토리지와 볼륨 스토리지 외에도 마지막으로 또 다른 특수한 가상 스토리지인 개체 스토리지를 언급했습니다.
객체 저장소
많은 클라우드 어플리케이션은 서로 다른 가상 시스템 간에 데이터를 공유해야 합니다. 이를 위해서는 여러 데이터 센터에 걸쳐 있어야 하는 경우가 많습니다. 개체 스토리지를 통해 이러한 문제를 해결할 수 있습니다. 앞의 클라우드 컴퓨팅 IaaS 관리 플랫폼의 기본 기능은 무엇입니까? 개체 저장소가 이미 에 있습니다.
객체 저장소 모델에서 데이터는 하나의 통에 저장되며 배럴은 문자 그대로 "통" 이라고도 할 수 있습니다. 예를 들어, 개체는 파일과 같고 저장 부분은 폴더 (또는 디렉토리) 와 같습니다. 객체와 스토리지 세그먼트는 URIs (uniform resource identifier) 를 통해 찾을 수 있습니다.
개체 스토리지의 핵심 설계 아이디어는 실제로 가상화입니다. 가상화는 볼륨, 디렉토리, 디스크 등과 같은 파일의 물리적 스토리지 위치입니다. 가상화는 파일을 개체로 가상화하는 배럴입니다. 애플리케이션 계층의 경우 데이터 액세스를 단순화하고 기본 스토리지 기술의 이기종 및 복잡성을 차단합니다.
객체 저장 모델
NAS 및 개체 스토리지는 각각 장점이 있습니다.
물론 NAS 스토리지 기술도 데이터 향유 문제를 해결할 수 있는 문제인가? 객체 스토리지의 크기와 비용 이점 때문에 많은 클라우드 환경에서는 NAS 대신 객체 스토리지를 사용합니다.
개체 스토리지는 여러 노드에 분산되고 최신 데이터를 항상 사용할 수 있는 것은 아니므로 개체 스토리지의 데이터 일관성이 좋지 않습니다. 일관성 요구 사항이 강한 경우 NAS 를 사용할 수 있습니다. 현재 클라우드 컴퓨팅 환경에서는 NAS 및 개체 스토리지가 * * * 에 존재합니다.
NAS 와 마찬가지로 개체 스토리지는 하드웨어 아키텍처가 아닌 소프트웨어 아키텍처입니다. 응용프로그램은 REST API 를 통해 객체 저장소에 직접 액세스합니다. 공용 개체 스토리지에는 아마존 S3 와 OpenStack 의 Swift 가 포함됩니다.
라벨
클라우드 플랫폼의 실제 어플리케이션에서는 실제 상황에 따라 서로 다른 가상화 스토리지 기술을 합리적으로 사용해야 합니다.
오디오 비디오, 그림 등과 같은 구조화되지 않은 정적 데이터 파일의 경우 , 우리는 일반적으로 객체 저장소를 사용합니다.
시스템 미러링 및 어플리케이션의 경우 클라우드 호스트 인스턴스 스토리지 또는 볼륨 스토리지가 필요합니다.
응용 프로그램에서 생성된 동적 데이터의 경우 일반적으로 클라우드 데이터베이스를 사용하여 데이터를 관리해야 합니다.