Бяцхан хүүхдүүдэд зориулсан MinIo

MiniIO бол объектын хадгалалтыг хялбар бөгөөд энгийн зохион байгуулах шаардлагатай үед маш сайн шийдэл юм. Анхан шатны тохиргоо, олон платформ, сайн гүйцэтгэл нь алдартай хайрын талбарт үүргээ гүйцэтгэсэн. Тиймээс бид нэг сарын өмнө нийцтэй байдлыг зарлахаас өөр аргагүй болсон Veeam Backup & Replication болон MiniIO. Өөрчлөгдөх чадваргүй гэх мэт чухал шинж чанарыг багтаасан болно. Үнэн хэрэгтээ MiniIO-д бүхэл бүтэн байдаг хэсэг бидний интеграцид зориулагдсан баримт бичигт.

Тиймээс өнөөдөр бид хэрхэн яаж ярих болно:

  • MiniIO-г тохируулах нь маш хурдан юм.
  • MiniIO-г тохируулах нь арай бага хурдан боловч хамаагүй дээр юм.
  • Үүнийг Veeam SOBR Scalable Repository-ийн архивын давхарга болгон ашиглаарай.

Бяцхан хүүхдүүдэд зориулсан MinIo

Та юу вэ?

MiniIO-той таарч амжаагүй хүмүүст зориулсан товч танилцуулга. Энэ бол Amazon S3 API-д нийцэх нээлттэй эхийн объект хадгалах сан юм. Apache v2 лицензийн дагуу гарсан бөгөөд Спартаны минимализмын гүн ухааныг баримталдаг.

Өөрөөр хэлбэл, хяналтын самбар, график, олон тооны цэс бүхий өргөн хүрээтэй GUI байхгүй. MiniIO нь серверээ зөвхөн нэг тушаалаар ажиллуулдаг бөгөөд та S3 API-ийн бүрэн хүчийг ашиглан өгөгдлийг хадгалах боломжтой. Гэхдээ ашигласан нөөцийн хувьд энэ энгийн байдал нь хууран мэхлэх боломжтой гэдгийг тэмдэглэх нь зүйтэй. RAM болон CPU нь төгс шингэсэн боловч шалтгааныг доор авч үзэх болно. Дашрамд хэлэхэд, FreeNAS ба TrueNAS зэрэг хослолууд нь бүрээсний доор MiniIO ашигладаг.

Энэ танилцуулгыг энд дуусгаж болно.

MiniIO-г тохируулах нь маш хурдан юм

Үүнийг тохируулах нь маш хурдан тул бид үүнийг Windows болон Линукс дээр авч үзэх болно. Docker, Kubernetis, тэр ч байтугай MacOS-д зориулсан сонголтууд байдаг, гэхдээ утга нь хаа сайгүй ижил байх болно.

Тиймээс, Windows-ийн хувьд албан ёсны вэбсайт руу очно уу https://min.io/download#/windows болон хамгийн сүүлийн хувилбарыг татаж авах. Тэнд бид бас эхлэх зааврыг харж байна:

 minio.exe server F:Data

Мөн арай илүү дэлгэрэнгүй нэг холбоос байдаг Түргэн эхлэх гарын авлага. Зааварт итгэхгүй байх нь утгагүй тул бид үүнийг ажиллуулж, иймэрхүү хариултыг авдаг.

Бяцхан хүүхдүүдэд зориулсан MinIo
Тэгээд л болоо! Хадгалалт ажиллаж байгаа бөгөөд та түүнтэй ажиллаж эхлэх боломжтой. МинИО бол минималист, зүгээр л ажилладаг гэж хэлэхэд би тоглоогүй. Хэрэв та эхлүүлэх үед санал болгож буй холбоосыг дагавал тэнд байгаа хамгийн дээд функцууд нь хувин үүсгэх явдал юм. Мөн та өгөгдөл бичиж эхлэх боломжтой.

Линуксыг хайрлагчдын хувьд бүх зүйл энгийн хэвээр байна. Хамгийн энгийн заавар:


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

Үр дүн нь өмнөхөөсөө ялгагдахгүй байх болно. 

MiniIO-г тохируулах нь арай илүү утга учиртай юм

