Кішкентайларға арналған MinIo

MiniIO - объектіні сақтауды оңай және оңай ұйымдастыру қажет болғанда тамаша шешім. Бастапқы орнату, көптеген платформалар және жақсы өнімділік танымал махаббат саласында өз жұмысын жасады. Сондықтан бізде бір ай бұрын үйлесімділікті жариялаудан басқа амал қалмады Veeam Backup & Replication және MiniIO. Оның ішінде Өзгермейтін сияқты маңызды мүмкіндік. Шын мәнінде, MiniIO-да бір бүтін бар бөлім біздің интеграцияға арналған құжаттамада.

Сондықтан бүгін біз қалай сөйлесетін боламыз:

  • MiniIO орнату өте жылдам.
  • MiniIO орнату жылдамырақ, бірақ әлдеқайда жақсы.
  • Оны Veeam SOBR масштабталатын репозиторийі үшін мұрағат деңгейі ретінде пайдаланыңыз.

Кішкентайларға арналған MinIo

Сен не?

MiniIO-ны кездестірмегендер үшін қысқаша кіріспе. Бұл Amazon S3 API интерфейсімен үйлесімді ашық бастапқы нысан қоймасы. Apache v2 лицензиясы бойынша шығарылды және спартандық минимализм философиясын ұстанады.

Яғни, оның бақылау тақталары, графиктері және көптеген мәзірлері бар кең ауқымды графикалық интерфейсі жоқ. MiniIO серверін жай ғана бір пәрменмен іске қосады, мұнда S3 API толық қуатын пайдаланып деректерді жай ғана сақтауға болады. Бірақ бұл қарапайымдылық пайдаланылған ресурстарға қатысты алдамшы болуы мүмкін екенін атап өткен жөн. ЖЖҚ және процессор өте жақсы сіңіріледі, бірақ себептері төменде талқыланады. Айтпақшы, FreeNAS және TrueNAS сияқты комбайндар капот астында MiniIO пайдаланады.

Бұл кіріспе осында аяқталуы мүмкін.

MiniIO орнату өте жылдам

Оны орнату өте жылдам болғандықтан, біз оны Windows және Linux үшін қарастырамыз. Docker үшін де, Kubernetis үшін де, тіпті MacOS үшін де опциялар бар, бірақ мағынасы барлық жерде бірдей болады.

Сонымен, Windows жағдайында ресми веб-сайтқа өтіңіз https://min.io/download#/windows және соңғы нұсқасын жүктеп алыңыз. Мұнда біз бастау нұсқауларын да көреміз:

 minio.exe server F:Data

Сондай-ақ сәл толығырақ сілтеме бар Жылдам бастау нұсқаулығы. Нұсқауларға сенбеудің қажеті жоқ, сондықтан біз оны іске қосып, осындай жауап аламыз.

Кішкентайларға арналған MinIo
Бар болғаны! Жад жұмыс істеп тұр және онымен жұмыс істеуге болады. Мен MiniIO минималистік және жай ғана жұмыс істейді деп айтқанымда қалжыңдаған жоқпын. Іске қосу кезінде ұсынылған сілтемені орындасаңыз, онда қол жетімді максималды функциялар шелек жасау болып табылады. Ал сіз деректерді жазуды бастай аласыз.

Linux әуесқойлары үшін бәрі қарапайым болып қалады. Ең қарапайым нұсқаулар:


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, ал Linux жағдайында біз жай ғана 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 - дискілердің жалпы саны), яғни. деректеріңізді N/2 деректер дискілері мен N/2 паритет дискілері арасында бөледі. Адамдық терминдерге аудару: сіз дискілердің жартысын жоғалтып, деректерді қалпына келтіре аласыз. Бұл қатынас арқылы беріледі Сақтау класы, өзіңіз үшін не маңыздырақ екенін таңдауға мүмкіндік береді: сенімділік немесе сыйымдылық.

Нұсқаулық келесі мысалды береді: сізде 16 дискіде орнату бар және өлшемі 100 МБ файлды сақтау керек делік. Егер әдепкі параметрлер пайдаланылса (деректер үшін 8 диск, паритет блоктары үшін 8), онда файл ақырында дыбыс көлемін екі есе дерлік алады, яғни. 200 МБ. Егер дискінің қатынасы 10/6 болса, онда 160 МБ қажет болады. 14/2 - 114 МБ.

Рейдтерден тағы бір маңызды айырмашылығы: дискідегі ақаулар болған жағдайда, MiniIO бүкіл жүйені тоқтатпай бір-бірден қалпына келтіре отырып, объект деңгейінде жұмыс істейді. Кәдімгі рейд бүкіл көлемді қалпына келтіруге мәжбүр болады, бұл күтпеген уақытты алады. Автор екі дискі құлап кеткеннен кейін қайта есептеуге бір жарым апта кеткен диск сөресін есіне алады. Бұл өте жағымсыз болды.

Және, маңызды ескертпе: MiniIO мүмкіндігінше максималды жинақ өлшемін пайдалана отырып, Erasure Coding үшін барлық дискілерді 4-тен 16 дискке дейінгі жинақтарға бөледі. Ал болашақта ақпараттың бір элементі бір жиынтықта ғана сақталады.

