Sales4 min read753 words

Ubuntu 20.04 MinIO Cluster Installatie

Fatih Çevik

Fatih Çevik

PlusClouds Author

Cloud & SaaS

Wat is MinIO?

MinIO is een hoogpresterende object storage service die onder de GNU Affero General Public License V3.0 wordt uitgegeven. Als je deze tekst leest, heb je waarschijnlijk al gehoord van of gebruik gemaakt van de Amazon S3 storage service. De MinIO service heeft vrijwel dezelfde functionaliteiten als S3. Met de MinIO service kun je je eigen S3 server aanmaken tegen lagere kosten.

Wat is Object Storage?

Object storage neemt elk stuk data en herschikt het als een object. In tegenstelling tot file storage en block storage, worden gegevens in unieke metadata gehouden en opgeslagen in deelgebieden binnen de opslagpool.

Voorbereiding en Vereisten

In dit artikel zullen we het Ubuntu 20.04 besturingssysteem gebruiken.

  • 4 servers met Ubuntu 20.04 geïnstalleerd

  • Root bevoegdheden op alle nodes

  • Stabiele internetverbinding op de nodes waar de installatie plaatsvindt

Nadat aan de vereisten is voldaan, kunnen we met de installatie beginnen.

De volgende stappen moeten op alle nodes volledig worden uitgevoerd.

1. Mount een nieuwe schijf buiten de schijf waarop het besturingssysteem is geïnstalleerd

Voor de installatie van de MinIO cluster hebben we absoluut een nieuwe schijf nodig die is gemount, buiten de schijf waarop je besturingssysteem is geïnstalleerd.

We zullen de aangesloten schijven op de machine weergeven met het onderstaande commando.

fdisk -l

 Schijf /dev/xvda:   80   GiB,   85899345920   bytes,   167772160   secties
Eenheden: secties van 1 * 512 = 512 bytes
Sectorgrootte (logisch/fysiek): 512 bytes / 512 bytes
I/O-grootte (minimaal/optimaal): 512 bytes / 512 bytes
Schijflabeltype: gpt
Schijfidentificatie: 2666C97D-884F-4535-8F56-5DCE785E1D25

Apparaat Start Eind Secties Grootte Type
/dev/xvda1 2048 4095 2048 1M BIOS-boot
/dev/xvda2 4096 2101247 2097152 1G Linux-bestandssysteem
/dev/xvda3 2101248 167772126 165670879 79G Linux-bestandssysteem




Schijf /dev/xvdb: 20 GiB, 21474836480 bytes, 41943040 secties
Eenheden: secties van 1 * 512 = 512 bytes
Sectorgrootte (logisch/fysiek): 512 bytes / 512 bytes
I/O-grootte (minimaal/optimaal): 512 bytes / 512 bytes

Je zult een uitvoer krijgen die vergelijkbaar is met het bovenstaande. Hier is /dev/xvda de schijf waarop ons besturingssysteem is geïnstalleerd. De nieuw toegevoegde schijf verschijnt met de naam /dev/xvdb.

Voordat we de mountoperatie van de nieuwe schijf uitvoeren, zijn er nog een paar dingen die we moeten doen.

Maak eerst een fysieke ruimte aan met het onderstaande commando.

pvcreate /dev/xvdb

Vervolgens creëren we de directory waar we onze schijf gaan mounten.

mkdir /data

Daarna creëren we het bestandssysteem van onze nieuwe schijf met het volgende commando.

mkfs.ext4 /dev/xvdb

Nadat we het bestandssysteem hebben aangemaakt, voeren we de laatste stap uit om de mountoperatie uit te voeren. We bewerken de configuraties van de schijf die we gaan mounten en de mountdirectory in het /etc/fstab bestand.

nano /etc/fstab

Wanneer je het bestand hebt geopend, voeg dan de onderstaande regel toe.

/dev/xvdb /data ext4 defaults,noatime,nofail 0 0

Onze schijf is nu klaar voor de mountoperatie. We voeren de mountoperatie uit met het onderstaande commando.

mount -a

Je kunt de mountoperatie bevestigen met het onderstaande commando.

df -h

Vergeet niet dat we dezelfde handelingen op alle nodes moeten uitvoeren.

2. Voer de installatie van de MinIO service uit

Bereid je besturingssysteem voor op de installatie. Je kunt de onderstaande commando's gebruiken om de stappen uit te voeren.

apt update && apt upgrade && apt install wget -y

