Ubuntu

Instalirajte Minio na Ubuntu 18.04 LTS

Instalirajte Minio na Ubuntu 18.04 LTS
Minio je samostalno rješenje za stvaranje vlastite pohrane objekata. Alternativa je za AWS S3 ako ste tu uslugu koristili ranije. Sam softver Minio isporučuje se kao obična binarna datoteka, pa čak i službena dokumentacija sugerira da ga upotrebljavate na taj način, umjesto da koristite upravitelj paketa. Postoje, naravno, Dockerove slike ako ih želite koristiti za pokretanje minioa na vašem VPS-u.

U ovom ćemo uputstvu instalirati i demonstrirati upotrebu Minio-a na Ubuntu 18.04 LTS poslužitelj. Ovaj VPS ima statičku IP adresu, a ja ću postaviti DNS zapise i TLS veze kako bi ovo Object spremište bilo što sigurnije i produkcija spremna što je više moguće.

Preduvjeti

Evo preduvjeta koji bi vam trebali ako želite slijediti:

  1. VPS koji pokreće Ubuntu ili bilo koji drugi distributer Linuxa sa statičnom IP adresom (IP_ADDRESS će biti naše rezervirano mjesto, zamijenite ga stvarnom IP adresom vašeg VPS-a)
  2. Potpuno kvalificirano ime domene [FQDN]. primjer.com će biti naše rezervirano mjesto.

Instalacija i razno postavljanje

Prijavite se na naš VPS i pripremimo stvari za Minio da pravilno radi.

1.  Postavljanje DNS-a

Idite na poslužitelj imena na kojem se vode DNS zapisi vaše domene, najvjerojatnije se to nalazi na web mjestu registra vaše domene. Dodajte zapis A, usmjeravajući odabrani FQDN (na primjer minio.primjer.com) na IP_ADRESU vašeg VPS-a.

2.  Korisnik Minio

Prije nego što instaliramo Minio, kreirajmo novi UNIX korisnički račun pod kojim će se minio izvoditi. Ne želimo ga pokretati kao root ili kao redoviti korisnik koji možda ima sudo pristup ili druge programe koji se izvode pod njim. Izrađujemo račun minio sustava, nazvan minio-user:

$ sudo useradd --sustav minio-korisnik --shell / sbin / nologin

3.  Minio Preuzimanje

Dalje preuzimamo minio binarni zapis (zapisano je u programu Go koji se kompajlira u mali lagani binarni zapis).

Uzmi binarni

$ curl -O https: // dl.minio.io / server / minio / release / linux-amd64 / minio

Premjestite binarnu datoteku na mjesto gdje se obično očekuje da se nalaze binarni podaci:

$ sudo mv minio / usr / local / bin

Učinite binarnu datoteku izvršnom i dajte korisniku minimalnog korisnika i grupirajte njezino vlasništvo:

$ sudo chmod + x / usr / local / bin / minio
$ sudo chown minio-user: minio-user / usr / local / bin / minio

4.  / etc konfiguracijske datoteke, skripte za pokretanje i uređaj za pohranu

Minio nam je potreban za pokretanje s ponovnim pokretanjem sustava i da bi ga OS prepoznao kao pokrenutu uslugu. Ako to ne učini, rezultiralo bi katastrofama, na primjer kada OOM-ubojica vidi taj postupak i odluči da nije dovoljno koristan. Također bi nam trebao direktorij u kojem će se spremiti stvarni podaci naše trgovine objektima:

$ sudo mkdir / usr / local / share / minio
$ sudo mkdir / etc / minio

Provjerite ima li minio potpunu kontrolu nad ovim direktorijima:

$ sudo chown minio-user: minio-user / usr / local / share / minio
$ sudo chown minio-user: minio-user / etc / minio

Unutar direktorija / etc / default trebamo stvoriti minio datoteku kako bismo odredili varijable okruženja poput broja porta koji ćemo slušati i direktorija u kojem bi podaci trebali biti spremljeni (volumen). Ranije smo stvorili svezak koji je bio / usr / local / share / minio direktorij. Zato za izradu datoteke upotrijebite svoj omiljeni uređivač teksta / etc / default / minio i dodajte u njega sljedeći sadržaj:

MINIO_VOLUMES = "/ usr / local / share / minio /"
MINIO_OPTS = "- C / etc / minio - adresa minio.primjer.com: 443 "

Obavezno upišite stvarno označeni VDS FDQN umjesto doslovnog niza minio.primjer.com gore. Broj porta 9000 je ono što obično koriste u Dokumentaciji, ali koristit ćemo odgovarajuću TLS instalacijsku slušanost na portu 443. Budući da je to broj porta manji od 1024, moramo izričito reći OS-u da je u redu da minio sluša na ovim priključcima:

$ sudo setcap 'cap_net_bind_service = + ep' / usr / local / bin / minio

Na kraju, moramo konfigurirati minio servis. Srećom skripta koja to radi dostupna je na njihovom GitHub repo-u i mi ćemo je smjestiti na odgovarajuće mjesto:

$ curl -O https: // raw.githubusercontent.com / minio / minio-service / master / linux-systemd /
minio.servis
$ sudo mv minio.usluga / etc / systemd / system

Ponovo učitajte sve systemd jedinice i omogućite pokretanje minio-a prilikom pokretanja

$ sudo systemctl daemon-reload
$ sudo systemctl omogući minio