Мұның бәрі өте керемет естіледі, бірақ орнату қаншалықты қиын болады? Қарап көрейік. Біз іске қосу пәрменін аламыз және жад жасалуы керек дискілерді жай ғана тізімдейміз. Егер бәрі дұрыс орындалса, есепте біз тартылған дискілердің санын көреміз. Және кеңес мынада, дискілердің жартысын бір хостқа бірден қосу жақсы емес, себебі бұл деректердің жоғалуына әкеледі.

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

Кішкентайларға арналған MinIo
Әрі қарай, MiniIO серверін басқару және конфигурациялау үшін бізге жүктеп алуға болатын агент қажет болады сол жерде ресми сайтынан.

Мекенжай мен кіру пернелерін терген сайын саусақтарыңызды тоздырмау үшін (және бұл қауіпсіз емес), mc бүркеншік ат жиыны формуласын алғаш рет пайдалана бастағанда бірден бүркеншік ат жасау ыңғайлы. [СІЗДІҢ-ҚҰПИЯ-КІЛТІ] [СІЗДІҢ-ҚҰПИЯ-КІЛТІ]

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 — құлыппен, өзгермейтін дегенді білдіреді

Енді веб-интерфейске оралсақ, онда біздің жаңа шелек пайда болады.

Кішкентайларға арналған 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 сақтық көшірме жасау және репликациясында DWORD кілтін жасаңыз. SOBRArchiveS3DisableTLS. Оның мәнін 1-ге қойыңыз және біз мұндай мінез-құлықты мүлдем құптамайтынымызды және оны ешкімге ұсынбайтынымызды есте сақтаңыз.

Тағы да назар аударыңыз! Егер қандай да бір түсінбеушілік салдарынан Windows 2008 R2 жүйесін пайдалануды жалғастырсаңыз, MiniIO-ны Veeam-ге қосуға әрекеттенгенде, сіз келесідей қатені алуыңыз мүмкін: Amazon S3 соңғы нүктесіне қосылым орнатылмады. Мұны ресми патчпен өңдеуге болады Microsoft.

Ал, дайындықтар аяқталды, VBR интерфейсін ашып, «Сақтық көшірме инфрақұрылымы» қойындысына өтейік, онда біз жаңа репозиторий қосу шеберін шақырамыз.

Кішкентайларға арналған MinIo
Әрине, бізді Object қоймасы, атап айтқанда S3 Compatible қызықтырады. Ашылатын шеберде атауды орнатыңыз және мекенжай мен тіркелгіні көрсететін қадамдарды орындаңыз. Қажет болса, қоймаға сұраулар проксиге жіберілетін қақпаны көрсетуді ұмытпаңыз.

Кішкентайларға арналған MinIo
Содан кейін шелекті, қалтаны таңдап, Соңғы сақтық көшірмелерді өзгермейтін ету құсбелгісін қойыңыз. Немесе біз оны орнатпаймыз. Бірақ біз бұл функцияны қолдайтын сақтау қоймасын жасағандықтан, оны пайдаланбау күнә болады.

Кішкентайларға арналған MinIo
Келесі > Аяқтаңыз және нәтижені пайдаланыңыз.

Енді біз оны SOBR репозиторийіне сыйымдылық деңгейі ретінде қосуымыз керек. Ол үшін жаңасын жасаймыз немесе барын өңдейміз. Бізді Capacity Tier қадамы қызықтырады.

Кішкентайларға арналған MinIo
Мұнда біз қандай сценариймен жұмыс істейтінімізді таңдауымыз керек. Барлық опциялар басқа нұсқада жақсы сипатталған мақала, сондықтан мен өзімді қайталамаймын

Шебер аяқталғаннан кейін сақтық көшірмелерді көшіру немесе тасымалдау тапсырмалары автоматты түрде іске қосылады. Бірақ егер сіздің жоспарларыңыз барлық жүйелерге жүктемені дереу қоюды қамтымаса, Терезе түймешігінде жұмыс істеу үшін қолайлы аралықтарды орнатуды ұмытпаңыз.

Кішкентайларға арналған MinIo
Және, әрине, бөлек сақтық көшірме тапсырмаларын орындауға болады. Кейбіреулер бұл әлдеқайда ыңғайлы деп санайды, өйткені олар ату полигонының жұмысының егжей-тегжейлерін білгісі келмейтін пайдаланушы үшін біршама мөлдір және болжамды. Мұнда егжей-тегжейлер жеткілікті, сондықтан мен жоғарыдағы сілтемедегі сәйкес мақаланы тағы бір рет ұсынамын.

Ақырында, қате сұраққа жауап: егер сіз әлі де өзгермейтін жадтан сақтық көшірмені жоюға тырыссаңыз не болады?

Міне, жауап:

Кішкентайларға арналған MinIo
Бүгінгі күннің бәрі осы. Нағыз дәстүр бойынша тақырып бойынша пайдалы тақырыптардың тізімін алыңыз:

Ақпарат көзі: www.habr.com

пікір қалдыру