Kuidas te installite tarkvara suure hulga masinatesse, kui teil pole Ansible ja Python?
sobes.tech AI
Vastus AI-lt
Ma kasutan ühte järgmistest strateegiatest:
-
Bash-skriptid SSH kasutamisega. Loon skripti, mis järjest ühendub iga serveriga SSH kaudu ja täidab installatsioonikäsklusi:
#!/bin/bash SERVERS=("server1" "server2" "server3") # Serverite nimekiri for SERVER in "${SERVERS[@]}"; do echo "Ühendun ${SERVER}-iga..." ssh ${SERVER} << EOF # Käsklused tarkvara installimiseks kaugserveris sudo apt update sudo apt install -y package-name EOF echo "Installatsioon ${SERVER}-is lõpetatud." doneEelised: lihtne põhikäskude jaoks, ei vaja täiendavaid tööriistu. Miinused: skaleeritavus, vigade haldamine, idempotentsus puudub.
-
Pakkettide levitamine. Loon paketid (deb, rpm) vajaliku tarkvara ja sõltuvustega. Seejärel levitan neid serveritele ja installin tavaliste paketihaldurite (apt, yum) abil. Võib kasutada
scpfailide kopeerimiseks ja SSH käskude käivitamiseks:#!/bin/bash SERVERS=("server1" "server2" "server3") PACKAGE_PATH="/path/to/package.deb" for SERVER in "${SERVERS[@]}"; do echo "Kopeerin paketi ${SERVER}-ile..." scp ${PACKAGE_PATH} ${SERVER}:/tmp/package.deb echo "Installin paketi ${SERVER}-il..." ssh ${SERVER} "sudo dpkg -i /tmp/package.deb" echo "Installatsioon ${SERVER}-is lõpetatud." doneEelised: kasutab natiivseid paketihaldureid, sõltuvuste haldamine. Miinused: nõuab pakettide loomist ja hooldust.
-
Spetsiaalse tarkvara kasutamine juurutamiseks. On olemas tööriistad, mis on mõeldud tarkvara ja image'ide levitamiseks, näiteks:
- PXE Boot (Preboot Execution Environment): operatsioonisüsteemide ja põhitoe installatsioon võrgust.
- Clonezilla: ketaste või jaotiste kloonimine.
- Oma skriptid
rsync-i kasutades: failide ja kataloogide sünkroniseerimine.
Iga tööriist sobib oma stsenaariumi jaoks. PXE on hea algse OS-i installimiseks, Clonezilla kiireks identsete image'ide levitamiseks, rsync konfiguratsioonifailide ja käivitatavate failide sünkroniseerimiseks.
Valiku meetod sõltub tarkvara spetsiifikast, serverite arvust, automatiseerimise nõuetest ja ekspertiisi tasemest. Esiteks kaalun bash-skripte lihtsate juhtumite jaoks ja paketihaldureid keerulisemate stsenaariumide jaoks, mis hõlmavad sõltuvusi.