Áttekintés
Követelmények
Cloud-init szkript
PXE szkript
Tűzfal
Indítsa el
Áttekintés
A RancherOS egy hihetetlenül könnyű operációs rendszer (csak kb. 60 MB), amely egy "rendszer" Docker démont PID 0
futtat a rendszerszolgáltatások futtatásához (hálózat, konzol hozzáférés és így tovább), valamint egy "felhasználói" Docker démont a nem futó programok futtatásához. rendszerkonténerek (MySQL, Rancher és így tovább).
A Rancher egy konténerek által üzemeltetett hangszerelési platform a konténerek, valamint az infrastruktúra tágabb aspektusainak, például gazdagépek, környezetek és egyebek kezelésére. Egy Rancher-kiszolgáló vezérli a szervezést, és egy Rancher-ügynök kerül telepítésre minden Rancher által kezelt gazdagépen.
Ebben a cikkben a Rancher-kiszolgáló üzembe helyezésének következő lépéseit fogjuk végrehajtani:
Cloud-init script
- Tegyen közzé egy felhő-init fájlt a Rancher-kiszolgáló telepítéséhez és futtatásához.
PXE script
- Írjon egy PXE-szkriptet a felhő-init fájl lekéréséhez és a gazdagép első indításához.
Firewall
- Hozzon létre egy tűzfalcsoportot, mert a biztonság a legfontosabb.
Start it up
- Biztosítsa a gazdagépet és telepítse a Ranchert.
Követelmények
- VPS minimum 1 GB RAM-mal – A Rancher szervert telepítjük erre a gazdagépre.
- Tárolás blokkolása – A Rancher szerver adatainak, konfigurációinak, felhasználóinak és egyebeknek folyamatos tárolása.
- 1 Fenntartott IP-cím – konzisztens IP-cím biztosítása a Rancher ügynökök számára a Rancher környezethez való csatlakozáshoz.
Cloud-init szkript
Mentse el a következő szkriptet a gazdagép által elérhető helyre HTTP/HTTPS
, hogy hivatkozhasson rá a PXE-szkriptjéből.
Cserélje ki az ssh-...
alkatrészeket a nyilvános SSH-kulcsára, hogy SSH-t küldhessen a gazdagépbe.
#cloud-config
ssh_authorized_keys:
- ssh-...
write_files:
- path: /cloud-config.yml
permissions: "0700"
owner: root
content: |
#cloud-config
ssh_authorized_keys:
- ssh-...
mounts:
- ["/dev/vdb1", "/mnt", "ext4", ""]
rancher:
services:
rancher-server:
image: rancher/server:stable
ports:
- 8080:8080
restart: always
volumes:
- /mnt/rancher-server-mysql:/var/lib/mysql
- path: /opt/rancher/bin/start.sh
permissions: "0700"
owner: root
content: |
#!/bin/bash
echo y | ros install -f -c /cloud-config.yml -d /dev/vda
Ne feledje, hogy ez valójában egy cloud-config.yml
másik beültetése cloud-config.yml
. A külső betöltődik, amikor az iPXE először indítja el a gazdagépet, és telepíti a Ranchert a gazdagép meghajtójára /dev/vda
. A belső konfiguráció a következő rendszerindításokhoz való, és ténylegesen elindítja a Rancher szervert.
A MySQL adatok a blokktárolón vannak tárolva /dev/vdb
, így a kritikus Rancher szerveradatok és konfigurációk túlélhetik a VPS gazdagép cseréjét.
Feltöltheti a szkriptet tetszőleges számú ingyenes helyre, amely nyilvánosan elérhető URL-ként, vagy tárolhatja egy másik VPS-en, így csak a házigazdái érhetik el privát hálózaton keresztül.
PXE szkript
Másolja a következőt PXE indítószkriptként " Rancher Server
" néven, miközben lecseréli CLOUD_CONFIG_URL
a cloud-config.yml
fájl URL- jére (olyan, mint a https://example.com/cloud-config.yml
).
#!ipxe
# Location of Kernel/Initrd images
set base-url https://releases.rancher.com/os/latest
kernel ${base-url}/vmlinuz rancher.state.dev=LABEL=RANCHER_STATE -- rancher.cloud_init.datasources=[url:CLOUD_CONFIG_URL]
initrd ${base-url}/initrd
boot
Ez lekéri a legújabb RancherOS ISO-t, és elindítja a memóriába a felhő-init szkript segítségével. A felhő-init szkript ezután telepíti a RancherOS-t a lemezre, a második rendszerindítás pedig a Rancher szervertárolót futtatja.
Tűzfal
Amikor a Rancher először elérhetővé válik, bárki, aki eléri a végpontot, azonnal rendszergazdai jogosultságokkal rendelkezik.
Ha meg szeretné akadályozni, hogy kívülállók eltérítsék Rancher szerverét, hozzon létre egy "Rancher Server" nevű tűzfalat a következő szabályokkal:
TCP 22
az IP-címen, így SSH-val be tud lépni a gazdagépbe.
TCP 8080
az IP-címén, így betöltheti a Rancher szerver weboldalát.
TCP 8080
bármely Rancher ügynök gazdagéphez, így regisztrálhatnak a Rancher szerveren.
Indítsa el
Biztosítsa az 1+ GB-os gazdagépet ugyanabban a régióban, mint a Server Type
blokktárhely , és állítsa be a „Rancher Server” iPXE egyéni indítószkriptre.
Miután elindult, győződjön meg róla, hogy az IP-címét lefoglalt IP-címre konvertálja, hogy a Rancher-ügynökei rendelkezzenek egy végponttal, amellyel folyamatosan regisztrálhatnak.
Körülbelül 4 percet vesz igénybe, amíg az iPXE letölti a RancherOS ISO-t, az első rendszerindítást, amelyre telepíti a RancherOS-t /dev/vda
, a második rendszerindításhoz pedig a rancher/server:stable
Docker-lemezkép letöltése és a tárolók elindítása.
Ha felkerült, a címen érheti el http://YOUR_RESERVED_IP:8080
.
Gratulálunk, most beállította a Rancher szervert a RancherOS rendszeren.
Újraindíthatja a példányt, vagy akár megsemmisítheti/újratelepítheti, és a blokktároló megőrzi adatait és konfigurációit, míg a lefoglalt IP-címe lehetővé teszi az új Rancher ügynökök számára, hogy tudják, hol találhatják meg a szerverét.
Néhány következő lépés:
Set up access control
- legalább hozzon létre egy helyi admin felhasználót biztonságos jelszóval.
Add hosts
- a Add Hosts -> Custom
szakaszba másolja be azt az URL-t, amely a Rancher szerverére jellemző hosszú tokent tartalmaz. Erre azért lesz szüksége, hogy Rancher ügynököket regisztráljon a szerverén.
Explore
a Rancher szerver legújabb dokumentációja .