Kichkintoylar uchun MinIo

MiniIO - bu ob'ektni saqlashni oson va sodda tarzda tashkil qilish kerak bo'lganda ajoyib echim. Boshlang'ich o'rnatish, ko'plab platformalar va yaxshi ishlash mashhur sevgi sohasida o'z ishlarini qildi. Shunday qilib, bir oy oldin muvofiqlikni e'lon qilishdan boshqa ilojimiz yo'q edi Veeam Backup & Replication va MiniIO. O'zgarmaslik kabi muhim xususiyatni o'z ichiga oladi. Aslida, MiniIO bir butunga ega bo'lim integratsiyaga bag'ishlangan hujjatlarda.

Shuning uchun, bugun biz qanday qilib gaplashamiz:

  • MiniIO-ni sozlash juda tez.
  • MiniIO-ni sozlash biroz tezroq, lekin ancha yaxshi.
  • Undan Veeam SOBR Scalable Repository uchun arxiv darajasi sifatida foydalaning.

Kichkintoylar uchun MinIo

Qanday odamsiz?

MiniIO ga duch kelmaganlar uchun qisqacha kirish. Bu Amazon S3 API bilan mos keladigan ochiq manba ob'yekt xotirasi. Apache v2 litsenziyasi ostida chiqarilgan va Spartan minimalizmi falsafasiga amal qiladi.

Ya'ni, u asboblar paneli, grafiklar va ko'plab menyularga ega bo'lgan keng tarqalgan grafik interfeysga ega emas. MiniIO o'z serverini faqat bitta buyruq bilan ishga tushiradi, bu erda siz S3 API-ning to'liq quvvatidan foydalangan holda ma'lumotlarni saqlashingiz mumkin. Ammo shuni ta'kidlash kerakki, bu soddalik ishlatilgan resurslar haqida gap ketganda aldamchi bo'lishi mumkin. RAM va protsessor mukammal tarzda so'riladi, ammo sabablari quyida muhokama qilinadi. Aytgancha, FreeNAS va TrueNAS kabi kombinatlar kaput ostida MiniIO-dan foydalanadilar.

Ushbu kirish shu erda tugashi mumkin.

MiniIO-ni sozlash juda tez

Uni o'rnatish shunchalik tezki, biz uni Windows va Linux uchun ko'rib chiqamiz. Docker va Kubernetis va hatto MacOS uchun variantlar mavjud, ammo ma'no hamma joyda bir xil bo'ladi.

Shunday qilib, Windows holatida rasmiy veb-saytga o'ting https://min.io/download#/windows va oxirgi versiyasini yuklab oling. U erda biz boshlash uchun ko'rsatmalarni ham ko'ramiz:

 minio.exe server F:Data

Va biroz batafsilroq havola ham mavjud Tez boshlash uchun qo'llanma. Ko'rsatmalarga ishonmaslikning ma'nosi yo'q, shuning uchun biz uni ishga tushiramiz va shunga o'xshash javob olamiz.

Kichkintoylar uchun MinIo
Ana xolos! Saqlash ishlamoqda va siz u bilan ishlashni boshlashingiz mumkin. Men MiniIO minimalist va shunchaki ishlaydi, deganimda hazillashmagan edim. Agar siz ishga tushirish paytida taqdim etilgan havolaga amal qilsangiz, u erda mavjud bo'lgan maksimal funktsiyalar chelakni yaratishdir. Va siz ma'lumotlarni yozishni boshlashingiz mumkin.

Linuxni sevuvchilar uchun hamma narsa oddiy bo'lib qoladi. Eng oddiy ko'rsatmalar:


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

Natija ilgari ko'rilganidan farq qilmaydi. 

MiniIO-ni sozlash biroz mazmunliroq

Biz tushunganimizdek, avvalgi xatboshi sinov uchun mo'ljallangan. Rostini aytsam, biz MiniIO-dan sinov uchun juda keng foydalanamiz, buni tan olishdan uyalmaymiz. Albatta, bu ishlaydi, lekin sinov skameykalaridan tashqarida bunga chidash uyat. Shuning uchun, biz qo'llarimizga faylni olib, uni eslay boshlaymiz.

HTTPS

Ishlab chiqarish yo'lidagi birinchi majburiy qadam shifrlashdir. MiniIO-ga sertifikatlar qo'shish uchun tarmoqda allaqachon million va minglab qo'llanmalar mavjud, ammo ularning umumiy rejasi quyidagicha:

  • Sertifikat yarating
  • Windows holatida uni C:Users%User%.miniocerts-ga qo'ying
  • Linux uchun ${HOME}/.minio/certs 
  • Server qayta ishga tushirilmoqda

Let's Encrypt zerikarli va hamma joyda tasvirlangan, shuning uchun bizning yo'limiz samuraylar yo'lidir, shuning uchun Windows holatida biz yuklab olamiz cygwin, va Linux holatida biz shunchaki openssl o'rnatilganligini tekshiramiz. Va biz bir oz konsol sehrini qilamiz:

  • Kalitlarni yarating: openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
  • Biz sertifikatni kalit yordamida yaratamiz: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • Yuqorida ko'rsatilgan papkaga private.key va public.crt-dan nusxa oling
  • MiniIO-ni qayta ishga tushiring

