Ubuntu

Installieren Sie Minio auf Ubuntu 18.04 LTS

Installieren Sie Minio auf Ubuntu 18.04 LTS
Minio ist eine selbst gehostete Lösung zum Erstellen Ihres eigenen Objektspeichers. Es ist eine Alternative für AWS S3, wenn Sie diesen Service bereits verwendet haben. Die Minio-Software selbst wird als einfache Binärdatei geliefert und sogar die offizielle Dokumentation schlägt vor, sie auf diese Weise zu verwenden, anstatt einen Paketmanager zu verwenden. Es gibt natürlich Docker-Images, wenn Sie diese verwenden möchten, um minio auf Ihrem VPS auszuführen.

In diesem Tutorial werden wir die Verwendung von Minio auf Ubuntu 18 installieren und demonstrieren.04 LTS-Server. Dieser VPS hat eine statische IP und ich werde DNS-Einträge und TLS-Verbindungen einrichten, um diesen Objektspeicher so sicher und produktionsbereit wie möglich zu machen.

Voraussetzungen

Hier sind die Voraussetzungen, die Sie benötigen, wenn Sie mitmachen möchten:

  1. Ein VPS mit Ubuntu oder einer anderen Linux-Distribution mit einer statischen IP (IP_ADDRESS ist unser Platzhalter, ersetzen Sie es durch die tatsächliche IP-Adresse Ihres VPS)
  2. Ein vollständig qualifizierter Domänenname [FQDN]. Beispiel.com wird unser Platzhalter sein.

Installation und sonstige Einrichtung

Melden wir uns bei unserem VPS an und bereiten wir die Dinge vor, damit Minio richtig läuft.

1.  DNS-Einrichtung

Gehen Sie zu dem Nameserver, auf dem die DNS-Einträge Ihrer Domain verwaltet werden. Diesen finden Sie höchstwahrscheinlich auf der Website Ihres Domain-Registrars. Fügen Sie einen A-Eintrag hinzu, der auf Ihren ausgewählten FQDN verweist (zum Beispiel minio.Beispiel.com ) an die IP_ADDRESS Ihres VPS.

2.  Minio-Benutzer

Bevor wir Minio installieren, erstellen wir ein neues UNIX-Benutzerkonto, unter dem minio ausgeführt wird. Wir möchten es nicht als Root oder als normaler Benutzer ausführen, der möglicherweise über sudo-Zugriff oder andere darunter ausgeführte Anwendungen verfügt. Wir erstellen ein minio-Systemkonto namens minio-user:

$ sudo useradd --system minio-user --shell /sbin/nologin

3.  Minio-Download

Als nächstes laden wir die Minio-Binärdatei herunter (Sie ist in Go geschrieben, die sich in eine kleine, leichte Binärdatei kompiliert).

Holen Sie sich die Binärdatei

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

Verschieben Sie die Binärdatei an einen Speicherort, an dem sich die Binärdateien normalerweise befinden:

$ sudo mv minio /usr/local/bin

Machen Sie die Binärdatei ausführbar und geben Sie dem Benutzer und der Gruppe minio-user den Besitz:

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

4.  /etc Konfigurationsdateien, Startskripte und Speichergerät

Wir benötigen Minio, um mit einem Systemneustart zu starten und vom Betriebssystem als laufender Dienst erkannt zu werden. Andernfalls würde es zu Katastrophen kommen, wenn der OOM-Killer diesen Prozess sieht und entscheidet, dass er nicht nützlich genug ist. Außerdem benötigen wir ein Verzeichnis, in dem die eigentlichen Daten unseres Objektspeichers gespeichert werden:

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

Stellen Sie sicher, dass minio die volle Kontrolle über diese Verzeichnisse hat:

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

Innerhalb des Verzeichnisses /etc/default müssen wir eine Minio-Datei erstellen, um Umgebungsvariablen wie die Portnummer, die wir abhören, und das Verzeichnis anzugeben, in dem die Daten gespeichert werden sollen (das Volume). Wir haben zuvor das Volume erstellt, das das Verzeichnis /usr/local/share/minio war. Verwenden Sie also Ihren bevorzugten Texteditor, um eine Datei zu erstellen /etc/default/minio und fügen Sie den folgenden Inhalt hinzu:

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

Stellen Sie sicher, dass Sie den tatsächlichen designierten FDQN Ihres VPS anstelle der literalen Zeichenfolge minio schreiben.Beispiel.com oben. Portnummer 9000 wird normalerweise in der Dokumentation verwendet, aber wir werden die richtige TLS-Installation verwenden, die auf Port 443 lauscht. Da es sich um eine Portnummer kleiner als 1024 handelt, müssen wir dem Betriebssystem ausdrücklich mitteilen, dass es für minio in Ordnung ist, diese Ports abzuhören:

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

Als letztes müssen wir das minio . konfigurieren Bedienung. Glücklicherweise ist das Skript, das dies tut, in ihrem GitHub-Repository verfügbar und wir werden es an der entsprechenden Stelle platzieren:

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

Laden Sie alle Systemeinheiten neu und aktivieren Sie Minio, um beim Booten zu starten

$ sudo systemctl daemon-reload
$ sudo systemctl aktivieren minio

Stellen Sie abschließend sicher, dass Ihre Firewall die Kommunikation über Port 443 zulässt.

LetsEncrypt TLS-Zertifikate mit Certbot