Бидний ойлгож байгаагаар өмнөх догол мөр нь туршилтын зорилгоор эрхлүүлэх явдал юм. Үнэнийг хэлэхэд бид MiniIO-г туршилтанд маш өргөн ашигладаг бөгөөд үүнийг хүлээн зөвшөөрөхөөс огт ичдэггүй. Мэдээжийн хэрэг, энэ нь ажилладаг, гэхдээ туршилтын вандан сандлаас хэтэрсэн үүнийг тэвчих нь ичмээр юм. Тиймээс бид гартаа файл авч, түүнийг санаанд оруулж эхэлдэг.

HTTPS

Үйлдвэрлэлийн зам дахь хамгийн эхний алхам бол шифрлэлт юм. MiniIO-д гэрчилгээ нэмэх нэг сая, мянган гарын авлага сүлжээнд аль хэдийн байгаа боловч тэдний ерөнхий төлөвлөгөө нь дараах байдалтай байна.

  • Сертификат үүсгэх
  • Windows-ийн хувьд C:Users%User%.miniocerts-д оруулаарай
  • ${HOME}/.minio/certs дээрх Linux-д зориулсан 
  • Серверийг дахин эхлүүлж байна

Let's Encrypt нь уйтгартай бөгөөд хаа сайгүй дүрслэгдсэн байдаг тул бидний зам бол самурайн зам тул Windows-ийн хувьд бид татаж авдаг. Cygwin, мөн Линуксийн хувьд бид зүгээр л openssl суулгасан эсэхийг шалгадаг. Мөн бид бага зэрэг консолын ид шид хийдэг:

  • Түлхүүр үүсгэх: openssl ecparam -genkey -name prime256v1 | openssl ec -out private.key
  • Бид түлхүүрийг ашиглан гэрчилгээ үүсгэдэг: openssl req -new -x509 -days 3650 -key private.key -out public.crt
  • private.key болон public.crt-г дээр дурдсан хавтас руу хуулна уу
  • MiniIO-г дахин эхлүүлнэ үү

Хэрэв бүх зүйл зохих ёсоор болсон бол статус дээр үүнтэй төстэй зүйл гарч ирнэ.

Бяцхан хүүхдүүдэд зориулсан MinIo

MiniIO устгах кодчилолыг идэвхжүүлнэ үү

Эхлээд энэ сэдвийн талаар хэдэн үг хэлье. Товчхондоо: энэ нь өгөгдлийг гэмтэх, алдахаас хамгаалах програм хангамж юм. Дайралт шиг, зөвхөн илүү найдвартай. Хэрэв сонгодог RAID6 нь хоёр дискээ алдах боломжтой бол MiniIO нь хагасыг нь алдахад хялбархан даван туулж чадна. Технологийн талаар илүү дэлгэрэнгүй тайлбарласан болно албан ёсны хөтөч. Гэхдээ хэрэв бид мөн чанарыг нь авч үзвэл энэ нь Рид-Соломон кодын хэрэгжилт юм: бүх мэдээлэл нь паритын блок бүхий өгөгдлийн блок хэлбэрээр хадгалагддаг. Энэ бүгдийг аль хэдийн олон удаа хийсэн юм шиг санагдаж байна, гэхдээ нэг чухал "гэхдээ" байдаг: бид хадгалагдсан объектуудын өгөгдлийн блокуудын паритет блокуудын харьцааг тодорхой зааж өгч болно.
Та 1:1 хүсч байна уу? Гуйя!
Та 5:2 хүсч байна уу? Асуудалгүй!

Хэрэв та хэд хэдэн цэгийг нэгэн зэрэг ашиглаж, мэдээллийн аюулгүй байдал болон зарцуулсан нөөцийн хооронд өөрийн тэнцвэрийг олохыг хүсч байвал маш чухал онцлог юм. Хайрцагнаас MiniIO нь N / 2 томъёог ашигладаг (энэ нь N нь нийт дискний тоо), i.e. Таны өгөгдлийг N/2 өгөгдлийн диск болон N/2 парит диск хооронд хуваана. Хүний хэллэгээр орчуулбал: та дискний хагасыг алдаж, өгөгдлийг сэргээх боломжтой. Энэ харилцааг дамжуулан өгдөг Хадгалах анги, найдвартай байдал эсвэл чадавхи гэсэн аль нь илүү чухал болохыг өөрөө сонгох боломжийг танд олгоно.