Agar hamma narsa kerakli darajada bo'lsa, statusda shunga o'xshash narsa paydo bo'ladi.

Kichkintoylar uchun MinIo

MiniIO oΚ»chirish kodlashni yoqing

Birinchidan, mavzu haqida bir necha so'z. Xulosa qilib aytganda: bu ma'lumotlarni shikastlanish va yo'qotishdan dasturiy ta'minot himoyasi. Reyd kabi, faqat ancha ishonchli. Agar klassik RAID6 ikkita diskni yo'qotishga qodir bo'lsa, MiniIO yarmini yo'qotish bilan osonlikcha bardosh bera oladi. Texnologiya batafsilroq tavsiflangan rasmiy qo'llanma. Ammo mohiyatni oladigan bo'lsak, bu Reed-Solomon kodlarini amalga oshirishdir: barcha ma'lumotlar paritet bloklariga ega bo'lgan ma'lumotlar bloklari shaklida saqlanadi. Va bularning barchasi allaqachon ko'p marta qilinganga o'xshaydi, ammo muhim "lekin" bor: biz saqlangan ob'ektlar uchun paritet bloklarining ma'lumotlar bloklariga nisbatini aniq ko'rsatishimiz mumkin.
1:1 istaysizmi? Iltimos!
5:2 istaysizmi? Muammosiz!

Agar siz bir vaqtning o'zida bir nechta tugunlardan foydalansangiz va maksimal ma'lumotlar xavfsizligi va sarflangan resurslar o'rtasida o'z muvozanatingizni topmoqchi bo'lsangiz, juda muhim xususiyat. Qutidan tashqarida, MiniIO N / 2 formulasidan foydalanadi (bu erda N - disklarning umumiy soni), ya'ni. ma'lumotlaringizni N/2 ma'lumot disklari va N/2 paritet disklari o'rtasida ajratadi. Insoniy so'zlarga tarjima qilish: siz disklarning yarmini yo'qotishingiz va ma'lumotlarni qayta tiklashingiz mumkin. Bu munosabat orqali beriladi Saqlash klassi, o'zingiz uchun muhimroq narsani tanlash imkonini beradi: ishonchlilik yoki imkoniyatlar.

