MinIo untuk anak kecil

MinIO adalah solusi hebat saat Anda perlu mengatur penyimpanan objek dengan mudah dan mudah. Kustomisasi dasar, berbagai platform, dan kinerja yang baik telah melakukan tugasnya di bidang cinta orang. Jadi kami tidak punya cara lain selain menyatakan kompatibilitas Veeam Backup & Replication dan MinIO sebulan yang lalu . Termasuk fitur penting seperti Kekekalan. Faktanya, MinIO memiliki seluruh bagian dalam dokumentasi yang didedikasikan untuk integrasi kami.



Karena itu, hari ini kita akan berbicara tentang bagaimana:



  • Menyiapkan MinIO sangat cepat.
  • Menyiapkan MinIO sedikit kurang cepat, tetapi jauh lebih baik.
  • Gunakan ini sebagai Tingkat Arsip untuk repositori Veeam SOBR yang dapat diskalakan.






Apakah kamu?



Pengenalan singkat bagi mereka yang belum pernah menggunakan MinIO. Ini adalah penyimpanan objek sumber terbuka yang kompatibel dengan API Amazon S3. Ini dirilis di bawah lisensi Apache v2 dan menganut filosofi minimalis Spartan.



Artinya, ia tidak memiliki GUI yang menyebar dengan dasbor, bagan, dan banyak menu. MinIO cukup memulai servernya dengan satu perintah, di mana Anda dapat dengan mudah menyimpan data menggunakan kekuatan penuh API S3. Namun perlu dicatat bahwa kesederhanaan ini bisa menipu jika menyangkut sumber daya yang digunakan. RAM dan CPU diserap dengan sempurna, tetapi alasannya ada di bawah. Dan, omong-omong, kombinasi seperti FreeNAS dan TrueNAS menggunakan MinIO di bawah tenda.



Pengenalan ini bisa diselesaikan.



Menyiapkan MinIO sangat cepat



Menyiapkannya sangat cepat sehingga kami akan membahasnya untuk Windows dan Linux. Ada pilihan untuk buruh pelabuhan, kubernetis, dan bahkan makosi, tapi artinya akan sama di mana-mana.



Jadi, untuk Windows, buka situs web resmi https://min.io/download#/windows dan unduh versi terbaru. Di tempat yang sama, kami mengamati instruksi peluncuran:



 minio.exe server F:\Data


Dan juga ada tautan ke Panduan memulai cepat yang sedikit lebih rinci . Tidak ada gunanya tidak mempercayai instruksi, jadi kami menjalankan dan mendapatkan sesuatu seperti ini.





Itu saja! Penyimpanan berfungsi dan Anda dapat mulai mengerjakannya. Saya tidak bercanda ketika saya mengatakan bahwa MinIO itu minimalis dan hanya berfungsi. Jika Anda mengikuti tautan yang disarankan saat memulai, maka fungsi maksimum yang tersedia adalah membuat keranjang. Dan Anda bisa mulai menulis data.



Bagi pecinta Linux, semuanya tetap tidak kalah sederhana. Instruksi paling sederhana:




wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
./minio server /data


Hasilnya tidak bisa dibedakan dari apa yang dilihat sebelumnya. 



Menyiapkan MinIO sedikit lebih berarti



Seperti yang kita pahami, paragraf sebelumnya adalah kerusakan untuk tujuan pengujian. Dan, sejujurnya, ini untuk menguji MinIO yang kami gunakan secara luas, yang kami sama sekali tidak malu mengakuinya. Tentu saja, itu berhasil, tetapi sayang untuk menanggung hal seperti itu di luar bangku tes. Oleh karena itu, kami mengambil file di tangan kami dan mulai mengingatnya.



HTTPS



Langkah wajib pertama dalam proses produksi adalah enkripsi. Sudah ada sejuta dan seribu manual di jaringan untuk menambahkan sertifikat ke MiniIO, tetapi rencana umumnya adalah sebagai berikut:



  • Buat sertifikat
  • Untuk Windows, letakkan di C: \ Users \% User% \. Minio \ certs
  • Untuk Linux di $ {HOME} /. Minio / certs 
  • Kami memulai ulang server


Banal Let's Encrypt membosankan dan dijelaskan di mana-mana, jadi jalur kami adalah jalur samurai, jadi dalam kasus Windows kami mengunduh Cygwin , dan dalam kasus Linux kami hanya memeriksa apakah kami telah menginstal openssl. Dan melakukan sihir konsol:



  • Buat kunci: openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
  • Buat sertifikat dengan kunci: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Salin private.key dan public.crt ke folder di atas
  • Mulai ulang MinIO


Jika semuanya berjalan sebagaimana mestinya, maka tentang baris berikut akan muncul di status.





Nyalakan MinIO Erasure Coding



Pertama, beberapa kata tentang subjek. Singkatnya: ini adalah perlindungan data berbasis perangkat lunak terhadap kerusakan dan kehilangan. Seperti penyerbuan, hanya saja yang lebih bisa diandalkan. Sementara RAID6 klasik bisa kehilangan dua drive, MinIO merasa nyaman kehilangan setengahnya. Teknologi tersebut dijelaskan lebih detail dalam panduan resmi . Tetapi jika Anda mengambil intinya, maka ini adalah implementasi kode Reed-Solomon: semua informasi disimpan dalam bentuk blok data, yang di dalamnya terdapat blok paritas. Dan tampaknya semua ini telah dilakukan berkali-kali, hanya ada "tetapi" yang penting: kita dapat secara eksplisit menunjukkan rasio blok paritas ke blok data untuk objek yang disimpan.

Ingin 1: 1? Sama sama!

Ingin 5: 2? Tidak masalah!



Fungsi yang sangat penting jika Anda menggunakan beberapa node sekaligus dan ingin menemukan keseimbangan Anda sendiri antara keamanan data maksimum dan sumber daya yang dikeluarkan. Di luar kotak, MinIO menggunakan rumus N / 2 (di mana N adalah jumlah total disk), mis. membagi data Anda antara disk data N / 2 dan disk paritas N / 2. Menerjemahkan ke dalam bahasa manusia: Anda dapat kehilangan setengah dari disk dan memulihkan data. Rasio ini diatur melalui Kelas Penyimpanan , memungkinkan Anda untuk secara mandiri memilih mana yang lebih penting: keandalan atau kapasitas.



Panduan ini memberikan contoh: misalkan Anda memiliki instalasi pada 16 disk dan Anda perlu menyimpan file sebesar 100 MB. Jika pengaturan default digunakan (8 disk untuk data, 8 untuk blok paritas), maka file pada akhirnya akan berukuran hampir dua kali lipat, yaitu. 200 MB. Jika rasio drive 10/6, maka dibutuhkan 160 MB. 14/2 - 114 Mb.



Perbedaan penting lainnya dari penggerebekan: dalam kasus menjatuhkan disk, MinIO akan bekerja di tingkat objek, memulihkan satu per satu tanpa menghentikan seluruh sistem. Sementara penyerbuan normal akan dipaksa untuk memulihkan seluruh volume, yang akan memakan waktu yang tidak terduga. Dalam memori penulis, rak disk, yang, setelah kehilangan dua disk, dihitung kembali selama satu setengah minggu. Itu sangat tidak menyenangkan.



Dan catatan penting: MinIO membagi semua disk untuk Erasure Coding menjadi set dari 4 hingga 16 disk, menggunakan ukuran set terbesar yang memungkinkan. Dan di masa depan, satu bagian informasi hanya akan disimpan dalam satu set.



Ini semua terdengar bagus, tetapi seberapa sulit penyiapannya? Mari kita lihat. Kami mengambil perintah untuk memulai dan hanya mencantumkan disk tempat kami perlu membuat penyimpanan. Jika semuanya dilakukan dengan benar, maka di laporan kita akan melihat jumlah disk yang digunakan. Dan saran bahwa tidak ada gunanya menambahkan setengah dari disk ke satu host sekaligus, karena ini adalah kehilangan data.



c:\minio>minio.exe server F:\ G:\ H:\ I:\ J:\ K:\




Selanjutnya, untuk mengontrol dan menyesuaikan server MinIO, kami membutuhkan agen, yang dapat Anda unduh semua sama dengan situs web resmi.



Agar tidak menghapus jari-jari Anda, setiap kali mengetik alamat dan tombol akses (dan itu tidak aman), akan lebih mudah pada awalnya untuk segera membuat alias menggunakan rumus mc alias set <YOUR-MINIO-ENDPOINT> [KUNCI-AKSES-ANDA] [RAHASIA-ANDA- KUNCI]



mc alias set veeamS3 https://172.17.32.52:9000 YOURS3ACCESSKEY YOURSECERTKE


Atau Anda dapat langsung menambahkan host Anda:



mc config host add minio-veeam https://minio.jorgedelacruz.es YOURS3ACCESSKEY YOURSECERTKEY


Dan kemudian kita akan membuat ember yang tidak bisa diubah dengan tim yang indah



mc mb --debug -l veeamS3/immutable 