Энэхүү гарын авлагад дараах жишээг өгсөн болно: Та 16 диск дээр суулгасан бөгөөд 100 МБ хэмжээтэй файлыг хадгалах хэрэгтэй гэж бодъё. Хэрэв өгөгдмөл тохиргоог ашигласан бол (өгөгдлийн хувьд 8 диск, паритын блокуудын хувьд 8), дараа нь файл нь бараг хоёр дахин эзлэхүүнийг эзлэх болно, жишээлбэл. 200 MB. Хэрэв дискний харьцаа 10/6 бол 160 МБ шаардлагатай болно. 14/2 - 114 MB.

Дайралтаас өөр нэг чухал ялгаа нь: дискний эвдрэл гарсан тохиолдолд MiniIO нь бүхэл бүтэн системийг зогсоохгүйгээр нэг нэгээр нь сэргээж, объектын түвшинд ажиллах болно. Тогтмол довтолгооны үеэр дууны хэмжээг бүхэлд нь сэргээх шаардлагатай бөгөөд энэ нь урьдчилан таамаглах аргагүй их цаг хугацаа шаардагдах болно. Зохиогч хоёр диск унасны дараа дахин тооцоолоход долоо хоног хагасын хугацаа зарцуулсан дискний тавиурыг санаж байна. Энэ нь нэлээд тааламжгүй байсан.

Мөн чухал тэмдэглэл: MiniIO нь устгах кодчилолд зориулсан бүх дискийг 4-ээс 16 хүртэлх дискэнд хуваадаг бөгөөд хамгийн дээд хэмжээг ашиглан багцалсан. Ирээдүйд мэдээллийн нэг элемент нь зөвхөн нэг багц дотор хадгалагдах болно.

Энэ бүхэн маш сайхан сонсогдож байгаа ч үүнийг тохируулах нь хэр хэцүү байх вэ? Ингээд харцгаая. Бид ажиллуулах командыг авч, хадгалах санг үүсгэх шаардлагатай дискүүдийг жагсааж бичнэ үү. Хэрэв бүх зүйл зөв хийгдсэн бол тайланд бид оролцсон дискний тоог харах болно. Зөвлөмж бол дискний хагасыг нэг хост руу нэг дор нэмэх нь тийм ч сайн биш, учир нь энэ нь өгөгдөл алдагдах болно.

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

Бяцхан хүүхдүүдэд зориулсан MinIo
Дараа нь, MiniIO серверийг удирдах, тохируулахын тулд та татаж авах боломжтой агент хэрэгтэй болно Тэнд албан ёсны сайтаас.

Хаяг болон хандалтын товчлууруудыг бичих болгонд хуруугаа элэгдүүлэхгүйн тулд (энэ нь аюулгүй биш) mc alias set томъёог анх ашиглаж эхлэхэд шууд өөр нэр үүсгэхэд тохиромжтой. [ТАНЫ-ХАНДАХ-ТҮЛХҮҮР] [ТАНЫ НУУЦ-ТҮЛХҮҮР]

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

Эсвэл та шууд хостоо нэмж болно:

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

Тэгээд сайхан хамт олонтойгоо хувиршгүй хувин бүтээнэ

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

--дибаг хийх Энэ нь зөвхөн эцсийн мессеж төдийгүй илүү дэлгэрэнгүй мэдээллийг харах боломжийг танд олгоно. 

-l гэсэн үг -with-lock, энэ нь хувиршгүй гэсэн үг

Хэрэв бид одоо вэб интерфэйс рүү буцах юм бол бидний шинэ хувин тэнд гарч ирнэ.

Бяцхан хүүхдүүдэд зориулсан MinIo
Одоохондоо ийм л байна. Бид аюулгүй хадгалах санг бий болгосон бөгөөд Veeam-тай нэгдэхэд бэлэн байна.

Та мөн бүх зүйл төгс ажиллаж байгаа эсэхийг шалгаж болно:

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 болон Veeam

