Vështrim i përgjithshëm
Kërkesat
Skripti i fillimit në renë kompjuterike
Skript PXE
Firewall
Niseni atë
Vështrim i përgjithshëm
RancherOS është një sistem operativ tepër i lehtë (vetëm rreth 60 MB) që drejton një daemon "sistemi" Docker si PID 0
për ekzekutimin e shërbimeve të sistemit, (rrjeti, aksesi i konsolës etj.), si dhe një daemon "përdorues" Docker për ekzekutimin jo- kontejnerët e sistemit, (MySQL, Rancher dhe më shumë).
Rancher është një platformë orkestrimi e drejtuar nga kontejnerët për menaxhimin e kontejnerëve, si dhe aspekte më të gjera të infrastrukturës si hostet, mjediset dhe më shumë. Një server Rancher kontrollon orkestrimin dhe një agjent Rancher vendoset në çdo host që menaxhohet nga Rancher.
Në këtë artikull, ne do të kalojmë nëpër hapat e mëposhtëm për të vendosur një server Rancher:
Cloud-init script
- Publikoni një skedar cloud-init për të instaluar dhe drejtuar serverin Rancher.
PXE script
- Shkruani një skript PXE për të rikthyer skedarin cloud-init dhe për të nisur hostin për herë të parë.
Firewall
- Krijo një grup firewall, sepse siguria është parësore.
Start it up
- Siguroni hostin dhe instaloni Rancher.
Kërkesat
- VPS me një minimum prej 1 GB RAM - Ne do të instalojmë serverin Rancher në këtë host.
- Blloko ruajtjen - Për të ruajtur vazhdimisht të dhënat, konfigurimet, përdoruesit dhe më shumë të serverit Rancher.
- 1 Adresa IP e rezervuar - Për t'u dhënë agjentëve të Rancher një IP të qëndrueshme për t'u përdorur për t'u bashkuar me mjedisin Rancher.
Skripti i fillimit në renë kompjuterike
Ruajeni skriptin e mëposhtëm në një vendndodhje të arritshme nga hosti juaj nëpërmjet, në HTTP/HTTPS
mënyrë që të mund ta referojë atë nga skripti i tij PXE.
Zëvendësoni ssh-...
pjesët me çelësin tuaj publik SSH në mënyrë që të mund të SSH në host.
#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
Vini re se kjo është në të vërtetë mbjellja e një cloud-config.yml
brenda një tjetri cloud-config.yml
. E jashtme ngarkohet kur iPXE nis hostin për herë t�� parë dhe instalon Rancher në diskun e hostit /dev/vda
. Konfigurimi i brendshëm është për çizmet e mëvonshme dhe në fakt do të nisë serverin Rancher.
Të dhënat MySQL ruhen në bllokun e ruajtjes /dev/vdb
, kështu që të dhënat dhe konfigurimet kritike të serverit Rancher mund t'i mbijetojnë zëvendësimit të hostit VPS.
Ju mund ta ngarkoni skriptin në çdo numër vendndodhjesh falas që janë të arritshme si një URL publikisht, ose mund ta strehoni atë në një VPS tjetër, në mënyrë që të aksesohet vetëm nga hostet tuaj nëpërmjet një rrjeti privat.
Skript PXE
Kopjojeni sa vijon si një skript i nisjes PXE të quajtur " Rancher Server
" duke e zëvendësuar CLOUD_CONFIG_URL
me URL-në e cloud-config.yml
skedarit tuaj (diçka si 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
Kjo do të tërheqë ISO-në më të fundit të RancherOS dhe do ta nisë atë në memorie duke përdorur skriptin tuaj të inicimit cloud. Skripti juaj i fillimit në cloud më pas do të vazhdojë të instalojë RancherOS në disk dhe nisja e dytë do të ekzekutojë kontejnerin e serverit Rancher.
Firewall
Kur Rancher të bëhet i disponueshëm për herë të parë, kushdo që arrin pikën përfundimtare do të ketë menjëherë privilegje administratori.
Për të parandaluar që të huajt të rrëmbejnë serverin tuaj Rancher, krijoni një mur zjarri të quajtur "Rancher Server" me rregullat e mëposhtme:
TCP 22
në IP-në tuaj, kështu që ju mund të SSH në host.
TCP 8080
në IP-në tuaj, kështu që ju mund të ngarkoni faqen e internetit të serverit Rancher.
TCP 8080
për çdo host agjent të Rancher, kështu që ata mund të regjistrohen në serverin Rancher.
Niseni atë
Siguroni hostin tuaj 1+ GB në të njëjtin rajon me hapësirën ruajtëse të bllokut dhe vendoseni atë Server Type
në skriptin e personalizuar të nisjes iPXE "Rancher Server".
Pasi të jetë nisur, sigurohuni që ta konvertoni IP-në e saj në një IP të rezervuar në mënyrë që agjentët tuaj të Rancher të kenë një pikë përfundimtare me të cilën mund të regjistrohen vazhdimisht.
Do të duhen ~ 4 minuta që iPXE të tërheqë ISO RancherOS, nisja e parë për të instaluar RancherOS në /dev/vda
, dhe për nisjen e dytë për të tërhequr rancher/server:stable
imazhin e Docker dhe për të nisur kontejnerët e tij.
Pasi të jetë gati, do të mund ta arrini në http://YOUR_RESERVED_IP:8080
.
Urime, sapo keni vendosur serverin Rancher në RancherOS.
Mund ta rinisni shembullin tuaj ose madje ta shkatërroni / riinstaloni atë, dhe ruajtja e bllokut do të ruajë të dhënat dhe konfigurimet tuaja ndërsa IP-ja juaj e rezervuar do t'u lejojë agjentëve të rinj të Rancher të dinë se ku ta gjejnë serverin tuaj.
Disa hapa të mëtejshëm:
Set up access control
- të paktën, krijoni një përdorues lokal të administratorit me një fjalëkalim të sigurt.
Add hosts
- në Add Hosts -> Custom
seksion, kopjoni URL-në që përmban një shenjë të gjatë specifike për serverin tuaj Rancher. Kjo do t'ju duhet për të regjistruar agjentët e Rancher në serverin tuaj.
Explore
dokumentacioni më i fundit i serverit Rancher .