Object Storage (S3, Ceph RGW)
Di mana di admin: Infrastructure › Cloud provider › Ceph S3 (RGW) (
/infra/s3). Akun: Services › Object Storage › S3 accounts (/s3). Harga: Services › Object Storage › PAYG pricing (/s3/policy). Nyalakan modul di bawah System › Admin › License & updates.
Fungsi
Pelanggan membuat akun S3 dari portal dan mendapatkan kunci akses. NexCMP membuat dan menghapus pengguna yang cocok di Ceph RADOS Gateway (RGW) Anda melalui RGW Admin Ops API, membaca penggunaan untuk penagihan, dan menagih biaya bayar-sesuai-pemakaian: penyimpanan di atas tingkatan gratis per GB per bulan (dihagih per jam) dan trafik unduhan per GB. Unggahan gratis.
Gunakan ini saat Anda menjalankan kluster Ceph dengan RGW dan ingin menjual kembali penyimpanan objek.
Persyaratan
| Item | Persyaratan |
|---|---|
| Ceph | Kluster dengan setidaknya satu daemon RGW, dengan Admin Ops API diaktifkan (bawaan rgw_enable_apis mencakup admin). |
| Pengguna admin | Pengguna RGW untuk NexCMP dengan kapabilitas yang tercantum di bawah ini. Jangan gunakan pengguna yang memiliki data pelanggan. |
| Titik akhir | Titik akhir S3 yang digunakan pelanggan, dan titik akhir Admin Ops. Keduanya ditulis sebagai https://host tanpa jalur, hanya port 443, dan harus menyelesaikan ke alamat publik: loopback, link-local, multicast, alamat privat dan unique-local ditolak. |
| Sertifikat | Sertifikat yang valid untuk host titik akhir. |
| Log penggunaan | Pencatatan penggunaan RGW aktif (rgw_enable_usage_log = true), sehingga API penggunaan dapat melaporkan trafik. |
| Zone | Zona master dengan layanan Object Storage (S3) dicentang. Lihat Zones. |
| Storage | Kapasitas di Ceph untuk kuota yang Anda jual. |
| Bergantung pada | Modul Object Storage. Trafik unduhan juga dihitung ke Bandwidth. |
Siapkan infrastruktur
Pada node admin Ceph:
Buat pengguna admin dan berikan kapabilitas Admin Ops yang dibutuhkannya:
bashradosgw-admin user create --uid=nexcmp-admin --display-name="NexCMP admin" radosgw-admin caps add --uid=nexcmp-admin --caps="users=*;buckets=*;usage=read;metadata=read" radosgw-admin user info --uid=nexcmp-adminSalin
access_keydansecret_keydari keluaran. Keduanya adalah Admin access key dan Admin secret key di NexCMP.Nyalakan log penggunaan dan mulai ulang gateway:
bashceph config set client.rgw rgw_enable_usage_log trueLetakkan gateway di belakang HTTPS pada port 443 (proksi terbalik atau TLS RGW sendiri), publikasikan nama DNS, dan uji dari server panel:
bashcurl -fsS -o /dev/null -w '%{http_code}\n' https://s3.example.com/Anda seharusnya mendapatkan respons XML S3 (HTTP 200 atau 403), bukan waktu habis (timeout).
Hubungkan di NexCMP
Berikan layanan S3 pada zona. Buka Infrastructure › Datacenter › Zone, edit zona tersebut, dan centang Object Storage (S3). Hanya zona master dengan layanan S3 yang muncul di formulir backend.
Buka Infrastructure › Cloud provider › Ceph S3 (RGW) dan klik Add backend:
Kolom Contoh nilai Nama backend Ceph RGW 1Zone zona dari langkah 1 Titik akhir RGW Admin Ops https://s3.example.comEndpoint S3 pelanggan https://s3.example.comWilayah penandatanganan S3 defaultKunci akses admin XXXXKunci rahasia admin XXXXAktif aktif Aktifkan penjualan (wajib uji koneksi terlebih dahulu) nonaktif untuk saat ini Alasan perubahan initial setup
Klik OK (simpan), lalu Check pada baris tersebut. NexCMP memanggil API Admin Ops dengan kunci admin. Ceph connection successful dan tag Verified menandakan hal tersebut berfungsi.
Klik Edit, aktifkan sakelar Enable sales, lalu simpan. NexCMP menolak membuka penjualan hingga pemeriksaan berhasil.
Buka Services › Object Storage › PAYG pricing dan tentukan penetapan harga:
Kolom Arti Penyimpanan di atas tingkat gratis (VND/GB/bulan) Harga penyimpanan; ditagih per jam sebagai harga bulanan dibagi 730. Unduh (VND/GB) Harga untuk lalu lintas keluar. Unggah (VND/GB) Selalu 0. Tingkat gratis dengan VM Aktif (GB) Tetap sebesar 100 GB per akun selama pelanggan memiliki setidaknya satu VM aktif, dibagikan di antara akun S3 mereka berdasarkan ukuran. Batas utang (VND) Berapa banyak penggunaan yang belum dibayar yang diizinkan. Ambang batas penagihan (VND) Penggunaan dikumpulkan menjadi satu tagihan setelah melewati jumlah ini. Saldo minimum untuk membuat S3 (VND) Saldo dompet yang diperlukan untuk membuat akun. Maks akun S3 per pelanggan, Kuota teknis default (GB) Batasan untuk akun baru. 
Harga S3 dimasukkan dalam VND. Harga tersebut dikonversi untuk tampilan dan pemotongan dompet pada nilai tukar yang berlaku; lihat Currency and exchange rates.
Verifikasi
- Check menghasilkan "Ceph connection successful".
- Sebagai pelanggan (atau dengan akun uji), buat akun S3. Pada Ceph,
radosgw-admin user listmenampilkan pengguna baru, dan S3 accounts mencantumkannya. - Buat bucket dengan klien S3 apa pun menggunakan kunci pelanggan terhadap endpoint pelanggan. Unggah sebuah file.
- Setelah penagihan jam berikutnya, S3 accounts menampilkan penggunaan.
Batasan dan catatan
- Backend yang sudah terhubung dengan akun tetap mempertahankan zone, endpoint, dan region miliknya; untuk mengubahnya, buat backend baru.
- Satu zona dapat memiliki backend-nya sendiri; akun dan backend terikat secara permanen pada suatu zona.
- Tingkat gratis dan "unggah gratis" adalah aturan tetap, bukan opsi.
- Kunci disimpan secara terenkripsi; konsol hanya menampilkan bidang "biarkan kosong untuk mempertahankan kunci saat ini". Pasangan kunci selalu dimasukkan bersama-sama.
- Kunci rahasia pelanggan ditampilkan sekali saat pembuatan, dan tidak akan ditampilkan lagi. Kunci yang hilang diganti dengan merotasinya.
Pemecahan Masalah
| Gejala | Penyebab | Solusi |
|---|---|---|
| "Endpoint requires HTTPS" | Endpoint menggunakan HTTP biasa | Publikasikan HTTPS pada port 443. |
| "Port endpoint tidak diizinkan" | Port selain 443 | Gunakan port HTTPS standar. |
| "Alamat endpoint tidak diizinkan" | Nama menyelesaikan ke alamat privat, loopback, link-local, atau unique-local | Gunakan alamat publik. |
| "Endpoint hanya boleh berisi protokol dan host" | URL memiliki jalur (path), kueri, atau informasi pengguna | Gunakan https://host saja. |
| "Gagal me-resolve endpoint" | DNS tidak dapat diselesaikan dari server panel | Perbaiki DNS. |
| "Failed to connect to Ceph" | Kesalahan firewall atau TLS | Uji dengan curl dari server panel. |
| "Ceph returned HTTP 403 AccessDenied" | Kunci salah atau kapabilitas kurang | Periksa kunci dan jalankan ulang radosgw-admin caps add. |
| "Invalid Ceph response" | Endpoint bukan API RGW Admin Ops | Arahkan ke RGW, bukan ke halaman web. |
| "Uji koneksi harus berhasil sebelum mengaktifkan penjualan" | Anda mengaktifkan penjualan sebelum Check berhasil | Jalankan Check, lalu aktifkan penjualan. |
| "Semua kunci baru untuk endpoint wajib diisi" | Endpoint diubah tanpa menyertakan kedua kunci | Masukkan kunci akses dan kunci rahasia secara bersamaan. |
| "Backend sudah memiliki resource terlampaui; buat backend baru untuk mengubah zone atau endpoint" | Akun sudah ada pada backend ini | Buat backend baru. |
| "Pilih master zone dengan layanan S3" | Zona bukan zona master atau tidak memiliki layanan S3 | Centang Object Storage (S3) pada zona. |
| "Invalid region" | Region berisi karakter selain huruf, digit, -, dan _ | Gunakan default atau nama zonegroup RGW Anda. |
| "Ringkasan penggunaan Ceph tidak ada; tidak ditagih" | Log penggunaan dinonaktifkan | Aktifkan rgw_enable_usage_log. |