Анхаар Хэрэв та ямар нэг гайхалтай шалтгааны улмаас HTTP-ээр ажиллахыг хүсч байвал HKEY_LOCAL_MACHINESOFTWAREVeeamVeeam Backup and Replication дээр DWORD түлхүүр үүсгэнэ үү. SOBRArchiveS3DisableTLS. Үүний утгыг 1 болгож, бид ийм зан үйлийг эрс зөвшөөрөхгүй бөгөөд үүнийг хэнд ч зөвлөхгүй гэдгийг санаарай.

Дахин анхаарлаа хандуулаарай! Хэрэв та зарим нэг үл ойлголцлын улмаас Windows 2008 R2-г үргэлжлүүлэн ашиглавал MinIO-г Veeam-д холбох гэж оролдох үед танд дараах алдаа гарах магадлалтай: Amazon S3 төгсгөлийн цэгтэй холбогдож чадсангүй. Үүнийг албан ёсны нөхөөсөөр эмчилж болно Microsoft-.

За, бэлтгэл ажил дууслаа, VBR интерфэйсийг нээж, Нөөцлөх дэд бүтцийн таб руу орцгооё, бид шинэ репозитор нэмэх шидтэнг дуудах болно.

Бяцхан хүүхдүүдэд зориулсан MinIo
Мэдээжийн хэрэг, бид Object storage, тухайлбал S3 Compatible-г сонирхож байна. Нээгдсэн шидтэн дээр нэрээ тохируулаад хаяг, дансыг зааж өгөх алхмуудыг дагана уу. Шаардлагатай бол хадгалалтын хүсэлтийг проксигаар дамжуулах хаалгыг зааж өгөхөө бүү мартаарай.

Бяцхан хүүхдүүдэд зориулсан MinIo
Дараа нь хувин, фолдерыг сонгоод "Сүүлийн үеийн нөөцлөлтүүдийг өөрчлөх боломжгүй болгох" хайрцгийг чагтална уу. Эсвэл бид үүнийг суулгадаггүй. Гэхдээ бид энэ функцийг дэмждэг агуулах хийсэн тул үүнийг ашиглахгүй байх нь гэм буруутай болно.

Бяцхан хүүхдүүдэд зориулсан MinIo
Дараа нь > Дуусгаж үр дүнг нь таашаал аваарай.

Одоо бид үүнийг SOBR репозиторыг чадавхийн түвшин болгон нэмэх хэрэгтэй. Үүнийг хийхийн тулд бид шинээр үүсгэх эсвэл байгаа нэгийг нь засах хэрэгтэй. Бид Capacity Tier алхамыг сонирхож байна.

Бяцхан хүүхдүүдэд зориулсан MinIo
Энд бид ямар хувилбараар ажиллахаа сонгох хэрэгтэй. Бүх сонголтыг өөр зүйлд маш сайн тайлбарласан болно нийтлэл, тиймээс би өөрийгөө давтахгүй

Шидтэний ажил дууссаны дараа нөөцлөлтийг хуулах, шилжүүлэх ажлыг автоматаар эхлүүлэх болно. Гэхдээ хэрэв таны төлөвлөгөөнд бүх системд ачааллыг нэн даруй оруулахгүй бол Цонхны товчлуур дээр ажиллах зөвшөөрөгдөх интервалыг тохируулахаа мартуузай.

Бяцхан хүүхдүүдэд зориулсан MinIo
Мэдээжийн хэрэг та Нөөц хуулбарлах ажлыг тусад нь хийж болно. Буудлагын талбайн үйл ажиллагааны нарийн ширийнийг судлахыг хүсдэггүй хэрэглэгчдэд илүү ил тод, урьдчилан таамаглах боломжтой тул энэ нь илүү тохиромжтой гэж зарим хүмүүс үзэж байна. Тэнд хангалттай дэлгэрэнгүй мэдээлэл байгаа тул дээрх холбоос дээрх холбогдох нийтлэлийг дахин санал болгож байна.

Эцэст нь, урвасан асуултын хариулт: Хэрэв та хувиршгүй хадгалах сангаас нөөцлөлтийг устгахыг оролдвол юу болох вэ?

Энд хариулт байна:

Бяцхан хүүхдүүдэд зориулсан MinIo
Өнөөдрийн хувьд энэ л байна. Жинхэнэ уламжлал ёсоор энэ сэдвээр хэрэгтэй сэдвүүдийн жагсаалтыг аваарай:

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх