Pregled
Zahteve
Skript za zagon v oblaku
PXE skript
Požarni zid
Zaženi
Pregled
RancherOS je neverjetno lahek operacijski sistem (samo približno 60 MB), ki poganja "sistemski" demon Docker PID 0
za zagon sistemskih storitev (omrežje, dostop do ukazne mize in tako naprej), kot tudi "uporabniški" demon Docker za izvajanje ne- sistemske posode (MySQL, Rancher in drugo).
Rancher je platforma za orkestracijo, ki jo vodijo kontejnerji, za upravljanje zabojnikov, pa tudi širših vidikov infrastrukture, kot so gostitelji, okolja in drugo. Strežnik Rancher nadzoruje orkestracijo, agent Rancher pa je nameščen na vsakem gostitelju, ki ga upravlja Rancher.
V tem članku bomo šli skozi naslednje korake za namestitev strežnika Rancher:
Cloud-init script
- Objavite datoteko cloud-init za namestitev in zagon strežnika Rancher.
PXE script
- Napišite skript PXE za pridobivanje datoteke v oblaku in prvi zagon gostitelja.
Firewall
- Ustvarite skupino požarnih zidov, ker je varnost najpomembnejša.
Start it up
- Zagotovite gostitelja in namestite Rancher.
Zahteve
- VPS z najmanj 1 GB RAM-a - na ta gostitelj bomo namestili strežnik Rancher.
- Blokovno shranjevanje - Za vztrajno shranjevanje podatkov strežnika Rancher, konfiguracij, uporabnikov in več.
- 1 Rezervirani naslov IP – da se agentom Rancher zagotovi konsistenten IP naslov za pridružitev okolju Rancher.
Skript za zagon v oblaku
Shranite naslednji skript na lokacijo, ki je dostopna vašemu gostitelju prek, HTTP/HTTPS
da se lahko nanjo sklicuje iz svojega skripta PXE.
Zamenjajte ssh-...
dele s svojim javnim ključem SSH, da lahko SSH vstopite v gostitelja.
#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
Upoštevajte, da je to dejansko zasaditev cloud-config.yml
znotraj drugega cloud-config.yml
. Zunanji se naloži, ko iPXE prvič zažene gostitelja, in namesti Rancher na pogon gostitelja /dev/vda
. Notranja konfiguracija je za naslednje zagone in bo dejansko zagnala strežnik Rancher.
Podatki MySQL so shranjeni v blokovnem pomnilniku /dev/vdb
, tako da lahko kritični podatki in konfiguracije strežnika Rancher preživijo zamenjavo gostitelja VPS.
Skript lahko naložite na poljubno število brezplačnih lokacij, ki so javno dostopne kot URL, ali pa ga gostite na drugem VPS, tako da je dostopen samo vašim gostiteljem prek zasebnega omrežja.
PXE skript
Kopirajte naslednje kot zagonski skript PXE z imenom " Rancher Server
", medtem ko ga nadomestite CLOUD_CONFIG_URL
z URL-jem vaše cloud-config.yml
datoteke (nekaj podobnega 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
To bo potegnilo najnovejši RancherOS ISO in ga zagnalo v pomnilnik z uporabo vašega skripta za zagon v oblaku. Vaš skript cloud-init bo nato nadaljeval z namestitvijo RancherOS na disk, drugi zagon pa bo zagnal vsebnik strežnika Rancher.
Požarni zid
Ko bo Rancher prvič na voljo, bo vsak, ki zadene končno točko, takoj imel skrbniške pravice.
Če želite preprečiti, da bi tujci ugrabili vaš strežnik Rancher, ustvarite požarni zid, imenovan "Rancher Server", z naslednjimi pravili:
TCP 22
na vašem IP-ju, tako da lahko s SSH vstopite v gostitelja.
TCP 8080
na vašem IP-ju, tako da lahko naložite spletno stran strežnika Rancher.
TCP 8080
za vse gostitelje agentov Rancher, tako da se lahko registrirajo na strežniku Rancher.
Zaženi
Zagotovite svoj 1+ GB gostitelja v isti regiji kot vaš blokovni prostor za shranjevanje in ga nastavite Server Type
na zagonski skript po meri iPXE "Rancher Server".
Ko se zažene, se prepričajte, da ste pretvorili njegov IP v rezerviran IP, tako da bodo imeli vaši agenti Rancher končno točko, s katero se lahko dosledno registrirajo.
IPXE bo potreboval približno 4 minute, da povleče ISO RancherOS, prvi zagon namesti RancherOS v /dev/vda
, drugi zagon pa povleče rancher/server:stable
sliko Docker in zažene vsebnike.
Ko bo pripravljen, ga boste lahko dosegli na http://YOUR_RESERVED_IP:8080
.
Čestitamo, pravkar ste nastavili strežnik Rancher na RancherOS.
Svoj primerek lahko znova zaženete ali ga celo uničite/znova namestite, blokovni prostor za shranjevanje pa bo ohranil vaše podatke in konfiguracije, medtem ko bo vaš rezervirani IP omogočil novim agentom Rancher, da vedo, kje najti vaš strežnik.
Nekaj naslednjih korakov:
Set up access control
- vsaj ustvarite lokalnega skrbniškega uporabnika z varnim geslom.
Add hosts
- v Add Hosts -> Custom
razdelku kopirajte URL, ki vsebuje dolg žeton, značilen za vaš strežnik Rancher. To boste potrebovali za registracijo agentov Rancher na vašem strežniku.
Explore
najnovejše dokumentacije Rancher strežnik .