DigitalOcean Droplets는 가상화된 하드웨어 위에서 실행되는 Linux 기반 가상 머신(VM)입니다. 생성한 각 Droplet은 독립형 또는 더 큰 클라우드 기반 인프라의 일부로 사용할 수 있는 새로운 서버입니다. 올바른 Droplet 계획을 선택하는 것은 워크로드에 따라 다릅니다. 너무 큰 Droplet은 리소스를 적게 사용하고 더 많은 비용이 들지만 전체 CPU 또는 메모리에서 실행되는 작은 Droplet은 성능 저하 또는 오류로 인해 어려움을 겪습니다. 사용 사례에 가장 적합한 Droplet 계획을 선택하는 데 도움이 되도록 이 기사에서는 공유 CPU와 전용 CPU의 차이점을 설명하고 각 Droplet 계획에 대해 자세히 설명하며 데이터 기반 결정을 내리는 방법으로 결론을 내립니다. 다른 종류의 더 큰 Droplet 계획으로 크기 조정을 포함하여 생성 후 더 큰 계획으로 Droplet의 크기를 조정할 수도 있습니다. 예를 들어 기본 Droplet 계획에서 더 큰 CPU 최적화 Droplet 계획으로 크기를 조정할 수 있습니다. 계획 및 가격의 전체 목록은 Droplet 가격 페이지를 참조하십시오. ㅏ **Droplet**은 CPU, RAM, 디스크 스토리지와 같은 리소스가 물리적 호스트에서 할당되는 가상 머신(VM)입니다. ㅏ **가상 머신 모니터라고도 하는 하이퍼바이저는 물리적 호스트에서 실행되는 여러 Droplet이 각각 vCPU와 같은 가상 리소스를 수신하는지 확인합니다. ㅏ **vCPU**는 프로세서 코어의 단일 하이퍼스레드에 해당하는 처리 능력 단위입니다. 최신 멀티코어 프로세서에는 여러 개의 vCPU가 있습니다. 선택한 Droplet 계획은 Droplet에 할당된 리소스의 양을 결정합니다. RAM, 디스크 스토리지 및 네트워크 대역폭과 같은 리소스는 항상 전용이지만 전용 vCPU에 대해 공유 CPU와 전용 CPU 계획 중에서 선택할 수 있습니다. 전용 CPU Droplet은 항상 전체 하이퍼스레드에 대한 액세스를 보장합니다. 공유 CPU Droplet을 사용하면 Droplet에 할당된 하이퍼스레드가 여러 다른 Droplet 간에 공유될 수 있습니다. 공유 CPU Droplet에 더 많은 부하가 발생하면 하이퍼바이저는 동적으로 더 많은 하이퍼스레드를 할당합니다. 그러나 하이퍼바이저가 할당할 수 있는 CPU 주기의 양은 해당 호스트를 공유하는 다른 Droplet의 워크로드에 따라 다릅니다. 이러한 인접한 Droplet의 부하가 높은 경우 Droplet은 기본 물리적 프로세서에 대한 전용 액세스 대신 하이퍼스레드의 일부를 수신할 수 있습니다. 실제로 이것은 공유 CPU 드롭릿을 의미합니다. *수* 전체 하이퍼스레드에 액세스할 수 있지만 보장되지는 않음 5개의 Droplet 계획이 있습니다: 공유 CPU 계획 1개와 전용 CPU 계획 4개 |소형 계획||CPU||vCPU||메모리| | |기본(일반 및 프리미엄) |공유||1 - 8||1 - 16GB RAM| | |범용 |전용||2 - 40||8 - 160GB RAM | 4GB RAM / vCPU | |CPU 최적화 |전용||2 - 48||4 - 96GB | 2GB RAM / vCPU | |메모리 최적화 |전용||2 - 32||16 - 256GB RAM | 8GB RAM / vCPU | |스토리지 최적화 |전용||2 - 32||16 - 256GB RAM | 8GB RAM / vCPU 150~225GB SSD/vCPU 기본 Droplet은 전용 스레드를 충분히 사용하지 않는 워크로드에 대해 더 낮은 비용으로 가장 효율적인 CPU 사용을 제공합니다. 다음과 같이 다양한 수준의 CPU를 처리할 수 있는 버스트 애플리케이션에 이상적입니다. 기본 Droplet은 vCPU 1개/1GB 메모리에서 vCPU 8개/16GB 메모리까지 다양한 구성으로 제공됩니다. 또한 애플리케이션에 가장 적합한 메모리 대 vCPU 비율을 선택할 수 있는 유연성을 제공합니다. 기본 Droplet은 공유 CPU로, 주로 낮은 부하에서 중간 부하로 실행되고 때때로 짧은 시간 동안 버스트되는 앱에 이상적입니다. 시간이 중요하거나 가변적인 성능을 견딜 수 없는 프로덕션 워크로드의 경우 전용 CPU 드롭릿을 선택해야 합니다. 기본 드롭릿은 일반 CPU 또는 프리미엄 CPU를 가질 수 있습니다. 프리미엄 CPU용으로 Intel과 AMD 중에서 선택할 수 있습니다. 프리미엄 CPU가 포함된 기본 Droplet은 최신 2세대 CPU와 NVMe SSD 중 하나를 사용하도록 보장됩니다. NVMe SSD는 병렬 처리를 사용하여 일반 SSD보다 더 빠른 디스크 성능을 제공합니다. 많은 수의 트랜잭션이 필요한 워크로드는 NVMe SSD를 사용하면 대기 시간이 훨씬 짧아집니다. 프리미엄 CPU 드롭릿은 메모리 성능도 향상되어 인메모리 데이터베이스 및 웹 앱용 서버 측 캐시와 같은 워크로드에서 중요한 요소를 담당할 수 있습니다. 프리미엄 AMD Droplets는 3200MHz의 메모리 주파수와 프리미엄 Intel 2933MHz를 특징으로 합니다. 프리미엄 CPU 드롭릿에는 2세대 또는 3세대 Intel Xeon Scalable 프로세서 또는 2세대 또는 3세대 AMD EPYC 프로세서가 있습니다. 일반 CPU 드롭릿에는 1세대 또는 이전 Xeon Scalable 프로세서와 AMD EPYC 프로세서가 혼합되어 있습니다. 범용 Droplet은 다양한 프로덕션 워크로드에 적합한 전용 CPU에 대한 메모리 비율이 균형을 이루고 있습니다. 범용 드롭릿은 vCPU 2개에서 vCPU 최대 40개까지 6가지 구성으로 제공되며 RAM은 8GB에서 최대 160GB입니다. 이 4:1 메모리 대 CPU 비율은 다음과 같은 표준 워크로드에 최적입니다. 또한 응용 프로그램에 어떤 물방울 유형이 가장 적합한지 확실하지 않은 경우 좋은 기본 선택입니다. 모든 범용 Droplet에는 기본 클럭 속도가 2.7GHz인 Intel Xeon Skylake 또는 Cascade Lake 프로세서가 있습니다. 전용 컴퓨팅 성능이 필요한 범용 프로덕션 워크로드에 가장 적합합니다. 워크로드에 보장되고 지속적인 CPU 성능이 필요하지만 메모리 집약적이지 않은 경우 CPU 최적화 드롭릿을 사용하면 전용 vCPU당 비용을 최소화할 수 있습니다. 기본 클럭 속도가 2.6Ghz를 초과하는 Intel® Ice Lake 및 이전 프로세서로 지원되는 CPU 최적화 Droplet은 다음과 같은 CPU 바인딩 워크로드를 위해 구축되었습니다. CPU 최적화 드롭릿은 4GB RAM이 있는 2개의 vCPU에서 최대 32개의 vCPU 및 64GB RAM까지 메모리 대 CPU의 2:1 비율을 제공합니다. 이 구성은 전용 vCPU에서 빠르고 일관된 성능을 요구하지만 범용 드롭릿에서 제공하는 추가 RAM이 필요할 정도로 메모리를 많이 사용하지 않는 애플리케이션에 최적입니다. 대규모 프로덕션 데이터베이스 또는 메모리 내 캐시와 같은 일부 워크로드에는 작업 데이터 집합을 저장하기 위해 더 많은 양의 메모리가 필요합니다. RAM이 충분하지 않으면 이러한 응용 프로그램은 일반적으로 느리게 실행되거나 때때로 불안정해지고 충돌이 발생할 수 있습니다. 각 vCPU에 8GB의 RAM이 있는 Memory-Optimized Droplet은 다음 애플리케이션에 이상적입니다. 메모리 최적화 드롭릿은 2개의 vCPU와 8GB RAM에서 최대 32개의 vCPU와 256GB 메모리까지 다양합니다. 추가 메모리는 애플리케이션의 성능과 안정성에 상당한 영향을 미치는 디스크로의 과도한 교체 또는 메모리 부족 오류를 방지하는 데 도움이 될 수 있습니다. 전용 vCPU를 계속 제공하면서 메모리 GB당 비용을 최소화할 수 있습니다. 대량의 데이터를 캡처하는 워크로드에는 빠른 스토리지가 필요합니다. Storage-Optimized Droplet은 최신 SSD용으로 명시적으로 구축된 인터페이스 프로토콜인 NVMe(비휘발성 메모리 익스프레스)를 사용합니다. 병렬 처리를 활용하여 일반 SSD보다 훨씬 빠른 디스크 성능을 제공합니다. 스토리지가 네트워크를 통해 연결되는 대신 하이퍼바이저에 직접 연결되기 때문에 이러한 Droplet은 다음과 같이 대기 시간이 짧은 많은 수의 트랜잭션이 필요한 워크로드에 이상적입니다. Storage-Optimized Droplets의 1X SSD 구성은 각 전용 vCPU에 대해 150GB 스토리지를 제공합니다. 1.5X SSD 옵션은 vCPU당 225GB를 제공합니다. 가장 큰 Storage-Optimized Droplet의 저장 용량은 7테라바이트입니다. 특정 Droplet 유형을 결정하기 전에 워크로드를 벤치마킹하고 로드 테스트하여 시뮬레이션된 로드에서 성능을 확인하는 것이 좋습니다. 버스트가 많은 앱 또는 배치 작업의 경우, 특히 공유 CPU 기본 드롭릿을 사용할 때 로드가 예상 최대일 때 리소스 사용량을 살펴보세요. 앱의 성능이 프로덕션 요구 사항에 비해 너무 가변적이라면 전용 vCPU가 있는 Droplet 유형을 고려하십시오. Droplet 그래프를 사용하면 Droplet의 CPU 로드 및 메모리 사용량에 대한 자세한 정보를 얻을 수 있습니다. Droplet의 대부분의 시간 동안 CPU 사용량이 높고 메모리 사용량도 상당한 경우 vCPU와 메모리를 모두 확장하고 균형 잡힌 범용 Droplet을 사용하는 것이 좋습니다. Droplet의 CPU 사용량은 대부분 높지만 메모리 사용량은 매우 낮은 경우 CPU 최적화 Droplet으로 비용을 절약할 수 있습니다. 대부분의 시간 동안 Droplet의 메모리 사용량이 높지만(잠재적으로 최대치 초과 및 디스크로 교체) CPU 사용량이 낮거나 보통인 경우 메모리를 확장하고 메모리 최적화된 Droplet을 사용하는 것이 좋습니다. Droplet이 대부분의 시간 동안 CPU 또는 메모리 사용량이 낮거나 보통이지만 때때로 버스트되어 리소스 제한에 도달하는 경우 공유 CPU 기본 Droplet을 고려하고 그에 따라 제한 리소스를 확장하십시오. DigitalOcean Monitoring을 사용하면 Droplet이 리소스 제한에 도달하면 이메일이나 Slack을 통해 알리는 알림 정책을 생성할 수 있습니다. 예를 들어, Droplet 중 하나가 30분 이상 메모리 사용량의 90%를 초과하면 Slack을 통해 알림을 받도록 경고 정책을 설정할 수 있습니다. -메모리 오류 모든 DigitalOcean Droplets에는 다양한 양의 로컬 솔리드 스테이트 디스크(SSD) 스토리지가 포함됩니다. 추가 스토리지가 필요한 경우 네트워크 연결 블록 스토리지를 사용하여 Droplet에 추가 볼륨을 연결하거나 Spaces 개체 스토리지를 사용하여 파일 및 관련 메타데이터를 오프로드할 수 있습니다. 네트워크 연결 스토리지를 사용할 때 약간의 성능 저하가 있습니다. 추가 IOPS(초당 입력/출력 작업)가 필요한 경우 추가 로컬 SSD 스토리지를 위해 Droplet을 더 큰 크기로 확장하는 것이 좋습니다. Droplet에는 Droplet 인스턴스 유형 및 크기에 따라 무제한 무료 인바운드 데이터 전송과 일정량의 무료 아웃바운드 데이터 전송이 포함됩니다. 워크로드 유형 및 대역폭 사용량에 따라 Droplet을 확장하여 추가 무료 아웃바운드 데이터 전송을 활용할 수 있습니다. 모니터링은 CPU 및 메모리 사용량을 모니터링하는 것과 매우 유사한 방식으로 디스크와 대역폭을 모두 모니터링하는 그래프 및 알림 정책을 제공합니다. Droplet을 사용하여 DigitalOcean Kubernetes와 함께 컨테이너 클러스터를 실행하는 경우 최상의 Droplet 계획을 선택하기 위한 여러 가지 고려 사항이 있습니다. 여러 가지 다른 Droplet 인스턴스 유형을 결합하여 실행 중인 컨테이너에 최적으로 크기가 지정된 리소스 세트를 생성할 수 있습니다. Kubernetes와 같은 많은 컨테이너 클러스터에는 컨테이너가 실행될 Droplet을 지정할 수 있는 고급 예약 기능이 있습니다. 예를 들어 메모리 바인딩된 데이터 처리 앱을 실행 중인 경우 메모리 제한에 도달하고 디스크로 스왑되는 것을 방지하기 위해 메모리 최적화 드롭릿 그룹에 해당 워크로드를 예약할 수 있습니다. Kubernetes의 고급 예약에서 자세히 알아보세요.