Qo'llanmada quyidagi misol keltirilgan: deylik, sizda 16 ta diskda o'rnatish mavjud va siz 100 MB hajmdagi faylni saqlashingiz kerak. Agar standart sozlamalar ishlatilsa (ma'lumotlar uchun 8 disk, paritet bloklari uchun 8), keyin fayl oxir-oqibat deyarli ikki barobar hajmni egallaydi, ya'ni. 200 MB. Agar disk nisbati 10/6 bo'lsa, u holda 160 MB kerak bo'ladi. 14/2 - 114 MB.

Reydlardan yana bir muhim farq: disk ishdan chiqqan taqdirda, MiniIO butun tizimni to'xtatmasdan, birma-bir tiklab, ob'ekt darajasida ishlaydi. Muntazam reyd butun hajmni tiklashga majbur bo'ladi, bu oldindan aytib bo'lmaydigan vaqtni oladi. Muallif ikkita disk tushib ketganidan keyin qayta hisoblash uchun bir yarim hafta vaqt ketgan disk javonini eslaydi. Bu juda yoqimsiz edi.

Va muhim eslatma: MiniIO barcha mumkin bo'lgan to'plam hajmidan foydalangan holda Erasure Coding uchun barcha disklarni 4 dan 16 tagacha disklarga ajratadi. Kelajakda esa ma'lumotlarning bir elementi faqat bitta to'plam ichida saqlanadi.

Bularning barchasi juda zo'r tuyuladi, lekin sozlash qanchalik qiyin bo'ladi? Keling, ko'rib chiqaylik. Biz ishga tushirish buyrug'ini olamiz va shunchaki xotira yaratilishi kerak bo'lgan disklarni ro'yxatlaymiz. Agar hamma narsa to'g'ri bajarilgan bo'lsa, unda hisobotda biz ishtirok etgan disklar sonini ko'ramiz. Va maslahat shundaki, disklarning yarmini bir vaqtning o'zida bitta xostga qo'shish yaxshi emas, chunki bu ma'lumotlarning yo'qolishiga olib keladi.

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

Kichkintoylar uchun MinIo
Keyinchalik, MiniIO serverini boshqarish va sozlash uchun bizga agent kerak bo'ladi, siz uni yuklab olishingiz mumkin bir joyda rasmiy saytdan.

Manzil va kirish tugmachalarini har safar kiritganingizda barmoqlaringizni eskirmaslik uchun (va bu xavfsiz emas), mc taxallus to'plami formulasidan birinchi marta foydalanishni boshlaganingizda darhol taxallus yaratish qulay. [SIZNING-KIRISH-KALΔ°T] [SIZNING-SECRET-KALΔ°T]

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

Yoki darhol xostingizni qo'shishingiz mumkin:

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

Va keyin biz chiroyli jamoa bilan o'zgarmas chelak yaratamiz

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 nafaqat yakuniy xabarni, balki batafsil ma'lumotni ko'rish imkonini beradi. 

-l oβ€˜zgarmas degan ma’noni anglatuvchi -with-lock

Agar biz veb-interfeysga qaytsak, u erda bizning yangi chelakimiz paydo bo'ladi.

Kichkintoylar uchun MinIo
Hozircha hammasi shu. Biz xavfsiz saqlashni yaratdik va Veeam bilan integratsiyaga oβ€˜tishga tayyormiz.

Bundan tashqari, hamma narsa mukammal ishlayotganiga ishonch hosil qilishingiz mumkin:

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

MiniIO va Veeam

E'tibor bering! Agar biron bir aql bovar qilmaydigan sababga ko'ra HTTP orqali ishlashni istasangiz, HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication da DWORD kalitini yarating. SOBRArchiveS3DisableTLS. Uning qiymatini 1 ga qo'ying va esda tutingki, biz bunday xatti-harakatni qat'iyan ma'qullamaymiz va buni hech kimga tavsiya etmaymiz.

Yana diqqat! Agar ba'zi tushunmovchiliklar tufayli siz Windows 2008 R2 dan foydalanishda davom etsangiz, MiniIO-ni Veeam-ga ulashga urinib ko'rganingizda, katta ehtimol bilan siz quyidagi xatolikni olasiz: Amazon S3 so'nggi nuqtasiga ulanish o'rnatilmadi. Buni rasmiy yamoq bilan davolash mumkin Microsoft.

Xo'sh, tayyorgarlik tugallandi, keling, VBR interfeysini ochamiz va Zaxira infratuzilmasi yorlig'iga o'tamiz, u erda biz yangi ombor qo'shish uchun sehrgarni chaqiramiz.

Kichkintoylar uchun MinIo
Albatta, biz Ob'ektni saqlashga qiziqamiz, ya'ni S3 Compatible. Ochilgan sehrgarda nom o'rnating va manzil va hisob qaydnomasini ko'rsatuvchi bosqichlarni bajaring. Agar kerak bo'lsa, saqlash so'rovlari proksi orqali yuboriladigan eshikni ko'rsatishni unutmang.

Kichkintoylar uchun MinIo
Keyin chelakni, jildni tanlang va so'nggi zaxira nusxalarini o'zgarmas qilish katagiga belgi qo'ying. Yoki biz uni o'rnatmaymiz. Ammo biz ushbu funktsiyani qo'llab-quvvatlaydigan saqlash joyini yaratganimiz uchun uni ishlatmaslik gunoh bo'ladi.

Kichkintoylar uchun MinIo
Keyingi > Tugatish va natijadan zavqlaning.

Endi biz uni SOBR omboriga Imkoniyat darajasi sifatida qo'shishimiz kerak. Buning uchun biz yangisini yaratamiz yoki mavjudini tahrirlaymiz. Biz Capacity Tier bosqichiga qiziqamiz.

Kichkintoylar uchun MinIo
Bu erda biz qaysi stsenariy bilan ishlashimizni tanlashimiz kerak. Barcha variantlar boshqasida juda yaxshi tasvirlangan maqola, shuning uchun men o'zimni takrorlamayman

Va sehrgar tugagandan so'ng, zaxira nusxalarini nusxalash yoki o'tkazish vazifalari avtomatik ravishda ishga tushiriladi. Ammo agar sizning rejalaringiz barcha tizimlarga yukni darhol qo'yishni o'z ichiga olmasa, "Oyna" tugmachasida ishlash uchun maqbul intervallarni o'rnatganingizga ishonch hosil qiling.

Kichkintoylar uchun MinIo
Va, albatta, siz alohida Zaxira nusxalash vazifalarini bajarishingiz mumkin. Ba'zilar buni yanada qulayroq deb hisoblashadi, chunki ular tortishish poligonining ishlashi tafsilotlarini o'rganishni istamaydigan foydalanuvchi uchun biroz shaffofroq va bashorat qilish mumkin. Va u erda tafsilotlar etarli, shuning uchun men yuqoridagi havoladagi tegishli maqolani yana bir bor tavsiya qilaman.

Va nihoyat, xiyonatkor savolga javob: agar siz hali ham o'zgarmas xotiradan zaxira nusxasini o'chirishga harakat qilsangiz nima bo'ladi?

Mana javob:

Kichkintoylar uchun MinIo
Bugun uchun hammasi shu. Haqiqiy an'anaga ko'ra, mavzu bo'yicha foydali mavzular ro'yxatini oling:

Manba: www.habr.com

a Izoh qo'shish