Middle+
Hogyan telepítenéd a szoftvert nagy számú gépre, ha nincs hozzáférésed az Ansible-hez és a Pythonhoz?
sobes.tech MI
Válasz az MI-től
Parancssori szkriptek (Bash Linux/Unixhez, Batch/PowerShell Windows-hoz) és SSH/WinRM kombinációját használnám.
#!/bin/bash
# Példa szkript Linuxon SSH-n keresztüli szoftver telepítéséhez
SOFTWARE_NAME="nginx"
REMOTE_HOSTS=("user@host1" "user@host2" "user@host3") # Távoli gépek listája
for host in "${REMOTE_HOSTS[@]}"; do
echo "$host-on telepítés $SOFTWARE_NAME..."
ssh "$host" "sudo apt-get update && sudo apt-get install -y $SOFTWARE_NAME"
if [ $? -eq 0 ]; then
echo "$host-on sikeresen telepítve $SOFTWARE_NAME"
else
echo "$host-on telepítési hiba"
fi
done
Windows esetén:
# Példa szkript Windows-ra WinRM-en keresztüli szoftver telepítéshez
$softwareName = "notepadplusplus" # Chocolatey csomag neve példaként
$remoteHosts = @("host1", "host2", "host3") # Távoli gépek listája
foreach ($host in $remoteHosts) {
Write-Host "$host-on telepítés $softwareName..."
# Chocolatey használata példaként (előzetesen telepítve kell legyen a célgépeken)
Invoke-Command -ComputerName $host -ScriptBlock { choco install $using:softwareName -y }
if ($?) {
Write-Host "$host-on sikeresen telepítve $softwareName"
} else {
Write-Host "$host-on telepítési hiba"
}
}
Ezen kívül lehetőség van:
- SSH kulcs alapú hitelesítés: Az automatikus bejelentkezés jelszó kérés nélkül.
- Fájlok központosított elosztása: Telepítési csomagok vagy szkriptek átvitele a gépekre.
- Cron/Task Scheduler: Ütemezett futtatás meghatározott időpontban vagy időközönként.
- PXE Boot: Operációs rendszerek és alap szoftverek telepítése nulláról.
- Egyedi Bash/Batch/PowerShell szkriptek: Komplexebb konfigurációk a telepítés után.
Az összehasonlító táblázat:
| Módszer | Előnyök | Hátrányok | Alkalmazás |
|---|---|---|---|
| Bash/SSH | Széles körben elérhető, egyszerű alap szkriptekhez. | Korlátozott állapotkezelési lehetőségek, hibakezelés nehézségei. | Linux/Unix rendszerek. |
| Batch/PowerShell/WinRM | Windows beépített eszközei. | Kevésbé szabványos, mint az SSH/Bash, WinRM konfigurálást igényel. | Windows rendszerek. |
| Központosított fájlok | Nagy fájlok elosztására kényelmes. | További végrehajtó mechanizmus szükséges a gépeken. | Bármilyen rendszerek. |
| Cron/Task Scheduler | Időalapú automatizálás. | Nem alkalmas interaktív telepítésre vagy manuális indításra. | Bármilyen rendszerek. |
| PXE Boot | Ideális az újra telepítéshez. | Konfigurálási nehézségek, korlátozott újrahasználhatóság működő rendszereken. | Új/újratelepített rendszerek. |
Ezeknek a módszereknek a alkalmazása alapos tervezést, szkriptek tesztelését és megbízható hibakezelő és naplózó mechanizmusokat igényel. A szkriptek verziókezelése is kritikus.