Šajā apmācībā mēs instalēsim un demonstrēsim Minio izmantošanu Ubuntu 18.04 LTS serveris. Šim VPS ir statisks IP, un es iestatīšu DNS ierakstus un TLS savienojumus, lai padarītu šo objektu veikalu pēc iespējas drošāku un pēc iespējas gatavāku ražošanai.
Priekšnoteikumi
Šie ir priekšnoteikumi, kas jums būtu nepieciešami, ja vēlaties sekot līdzi:
- VPS, kurā darbojas Ubuntu vai jebkura cita Linux izplatīšana ar statisku IP (IP_ADDRESS būs mūsu vietturis, aizstājiet to ar jūsu VPS faktisko IP adresi)
- Pilnībā kvalificēts domēna vārds [FQDN]. piemērs.com būs mūsu vietturis.
Uzstādīšana un dažādi iestatījumi
Piesakīsimies savā VPS un sagatavosim lietas, lai Minio darbotos pareizi.
1. DNS iestatīšana
Dodieties uz vārdu serveri, kur tiek uzturēti jūsu domēna DNS ieraksti, visticamāk, tas ir atrodams jūsu domēna reģistrētāja vietnē. Pievienojiet A ierakstu, norādot izvēlēto FQDN (piemēram, minio.piemērs.com) uz jūsu VPS IP_ADDRESS.
2. Minio lietotājs
Pirms instalējam Minio, izveidosim jaunu UNIX lietotāja kontu, ar kuru darbosies minio. Mēs nevēlamies palaist to kā root vai kā parastu lietotāju, kuram, iespējams, ir sudo piekļuve vai citas programmas, kas darbojas zem tā. Mēs izveidojam minio sistēmas kontu ar nosaukumu minio-user:
$ sudo useradd --sistēmas minilietotājs - shell / sbin / nologin3. Minio Lejupielādēt
Pēc tam mēs lejupielādējam mini bināro (tas ir rakstīts Go, kas apkopo nelielu vieglu bināru).
Iegūstiet bināro
$ čokurošanās -O https: // dl.minio.io / serveris / minio / atbrīvošana / linux-amd64 / minioPārvietojiet bināro failu uz vietu, kur parasti ir paredzams bināro failu izvietojums:
$ sudo mv minio / usr / local / binPadariet bināro failu izpildāmu un piešķiriet minilietotāja lietotājam un grupējiet tā īpašumtiesības:
$ sudo chmod + x / usr / local / bin / minio$ sudo chown minio-user: minio-lietotājs / usr / local / bin / minio
4. / etc konfigurācijas faili, startēšanas skripti un atmiņas ierīce
Mums ir nepieciešams, lai Minio sāktu ar sistēmas atsāknēšanu un OS tiktu atzīts par darbojošos pakalpojumu. Ja tas netiks darīts, tas izraisīs katastrofas, piemēram, kad OOM slepkava redz šo procesu un nolemj, ka tas nav pietiekami noderīgs. Mums būtu nepieciešams arī katalogs, kurā tiks saglabāti mūsu objektu krātuves faktiskie dati:
$ sudo mkdir / usr / local / share / minio$ sudo mkdir / etc / minio
Pārliecinieties, ka minio pilnībā kontrolē šos direktorijus:
$ sudo chown minio-user: minio-lietotājs / usr / local / share / minio$ sudo chown minio-user: minio-lietotājs / etc / minio
Direktorijā / etc / default mums ir jāizveido mini fails, lai norādītu vides mainīgos, piemēram, porta numuru, kurā klausīsimies, un direktoriju, kurā dati jāsaglabā (sējums). Mēs iepriekš izveidojām sējumu, kas bija katalogs / usr / local / share / minio. Tāpēc izmantojiet savu iecienīto teksta redaktoru, lai izveidotu failu / etc / default / minio un tajā pievienojiet šādu saturu:
MINIO_VOLUMES = "/ usr / local / share / minio /"MINIO_OPTS = "- C / etc / minio - adrese minio.piemērs.com: 443 "
Pārliecinieties, ka burtiskās virknes minio vietā rakstāt VPS faktisko norādīto FDQN.piemērs.com iepriekš. Portu 9000 viņi parasti izmanto dokumentācijā, taču mēs izmantosim pareizu TLS instalāciju, klausoties 443. portā. Tā kā tas ir porta numurs, kas mazāks par 1024, mums ir skaidri jāpasaka OS, ka minio ir labi klausīties šajās ostās:
$ sudo setcap 'cap_net_bind_service = + ep' / usr / local / bin / minioVisbeidzot, mums ir jākonfigurē minio apkalpošana. Par laimi skripts, kas to dara, ir pieejams viņu GitHub repo, un mēs to ievietosim attiecīgajā vietā:
$ čokurošanās -O https: // neapstrādāta.githubusercontent.com / minio / minio-service / master / linux-systemd /minio.apkalpošana
$ sudo mv minio.pakalpojums / etc / systemd / system
Pārlādējiet visas sistēmas vienības un iespējojiet minio palaišanu sāknēšanas laikā
$ sudo systemctl daemon-reload$ sudo systemctl iespējot minio
Visbeidzot, pārliecinieties, vai ugunsmūris ļauj sazināties 443. portā.
LetsEncrypt TLS sertifikātus, izmantojot Certbot
Mums ir jāpārrunā TLS sertifikāti starp mūsu Minio serveri un LetsEncrypt. Certbot ir klients, kas to dara mūsu vietā, kā arī automatizē sertifikātu atjaunošanu. Vispirms instalēsim Certbot:
$ sudo apt atjauninājums$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa: certbot / certbot
$ sudo apt-get atjauninājums
$ sudo apt-get install certbot
Pēc tam instalējiet sertifikātus, kā dokumentējis Minio Docs:
$ sudo certbot certonly - standalone -d minio.piemērs.com --staple-ocsp -mlietotājvārds @ e-pasts.com - piekrītu
Šeit jūs ievadāt savu FQDN Minio serverim pēc karodziņa -d un e-pasta adresi aiz karodziņa -m. E-pasta adrese ir svarīga, jo tā ļauj LetsEncrypt jums paziņot par gaidāmajiem atjaunojumiem.
Jūsu e-pasta ziņojumi tagad būs pieejami vietnē / etc / letsencrypt / live / minio.piemērs.com. Protams, pēdējais direktorijas nosaukums būtu atkarīgs no jūsu izvēlētā FQDN. Tagad kopējiet sertifikātus Minio direktorijā / etc / minio un dodiet tai atļauju tiem piekļūt.
$ cp / etc / letsencrypt / live / minio.ranvirslog.com / fullchain.pem / etc / minio / certs / public.crt$ cp / etc / letsencrypt / live / minio.ranvirslog.com / privkey.pem / etc / minio / certs / private.taustiņu
$ chown minio-user: minilietotājs / etc / minio / certs / public.crt
$ chown minio-user: minio-lietotājs / etc / minio / certs / private.taustiņu
Tagad jūs esat gatavs izmantot pakalpojumu:
$ sudo servisa minio sākums$ sudo pakalpojuma minio statuss
Izeja:
- minio.serviss - Minio
Aktīvs: aktīvs (darbojas) kopš otrdienas 2018-10-09 11:54:41 PDT; Pirms 5s
Dokumenti: https: // docs.minio.io
Process: 15874 ExecStartPre = / bin / bash -c [-n "$ MINIO_VOLUMES"] && echo "Mainīgais
MINIO_VOLUMES nav iestatīts mapē / etc / default / minio "(kods = aizvērts, statuss = 0 / VEIKSME)
Galvenais PID: 15877 (minio)
Uzdevumi: 13 (ierobežojums: 4915)
C grupa: / sistēma.šķēle / minio.apkalpošana
└─15877 / usr / local / bin / minio serveris -C / etc / minio - adrese minio.piemērs.com: 443 / usr /
vietējais / share / minio /
9. oktobris 11:54:41 resursdatora nosaukums minio [15877]: Piekļuve pārlūkam:
9. oktobris 11:54:41 resursdatora nosaukums minio [15877]: https: // minio.piemērs.com
9. oktobris 11:54:41 resursdatora nosaukums minio [15877]: Piekļuve komandrindai: https: // docs.minio.io / docs /
minioklients-ātrais sākums-ceļvedis
9. oktobris 11:54:41 resursdatora nosaukums minio [15877]: $ mc config resursdators pievieno myminio
https: // minio.piemērs.com
PAMH22LU3YJIFLU82H2E IKJ + qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg
…
Šīs komandas izvadā būs piekļuves atslēga (PAMH22LU3YJIFLU82H2E) un slepeno atslēgu (IKJ + qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg) minio, kā parādīts trekniem burtiem iepriekš. Jūsu atslēgas būtu atšķirīgas, tāpēc nekopējiet šeit minētās atslēgas.
Izmantojot Minio
Atveriet pārlūkprogrammu un apmeklējiet vietni https: // minio.piemērs.com (pārliecinieties, ka izmantojat piešķirto FQDN) un, lai pirmo reizi pieteiktos, izmantojiet piekļuves un slepeno atslēgu, kas norādīta pakalpojuma minio statusa komandā.
Un jūs sagaidīs Minio lietotāja interfeiss.
Šeit varat izmantot plus zīmi kreisajā apakšējā stūrī, lai augšupielādētu failus vai izveidotu jaunu spaini. Es izveidoju jaunu spaini ar nosaukumu mybucket.
Varat rediģēt tās politiku, lai lasītu un rakstītu, un pēc tam augšup augšupielādējiet dažus failus (teiksim attēlus). Minio katram spainī esošajam objektam izveidos unikālu URL. Atsevišķa objekta vietrādī URL var iestatīt gan lasīšanas un rakstīšanas politikas, gan derīguma termiņu.
Secinājums
Tas ir pamats tam, kā jūs sākat darbu ar objektu veikalu. Paši objekti ideāli nav domāti modificēšanai, tikai nolasot tos vai pievienojot tos spaiņos. To var integrēt savā lietojumprogrammā, ievērojot oficiālo dokumentāciju. Tas atbalsta plašu programmēšanas valodu klāstu, sākot no Go, Python, JavaScript līdz .TĪKLS.