Wir müssen TLS-Zertifikate zwischen unserem Minio-Server und LetsEncrypt aushandeln. Certbot ist der Kunde, der dies für uns erledigt und auch die Zertifikatserneuerungen automatisiert. Lassen Sie uns zuerst Certbot installieren:

$ sudo apt-Update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install certbot

Installieren Sie dann die Zertifikate, wie von Minio Docs dokumentiert:

$ sudo certbot certonly --standalone -d minio.Beispiel.com --staple-ocsp -m
[email protected] --zustimmen-tos

Hier geben Sie Ihren FQDN für den Minio-Server nach dem Flag -d und Ihre E-Mail-Adresse nach dem Flag -m ein. Die E-Mail-Adresse ist wichtig, da LetsEncrypt Sie über ausstehende Verlängerungen benachrichtigen kann.

Ihre E-Mails sind jetzt unter /etc/letsencrypt/live/minio.Beispiel.com. Natürlich hängt der letzte Verzeichnisname von Ihrem gewählten FQDN ab. Kopieren Sie nun die Zertifikate in das /etc/minio-Verzeichnis von Minio und geben Sie ihm die Berechtigung, darauf zuzugreifen.

$ 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.Schlüssel
$ chown minio-user:minio-user /etc/minio/certs/public.crt
$ chown minio-user:minio-user /etc/minio/certs/private.Schlüssel

Jetzt können Sie den Dienst nutzen:

$ sudo service minio start
$ sudo service minio status

Ausgabe:

Geladen: geladen (/etc/systemd/system/minio.Bedienung; deaktiviert; Herstellervoreinstellung: aktiviert)
Aktiv: aktiv (läuft) seit Di 09.10.2018 11:54:41 PDT; vor 5s
Dokumente: https://docs.minio.io
Prozess: 15874 ExecStartPre=/bin/bash -c [ -n "$MINIO_VOLUMES" ] && echo "Variable
MINIO_VOLUMES nicht gesetzt in /etc/default/minio" (code=exited, status=0/SUCCESS)
Haupt-PID: 15877 (Minio)
Aufgaben: 13 (Limit: 4915)
CGruppe: /system.Scheibe/Minio.Bedienung
└─15877 /usr/local/bin/minio server -C /etc/minio --address minio.Beispiel.com:443 /usr/
local/share/minio/
 
09.10. 11:54:41 Hostname minio[15877]: Browserzugriff:
09.10. 11:54:41 Hostname minio[15877]: https://minio.Beispiel.com
09.10. 11:54:41 Hostname minio[15877]: Befehlszeilenzugriff: https://docs.minio.io/docs/
Minio-Client-Kurzanleitung
09. Okt. 11:54:41 hostname minio[15877]: $ mc config host myminio hinzufügen
https://minio.Beispiel.com
PAMH22LU3YJIFLU82H2E IKJ+qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg

Die Ausgabe dieses Befehls enthält den Zugriffsschlüssel (PAMH22LU3YJIFLU82H2E) und geheimer Schlüssel (IKJ+qtc0Oqdn46R3dLfsjv5bCnm8UEeIBYpdG8qg) für minio wie oben in Fettdruck dargestellt. Deine Schlüssel wären anders, also kopiere nicht die hier genannten.

Verwenden von Minio

Öffnen Sie Ihren Browser und besuchen Sie https://minio.Beispiel.com (stellen Sie sicher, dass Sie den von Ihnen zugewiesenen FQDN verwenden) und verwenden Sie den Zugriff und den geheimen Schlüssel, die in Ihrem service minio status-Befehl aufgeführt sind, um sich zum ersten Mal anzumelden.

Und Sie werden von der Minio-Benutzeroberfläche begrüßt.

Hier können Sie das Pluszeichen in der unteren linken Ecke verwenden, um Dateien hochzuladen oder einen neuen Bucket zu erstellen. Ich habe einen neuen Bucket namens mybucket erstellt.

Sie können die Richtlinie zum Lesen und Schreiben bearbeiten und dann einige Dateien (z. B. Bilder) in diesen Bucket hochladen. Minio erstellt für jedes Objekt in einem Bucket eine eindeutige URL. Sie können Richtlinien für das Lesen und Schreiben pro Bucket sowie das Ablaufdatum für die URL des einzelnen Objekts festlegen.

Fazit

Das sind die Grundlagen für die ersten Schritte mit einem Objektspeicher. Die Objekte selbst sind idealerweise nicht dazu gedacht, geändert zu werden, sondern nur aus den Buckets gelesen oder hinzugefügt zu werden. Sie können dies in Ihre Anwendung integrieren, indem Sie der offiziellen Dokumentation folgen.  Es unterstützt eine Vielzahl von Programmiersprachen von Go, Python, JavaScript bis hin zu .NETZ.

Beste Spielkonsolen-Emulatoren für Linux
Dieser Artikel listet beliebte Spielekonsolen-Emulationssoftware auf, die für Linux verfügbar ist. Emulation ist eine Softwarekompatibilitätsschicht, ...
Beste Linux-Distributionen für Gaming im Jahr 2021
Das Linux-Betriebssystem hat sich weit von seinem ursprünglichen, einfachen, serverbasierten Aussehen entfernt. Dieses Betriebssystem hat sich in den ...
So erfassen und streamen Sie Ihre Gaming-Sitzung unter Linux
In der Vergangenheit galt das Spielen von Spielen nur als Hobby, aber mit der Zeit verzeichnete die Spieleindustrie ein enormes Wachstum in Bezug auf ...