Na kraju, pobrinite se da vaš vatrozid dopušta komunikaciju na priključku 443.

LetsEncrypt TLS certifikati pomoću Certbota

Moramo pregovarati o TLS certifikatima između našeg Minio poslužitelja i LetsEncrypt. Certbot je klijent koji to čini umjesto nas, a također automatizira obnavljanje certifikata. Prvo instalirajmo Certbot:

$ sudo apt ažuriranje
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa: certbot / certbot
$ sudo apt-get ažuriranje
$ sudo apt-get instaliraj certbot

Zatim instalirajte certifikate, kako je dokumentirano u Minio Docs:

$ sudo certbot certonly --standalone -d minio.primjer.com --staple-ocsp -m
korisničko ime @ e-pošta.com --agree-tos

Ovdje unosite svoj FQDN za Minio poslužitelj nakon oznake -d i vašu adresu e-pošte nakon oznake -m. Adresa e-pošte je važna jer omogućuje LetsEncrypt da vas obavijesti o obnavljanju na čekanju.

Vaše e-adrese sada će biti prisutne na / etc / letsencrypt / live / minio.primjer.com. Naravno, posljednji naziv direktorija ovisit će o odabranom FQDN-u. Sada kopirajte certove u Miniov direktorij / etc / minio i dajte mu dopuštenje za pristup.

$ cp / etc / letsencrypt / live / minio.ranvirslog.com / puni lanac.pem / etc / minio / certs / public.crt
$ cp / etc / letsencrypt / live / minio.ranvirslog.com / privkey.pem / etc / minio / certs / private.ključ
$ chown minio-user: minio-user / etc / minio / certs / public.crt
$ chown minio-user: minio-user / etc / minio / certs / private.ključ

Sada ste spremni za korištenje usluge:

$ sudo service minio start
$ sudo service minio status

Izlaz:

Učitana: učitana (/ etc / systemd / system / minio.servis; onemogućeno; unaprijed postavljeno dobavljača: omogućeno)
Aktivan: aktivan (trči) od utorka 2018-10-09 11:54:41 PDT; Prije 5s
Dokumenti: https: // docs.minio.io
Proces: 15874 ExecStartPre = / bin / bash -c [-n "$ MINIO_VOLUMES"] && echo "Varijabla
MINIO_VOLUMES nisu postavljeni u / etc / default / minio "(kod = izašao, status = 0 / USPJEH)
Glavni PID: 15877 (minio)
Zadaci: 13 (ograničenje: 4915)
CGroup: / sustav.kriška / minio.servis
└─15877 / usr / local / bin / minio server -C / etc / minio --adresress minio.primjer.com: 443 / usr /
lokalno / share / minio /
 
9. listopada 11:54:41 ime hosta minio [15877]: Pristup pregledniku:
9. listopada 11:54:41 ime hosta minio [15877]: https: // minio.primjer.com
9. listopada 11:54:41 ime hosta minio [15877]: Pristup naredbenom retku: https: // docs.minio.io / docs /
minio-client-quickstart-guide
9. listopada 11:54:41 ime hosta minio [15877]: $ mc config host add myminio
https: // minio.primjer.com
PAMH22LU3YJIFLU82H2E IKJ + qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg
..

Izlaz ove naredbe sadržavat će pristupni ključ (PAMH22LU3YJIFLU82H2E) i tajni ključ (IKJ + qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg) za minio kao što je gore prikazano podebljanim slovima. Vaši bi se ključevi razlikovali pa nemojte kopirati ovdje spomenute.

Koristeći Minio

Otvorite svoj preglednik i posjetite https: // minio.primjer.com (pobrinite se za korištenje FQDN-a koji ste dodijelili) i za pristup prvoj prijavi upotrijebite pristupni i tajni ključ naveden u naredbi vašeg statusa minio statusa.

I pozdravit će vas korisničko sučelje Minio.

Ovdje možete upotrijebiti znak plus u donjem lijevom kutu za prijenos datoteka ili stvaranje novog segmenta. Stvorio sam novu kantu nazvanu mybucket.

Možete urediti pravila za čitanje i pisanje, a zatim u ovu skupinu prenijeti nekoliko datoteka (recimo slike). Minio će stvoriti jedinstveni URL za svaki objekt u segmentu. Možete postaviti pravila za čitanje i pisanje po segmentu, kao i datum isteka na URL-u pojedinog objekta.

Zaključak

To su osnove kako započinjete s pohranom predmeta. Sami predmeti idealno nisu za izmjenu, već samo za čitanje ili dodavanje u segmente. To možete integrirati u svoju aplikaciju slijedeći službenu dokumentaciju.  Podržava širok spektar programskih jezika, od Go, Python, JavaScript do .NETO.

Najpopularnije laboratorijske igre Oculus App
Ako ste vlasnik slušalica Oculus, tada morate biti sigurni u bočno učitavanje. Bočno učitavanje postupak je instaliranja nehranjenog sadržaja na vaše ...
10 najboljih igara za igranje na Ubuntuu
Windows platforma bila je jedna od dominantnih platformi za igre zbog ogromnog postotka igara koje se danas razvijaju kako bi podržavale Windows. Može...
5 najboljih arkadnih igara za Linux
U današnje vrijeme računala su ozbiljni strojevi koji se koriste za igre na sreću. Ako ne uspijete dobiti novi visoki rezultat, znat ćete na što misli...