mc: <DEBUG> PUT /immutable/ HTTP/1.1
Host: 172.17.32.52:9000
User-Agent: MinIO (windows; amd64) minio-go/v7.0.5 mc/2020-08-08T02:33:58Z
Content-Length: 0
Authorization: AWS4-HMAC-SHA256 Credential=minioadmin/20200819/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-bucket-object-lock-enabled;x-amz-content-sha256;x-amz-date, Signature=**REDACTED**
X-Amz-Bucket-Object-Lock-Enabled: true
X-Amz-Content-Sha256: UNSIGNED-PAYLOAD
X-Amz-Date: 20200819T092241Z
Accept-Encoding: gzip
mc: <DEBUG> HTTP/1.1 200 OK
Content-Length: 0
Accept-Ranges: bytes
Content-Security-Policy: block-all-mixed-content
Date: Wed, 19 Aug 2020 09:22:42 GMT
Location: /immutable
Server: MinIO/RELEASE.2020-08-16T18-39-38Z
Vary: Origin
X-Amz-Request-Id: 162CA0F9A3A3AEA0
X-Xss-Protection: 1; mode=block
mc: <DEBUG> Response Time:  253.0017ms


--debug memungkinkan Anda melihat tidak hanya pesan akhir, tetapi juga informasi yang lebih detail. 



-l berarti --with-lock, yang artinya tidak dapat diubah



Jika sekarang kita kembali ke antarmuka web, keranjang baru kita akan muncul di sana.





Itu saja untuk saat ini. Kami telah membuat penyimpanan yang aman dan siap untuk melanjutkan ke integrasi dengan Veeam.



Anda juga dapat memastikan bahwa semuanya bekerja dengan sempurna:



c:\minio>mc admin info veeamS3

●  172.17.32.52:9000
   Uptime: 32 minutes
   Version: 2020-08-16T18:39:38Z
   Network: 1/1 OK
   Drives: 6/6 OK
0 B Used, 1 Bucket, 0 Objects
6 drives online, 0 drives offline


MinIO dan Veeam



Perhatian! Jika karena alasan yang luar biasa Anda ingin bekerja melalui HTTP, maka di HKEY_LOCAL_MACHINE \ SOFTWARE \ Veeam \ Veeam Backup dan Replikasi \ buat kunci DWORD SOBRArchiveS3DisableTLS. Tetapkan nilainya ke 1 dan ingat bahwa kami sangat tidak menyetujui perilaku tersebut dan tidak merekomendasikannya kepada siapa pun.



Perhatian lagi! Jika, karena beberapa kesalahpahaman, Anda terus menggunakan Windows 2008 R2, maka saat Anda mencoba menghubungkan MinIO ke Veeam, kemungkinan besar Anda akan menerima kesalahan yang mirip dengan berikut ini: Gagal membuat koneksi ke titik akhir Amazon S3. Ini diperlakukan dengan tambalan resmi dari Microsoft .



Nah, persiapannya sudah selesai, mari buka antarmuka VBR dan masuk ke tab Infrastruktur Cadangan, di mana kita akan memanggil wizard untuk menambahkan repositori baru.





Tentu saja, kami tertarik dengan penyimpanan Objek, yaitu Kompatibel dengan S3. Di wizard yang terbuka, atur nama, ikuti langkah-langkah dengan alamat dan akun. Jika diperlukan, jangan lupa untuk menentukan gerbang yang akan digunakan untuk memproses permintaan ke penyimpanan.





Kemudian pilih bucket, folder dan centang kotak Make recent backups immutable. Atau kami tidak. Tetapi karena kita telah membuat repositori dengan dukungan untuk fungsi ini, akan menjadi dosa jika tidak menggunakannya.





Selanjutnya> Selesai dan nikmati hasilnya.



Sekarang Anda perlu menambahkannya ke repositori SOBR sebagai Tingkat Kapasitas. Untuk melakukan ini, buat yang baru, atau edit yang sudah ada. Kami tertarik dengan langkah Tingkat Kapasitas.





Di sini kita perlu memilih skenario mana yang akan kita kerjakan. Semua opsi dijelaskan dengan cukup baik di artikel lain , jadi saya tidak akan mengulanginya sendiri.



Dan setelah wizard selesai, tugas untuk menyalin atau mentransfer cadangan akan diluncurkan secara otomatis. Tetapi jika tidak ada dalam rencana Anda untuk segera memberikan beban pada semua sistem, maka pastikan untuk mengatur interval yang diizinkan untuk bekerja dengan tombol Jendela.





Dan, tentu saja, Anda dapat membuat pekerjaan Salinan Cadangan terpisah. Beberapa orang berpikir bahwa cara ini jauh lebih nyaman, karena cara ini agak lebih transparan dan dapat diprediksi untuk pengguna yang tidak ingin mempelajari detail pengoperasian galeri pemotretan ibukota. Dan ada cukup detail, jadi sekali lagi saya merekomendasikan artikel yang sesuai dari tautan di atas.



Dan akhirnya - jawaban untuk pertanyaan berbahaya: apa yang akan terjadi jika Anda masih mengambil dan mencoba menghapus cadangan dari penyimpanan yang tidak dapat diubah?



Inilah jawabannya:





Sekian untuk hari ini. Berdasarkan tradisi sejati, tangkap daftar topik berguna tentang topik tersebut:






All Articles