Penyimpanan multi-node

Halaman ini menjelaskan penyimpanan multi-node sistem perlengkapan air-gapped Google Distributed Cloud (GDC).

Perangkat air-gapped GDC terdiri dari tiga server dan enam disk nonvolatile memory express (NVMe) yang terpasang pada masing-masing server:

  • Media booting NVMe 2X 1 TB
  • 4X 3,84 TB NVMe

Dua disk NVMe 1 TB di setiap node dikhususkan untuk workload booting dan sistem, sedangkan empat disk NVMe 3,84 TB lainnya digunakan sebagai bagian dari penyimpanan data yang andal.

GDC menggunakan Ceph sebagai penyimpanan yang ditentukan software untuk menyimpan data sistem dan pengguna secara andal. Cluster Ceph di-deploy di tingkat bare metal di ketiga server dan menggunakan total 12 (empat per server) drive NVMe 3,84 TB yang terhubung ke server ini sebagai penyimpanan yang mendasarinya.

Setiap server berisi monitor, pengelola, RGW, RBD, dan empat OSD.

Komponen penyimpanan Ceph

Monitor Ceph

Monitor Ceph mempertahankan peta status cluster, termasuk peta monitor, peta pengelola, dan peta daemon penyimpanan objek (OSD). Peta ini merepresentasikan status cluster penting yang diperlukan agar layanan Ceph dapat berkoordinasi satu sama lain. Monitor juga bertanggung jawab untuk mengelola autentikasi antara layanan dan klien. Setidaknya diperlukan tiga monitor untuk redundansi dan ketersediaan tinggi.

Pengelola Ceph

Pengelola Ceph bertanggung jawab untuk melacak metrik runtime dan status cluster Ceph saat ini, termasuk pemanfaatan penyimpanan, metrik performa saat ini, dan beban sistem. Biasanya diperlukan minimal dua pengelola untuk ketersediaan tinggi. Lingkungan GDC menjalankan sebanyak pengelola Ceph seperti monitor, sehingga tiga pengelola Ceph di-deploy di cluster.

Daemon penyimpanan objek (OSD) Ceph

Daemon penyimpanan objek (https://docs.ceph.com/en/quincy/glossary/#term-Ceph-OSD) menyimpan data dan menangani replikasi, pemulihan, dan penyeimbangan ulang data. OSD memberikan beberapa informasi pemantauan ke monitor dan pengelola Ceph dengan memeriksa OSD Ceph lainnya untuk mengetahui sinyal detak jantung. Biasanya diperlukan minimal tiga OSD Ceph untuk redundansi dan ketersediaan tinggi. Lingkungan GDC mengalokasikan satu OSD per drive fisik.

Perangkat blok Rados (RBD) Ceph

Perangkat blok Ceph disediakan secara tipis dan dapat diubah ukurannya. Mereka menyimpan data yang di-striping di beberapa OSD. Perangkat blok Ceph memanfaatkan kemampuan inti Ceph, termasuk membuat snapshot, replikasi, dan konsistensi yang kuat. Di lingkungan GDC, Ceph RBD tidak diekspos secara langsung. Namun, driver ini digunakan oleh driver CSI Ceph penyimpanan blok, yang bertanggung jawab untuk mendukung penyimpanan Kubernetes yang menghadap pengguna (https://kubernetes.io/docs/concepts/storage/).

Ceph RGW

Ceph Rados Gateway adalah antarmuka penyimpanan objek yang menyediakan gateway RESTful ke cluster penyimpanan Ceph untuk aplikasi (https://docs.ceph.com/en/quincy/glossary/#term-Ceph-Object-Storage).

  • Kompatibel dengan S3: Menyediakan fungsi penyimpanan objek dengan antarmuka yang kompatibel dengan sebagian besar RESTful API Amazon S3.
  • Kompatibel dengan Swift: Menyediakan fungsi penyimpanan objek dengan antarmuka yang kompatibel dengan sebagian besar OpenStack Swift API.

Di lingkungan GDC, hanya endpoint S3 yang diekspos menggunakan layanan Kubernetes Service Mesh.

Ketahanan penyimpanan GDC

Komponen penyimpanan objek dan blok Ceph dikonfigurasi untuk menggunakan faktor replikasi data 3. Minimal dua replika harus tersedia untuk melanjutkan penyajian input/output (I/O). Domain kegagalan tingkat node digunakan, yang berarti bahwa Ceph mencoba mereplikasi data tiga kali (3x) di tiga server yang berbeda.

Berikut beberapa contoh cara menangani kegagalan:

  • Kegagalan satu node tidak menyebabkan kehilangan data dan tidak memengaruhi operasi penyimpanan beban kerja.
  • Dua kegagalan disk pada node yang berbeda tidak menyebabkan kehilangan data. Namun, hal ini dapat memengaruhi ketersediaan penyimpanan untuk workload yang memiliki dua dari tiga replika data di disk ini.
  • Lebih dari satu kegagalan node, atau lebih dari dua kegagalan disk pada node yang berbeda mungkin menyebabkan hilangnya data dan mungkin memengaruhi ketersediaan penyimpanan untuk beban kerja.

Kapasitas penyimpanan GDC

Kapasitas ruang disk mentah yang tersedia sama dengan berikut ini:

raw_capacity = 3.84TB * 4 (disks_per_node) * 3 (nodes) = 46.08TB

Namun, karena data yang disimpan dalam cluster Ceph direplikasi tiga kali, kapasitas penyimpanan berguna yang tersedia untuk semua beban kerja adalah sebagai berikut:

available_capacity = raw_capacity / 3 (replicas) = 15.36TB

15,36 TB digunakan bersama di seluruh beban kerja sistem dan pengguna untuk penyimpanan blok dan objek.