V tomto tutoriáli budeme inštalovať a demonštrovať použitie Minio na Ubuntu 18.04 server LTS. Tento VPS má statickú IP a ja budem nastavovať DNS záznamy a TLS pripojenia, aby bol tento Object store čo najbezpečnejší a pripravený na produkciu.
Predpoklady
Tu sú predpoklady, ktoré by ste potrebovali, ak chcete nasledovať:
- VPS so systémom Ubuntu alebo iným distribučným systémom Linux so statickou IP (IP_ADDRESS bude náš zástupný symbol, nahraďte ho skutočnou IP adresou vášho VPS)
- Plne kvalifikovaný názov domény [FQDN]. príklad.com bude náš zástupný symbol.
Inštalácia a rôzne nastavenia
Prihlásme sa do nášho VPS a pripravme veci na správne fungovanie Minia.
1. Nastavenie DNS
Prejdite na nameserver, kde sú vedené záznamy DNS vašej domény, s najväčšou pravdepodobnosťou ich nájdete na webových stránkach registrátora domény. Pridajte záznam A a nasmerujte na požadovaný FQDN (napríklad minio.príklad.com) na vašu VPS 'IP_ADDRESS.
2. Minio užívateľ
Pred inštaláciou programu Minio vytvorme nové používateľské konto pre UNIX, pod ktorým bude program mini fungovať. Nechceme to spúšťať ako root alebo ako bežný používateľ, ktorý môže mať prístup sudo alebo pod ním bežať iné aplikácie. Vytvoríme si systémový účet mini s menom mini-užívateľ:
$ sudo useradd --systém mini-užívateľ --shell / sbin / nologin3. Minio stiahnutie
Ďalej stiahneme minio binárku (je napísaná v Go, ktorá sa kompiluje do malého ľahkého binárneho súboru).
Získajte binárne súbory
$ curl -O https: // dl.minio.io / server / minio / vydanie / linux-amd64 / minioPresuňte binárny súbor na miesto, kde sa zvyčajne nachádzajú binárne súbory:
$ sudo mv minio / usr / local / binVykonajte vykonanie binárneho súboru a dajte používateľovi mini-používateľa a zoskupte jeho vlastníctvo:
$ sudo chmod + x / usr / local / bin / minio$ sudo chown minio-užívateľ: minio-užívateľ / usr / local / bin / minio
4. / etc konfiguračné súbory, spúšťacie skripty a úložné zariadenie
Potrebujeme, aby sa Mini spustilo s reštartom systému a OS nás rozpoznal ako spustenú službu. Ak by to neurobili, viedlo by to ku katastrofám, napríklad keď zabijak OOM vidí tento proces a rozhodne sa, že nie je dostatočne užitočný. Potrebovali by sme tiež adresár, do ktorého sa budú ukladať skutočné údaje nášho úložiska objektov:
$ sudo mkdir / usr / local / share / minio$ sudo mkdir / etc / minio
Uistite sa, že minio má úplnú kontrolu nad týmito adresármi:
$ sudo chown minio-užívateľ: minio-užívateľ / usr / local / share / minio$ sudo chown minio-užívateľ: minio-užívateľ / etc / minio
Vo vnútri adresára / etc / default musíme vytvoriť súbor minio, aby sme určili premenné prostredia, ako je číslo portu, na ktorom budeme počúvať, a adresár, kam by sa mali ukladať údaje (zväzok). Zväzok sme vytvorili skôr, čo bol adresár / usr / local / share / minio. Takže pomocou svojho obľúbeného textového editora vytvorte súbor / etc / default / minio a pridajte do nej nasledujúci obsah:
MINIO_VOLUMES = "/ usr / local / share / minio /"MINIO_OPTS = "- C / etc / minio --adresa minio.príklad.com: 443 "
Uistite sa, že namiesto doslovného reťazca minio napíšete skutočne označené FDQN vášho VPS.príklad.com vyššie. Číslo portu 9000 obvykle používajú v dokumentácii, ale použijeme správnu inštaláciu TLS, ktorá bude počúvať na porte 443. Pretože sa jedná o číslo portu menšie ako 1024, musíme OS výslovne povedať, že je v poriadku, aby minio počúvalo na týchto portoch:
$ sudo setcap 'cap_net_bind_service = + ep' / usr / local / bin / minioNakoniec musíme nakonfigurovať minio služby. Našťastie skript, ktorý to robí, je k dispozícii v ich repozitári GitHub a my ho umiestnime na príslušné miesto:
$ curl -O https: // raw.githubusercontent.com / minio / minio-service / master / linux-systemd /minio.služby
$ sudo mv minio.služba / etc / systemd / system
Znova načítajte všetky systemd jednotky a povoľte minio spustiť pri štarte
$ sudo systemctl daemon-reload$ sudo systemctl povoliť minio
Na záver sa uistite, či váš firewall umožňuje komunikáciu na porte 443.
Umožňuje šifrovanie certifikátov TLS pomocou nástroja Certbot
Musíme vyjednať certifikáty TLS medzi našim serverom Minio a LetsEncrypt. Certbot je klient, ktorý to robí za nás a tiež automatizuje obnovenie certifikátu. Najprv si nainštalujeme Certbot:
$ sudo apt aktualizácia$ sudo apt-get nainštalovať softvér-vlastnosti-bežné
$ sudo add-apt-repository ppa: certbot / certbot
$ sudo apt-get aktualizácia
$ sudo apt-get nainštalovať certbot
Potom nainštalujte certifikáty, ako to dokumentuje dokument Minio Docs:
$ sudo certbot certonly --standalone -d minio.príklad.com --staple-ocsp -mpoužívateľské meno @ e-mail.com - dohodnite sa
Tu zadáte FQDN pre server Minio za príznakom -d a svoju e-mailovú adresu za príznakom -m. E-mailová adresa je dôležitá, pretože umožňuje aplikácii LetsEncrypt upozorňovať vás na čakajúce obnovenia.
Vaše e-maily budú teraz na adrese / etc / letsencrypt / live / minio.príklad.com. Posledný názov adresára by samozrejme závisel od vami zvoleného FQDN. Teraz skopírujte certifikáty do adresára / etc / minio spoločnosti Minio a poskytnite im povolenie na prístup k nim.
$ 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.kľúč
$ chown mini-užívateľ: mini-užívateľ / etc / minio / certs / public.crt
$ chown mini užívateľ: mini užívateľ / etc / minio / certs / private.kľúč
Teraz ste pripravení službu využiť:
$ sudo služba minio štartStav minio služby $ sudo
Výkon:
- minio.služba - Minio
Aktívne: aktívne (v prevádzke) od ut 2018-10-09 11:54:41 PDT; Pred 5 s
Dokumenty: https: // dokumenty.minio.io
Proces: 15874 ExecStartPre = / bin / bash -c [-n "$ MINIO_VOLUMES"] && echo "premenná
MINIO_VOLUMES nie je nastavené v / etc / default / minio "(kód = ukončený, stav = 0 / ÚSPECH)
Hlavné PID: 15877 (minio)
Úlohy: 13 (limit: 4915)
CGroup: / system.plátok / minio.služby
└─15877 / usr / local / bin / minio server -C / etc / minio --adresa minio.príklad.com: 443 / usr /
miestne / zdieľať / minio /
09. októbra 11:54:41 názov hostiteľa mini [15877]: Prístup prehliadača:
9. októbra 11:54:41 názov hostiteľa minio [15877]: https: // minio.príklad.com
9. októbra 11:54:41 názov hostiteľa mini [15877]: Prístup z príkazového riadku: https: // docs.minio.io / dokumenty /
mini-klient-rýchly štart-sprievodca
09.10. 11:54:41 hostname minio [15877]: $ mc config host pridať myminio
https: // minio.príklad.com
PAMH22LU3YJIFLU82H2E IKJ + qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg
…
Výstup tohto príkazu bude obsahovať prístupový kľúč (PAMH22LU3YJIFLU82H2E) a tajný kľúč (IKJ + qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg) pre mini, ako je to znázornené tučným písmom vyššie. Vaše kľúče by boli odlišné, takže nekopírujte tie, ktoré sú tu uvedené.
Pomocou aplikácie Minio
Otvorte prehliadač a navštívte stránku https: // minio.príklad.com (nezabudnite použiť FQDN, ktorý ste pridelili) a na prvé prihlásenie použite prístupový a tajný kľúč uvedený v príkaze o stave služby mini.
A privíta vás používateľské rozhranie Minio.
Tu môžete použiť znamienko plus v ľavom dolnom rohu na nahranie súborov alebo vytvorenie nového segmentu. Vytvoril som nové vedro s názvom mybucket.
Môžete upraviť jeho pravidlá tak, aby mohli čítať a písať, a potom do tohto segmentu nahrať niekoľko súborov (napríklad obrázkov). Minio vytvorí pre každý objekt v segmente jedinečnú adresu URL. Na adrese URL jednotlivých objektov môžete nastaviť pravidlá čítania a zápisu na jednotlivé segmenty, ako aj dátum vypršania platnosti.
Záver
To sú základy toho, ako začnete s obchodom s objektmi. Samotné objekty v ideálnom prípade nie sú určené na to, aby boli upravované, iba čítané z alebo pridávané do vedier. Môžete to integrovať do svojej aplikácie podľa oficiálnej dokumentácie. Podporuje širokú škálu programovacích jazykov od Go, Python, JavaScript až po .NET.