Vervolgens downloaden we de MinIO service en geven we de vereiste rechten.

wget -O /usr/local/bin/minio https://dl.minio.io/server/minio/release/linux-amd64/minio

chmod +x /usr/local/bin/minio

We maken een servicbestand voor MinIO aan en bewerken deze in de directory waarin onze systeemservices zijn opgeslagen.

nano /lib/systemd/system/minio.service

Kopieer en plak de onderstaande regels en sla het op.

 [Unit]

Beschrijving =minio

Documentatie =https://docs.min.io

Wil =network-online.target

Na =network-online.target

AssertFileIsExecutable =/usr/local/bin/minio

[Service]

Werkdirectory =/usr/local/

Gebruiker =root

Groep =root

Omgevingsbestand =/etc/default/minio

ExecStart =/usr/local/bin/minio server $MINIO_OPTS \
--console-address ":9001"

Herstarten =altijd

LimietAantalBestanden =65536

TimeoutStopSec =oneindig

StuurSIGKILL = nee

[Install]

GewenstDoor =multi-user.target

Vervolgens creëren en bewerken we ons MinIO configuratiebestand.

nano /etc/default/minio

Kopieer en plak de onderstaande regels. Vergeet niet je eigen gegevens in te vullen waar nodig.

 MINIO_OPTS=  "http://hostname1:9000/data     http://hostname2:9000/data         http://hostname3:9000/data         http://hostname4:9000/data     "  

MINIO_ACCESS_KEY= "Een veilige key van minimaal 16 tekens ter vervanging van gebruikersinformatie"

MINIO_SECRET_KEY= "Een console-inlogwachtwoord van minimaal 16 tekens"

Als je dezelfde handelingen op alle nodes hebt uitgevoerd, is het enige wat overblijft het starten van de MinIO service op elk van de nodes.

systemctl daemon-reload systemctl enable minio systemctl start minio.service

En tot slot kun je met het onderstaande commando bevestigen dat je cluster actief is.

systemctl status minio.service

Je MinIO-cluster is nu klaar voor gebruik. Tot de volgende keer :)

Frequently Asked Questions

Wat is MinIO en hoe verhoudt het zich tot Amazon S3?

MinIO is een hoogpresterende object storage service die onder de GNU Affero General Public License V3.0 is uitgebracht. Het biedt vrijwel dezelfde functionaliteiten als Amazon S3 en stelt je in staat een eigen S3-achtige server op te zetten tegen lagere kosten.

Wat is object storage en hoe verschilt het van file storage en block storage?

Object storage neemt elk stuk data en herschikt het als een object. In tegenstelling tot file storage en block storage worden gegevens opgeslagen met unieke metadata en opgeslagen in delen van de opslagpool.

Welke voorbereidingen en vereisten heb ik nodig voordat ik MinIO op Ubuntu 20.04 installeer?

De installatie gaat uit van vier servers met Ubuntu 20.04. Op alle nodes heb je rootrechten en een stabiele internetverbinding nodig.

Hoe voeg ik een extra schijf toe en mounten voor MinIO op elke node?

Zorg voor een nieuwe schijf buiten de OS-schijf. Maak de fysieke ruimte aan met pvcreate /dev/xvdb en maak de directory /data aan, gevolgd door mkfs.ext4 /dev/xvdb. Pas vervolgens /etc/fstab aan en mount de schijf met mount -a; controleer met df -h.

Hoe installeer ik de MinIO service op Ubuntu 20.04?

Update en upgrade de pakketten, installeer wget en download de MinIO-binary naar /usr/local/bin/minio en maak deze uitvoerbaar. Maak een systemd-servicebestand aan op /lib/systemd/system/minio.service en configureer de service zodat MinIO kan starten.

Welke instellingen moet ik zetten voor MINIO_OPTS en de toegangssleutels?

MINIO_OPTS moet de data-urls bevatten naar alle hosts, bijvoorbeeld http://hostname1:9000/data http://hostname2:9000/data http://hostname3:9000/data http://hostname4:9000/data. MINIO_ACCESS_KEY en MINIO_SECRET_KEY moeten minimaal 16 tekens bevatten.

Hoe start ik MinIO en controleer ik of de cluster actief is?

Na het configureren van de bestanden voer je op elke node systemctl daemon-reload, systemctl enable minio en systemctl start minio.service uit. Controleer de status met systemctl status minio.service.

Ubuntu 20.04 MinIO Cluster Installatie | PlusClouds Blog