sw telepítés távolról/tantermek központi adminisztrálása?

Sziasztok!

Tapasztalatokra, praktikákra lennék kíváncsi, hogy ki hogyan oldja/oldaná meg, hogy ~100 (nem sokára +20) gépen ne egyesével kelljen szoftvereket telepíteni. A plusz szépség, hogy minden gépen 3 windows van (xp en, w7 hu, w7 en), amiből tipikusan kettőn változnak gyakrabban a dolgok.
Sajnos abba, hogy miért 3, csak viszonylag kevés beleszólásom van, tekintsük ezt adottságnak.

Azaz ha pl. frissítés jön ki valamielyik sw-hez (ami nem auto-updates), vagy pl. lejár egy licensz, és kell helyette valami más, vagy valamelyik kolléga kitalálja, hogy x, vagy y szoftvert szeretné oktatni, akkor lehet végigmászni minden gépet - legalább kétszer...
Mondjuk az se lenne baj, ha Acrobat reader+böngészők+java+flash is elintézhető lenne központosítva, és nem a mezei usernek nyarvognának, hogy van frissítés. Óra van, egyrészt foglalkozzon azzal a hallgató, másrészt nyilván jogosultsága sincs.
Van egy operátorunk, de ő (is...) csinál mást is, illetve tudná értelmesebben tölteni az idejét, ha ezt meg lehetne oldani...
A gépek egy átjárón keresztül vannak az interneten, teljesen szeparált alhálózaton, ha ez számít.

Az MS-nek nem tudom, van-e erre eszköze (domain? - most win munkacsoportunk van, meg netware), de sok nem-MS szoftvert is használunk.
Fizetős célszoftver tipp is jöhet, ha értelmes, és megfizethető, talán (talán! - felsőoktatásról beszélünk...) megoldható, hogy valamennyit áldozzunk rá.
Érdekelnek házibarkács megoldások is - sokat lehet belőlük tanulni! :)

Előre is köszönöm, és kellemes ünnepeket kívánok minden fórumtársnak! :)

Hozzászólások

Az MS megoldasa az SMS, ill. mintha ujabban vmi mas lenne.
Van meg egy OPSI nevu cucc, de nem tudom, h az XP-t mnnyire tamogatja.

A chef es a puppet, meg ha jol tudom a cfengine is tamogatja vmilyen szinten a vindozt. De keress configuration management-re es gondolom talalsz millio eszkozt.

En egyebkent azt csinalnam, h hetente ujrahuznam a gepeket egyebkent is. Azt pedig Clonezilla-val. Igy a frissiteseket es telepiteseket csak a nehany master image-en kell megcsinalni.

tompos

Az újrahúzás megoldható lenne (mi FOG(project.org)-ot használunk erre, félévente-évente), ha
- legalább átmenetileg nem kellene a hallgatóknak tárolni adatokat a gépeken (lehetőleg lokálban)
- órák reggel 8-tól este 5-6-7-ig vannak, 7 körül pedig áramtalanítják az épületet. Ez néha megoldható, hogy ne így legyen, de rutinszerűen nem lehet tőle eltekinteni (porta nincs, okok tűzvédelmiek). Ergo, rendszeresen legalábbis, nem nagyon tudunk gépeket tízesével újrahúzni... :(
A többi tippet köszi, megnézem őket.

Az xp támogatás kevésbé érdekes (bár nem árthat)

szerk: (typo is) wow, OPSI nagyon jónak tűnik, FOG-gal együtt jól ellehetnek. :)
<-------
You can't grep on dead trees.

No...

Először is, ha oktatás és még van T.Sz. akkor járj utána, hogy melyik windows 7-et használhatod jogtisztán. Ha Enterprise akkor a nyelvi telepítők lejönnek a windows frissítéssel. Innentől a win-EN kilőve, egy win7-ed lesz, és a nyelvet be lehet állítani (ezt hivják MUI-nak).

WIN HU <-> WIN EN probléma részben megoldva (nyelvcserét megoldod: üdvözlő képe. 2 user, vagy domain roaming, beállít / user)

XP... na ok... van XP MODE, de akkor gép kell alá, és az nem igazán XP... ha elég erős vasak vannak rakj fel XP MODE-ot (virtuális xp, vagy akár virtualboxban) -> problémák: pendrive nyüsszögések stb.

Központi frissítések... keress rá a WSUS-ra... nektek elvileg van win2008r2, WSUW-be... nincs probléma, ha nincs domain, szívsz és faragsz...

Adobe, JAVA és társai.... ha valaki ezügyben okos azt én is szivesen látom...

Köszönöm, a tippeket!
Ezek nekem megvannak, pontosan így is lenne, ha a tantermek teljesen az én kezemben lennének... Illetve pontosabban: örököltem a setup nagy részét, és nehéz év közben (meg néha nyáron is (summer school)) változtatni, pláne úgy, hogy nagyon ki kell tesztelni, mi hogyan működik (orvostanhallgatók nagyon nagy csodákra képesek ám...! :))
XP mode szintén oké, de a gépek egy része nem bírja.
Win server lic nincs, sajnos, WSUS kilőve... :(
<-------
You can't grep on dead trees.

Eltelt egy kis idő a kérdés óta, de lehet még aktuális. A Puppet és a Chef (a chefről csak olvastam, de a puppetet használtam is) is tökéletesen meg tudja oldani a problémáidat.
Gépenként, termenként, osenként tetszőlegesen tudod frissíteni a programokat minden gépen. Én épp most dolgozom egy 80 gépes, 3 infótermes iskola automatizálásán, és már ebben a korai fázisban látom, hogy minden ilyesmit meg lehet oldani a puppet-el.

- Puppetből az open source verzió is elég?
- Működnek ezek akkor is ha nincs Windows tartomány/AD?
Pl. Win 7 home esetén, ahol a központosított beléptetésre max. a pGina-t tudom használni.
http://mutonufoai.github.io/pgina/
http://pgina.org/
--
Légy derűs, tégy mindent örömmel!

Igen. Az open source verzióhoz is van windows kliens, és mindent meg lehet vele oldani, én is azt használom. Az Enterprise verzió funkcionalitásban lényegében egy grafikus management felületben különbözik az open source-tól, bár az open source-hoz is ott a dashboard.
Igen, működik AD nélkül is. Jogosultság szempontjából két féle képpen lehet telepíteni a klienst, vagy úgy hogy a SYSTEM felhasználó alatt fusson, vagy egy általunk megadott felhasználó alatt. A SYSTEM esetében nincs hozzáférése a hálózathoz, de ha létrehozol neki egy felhasználót minden gépen, és annak a nevében futtatod, akkor már eléri a hálózatot is (magát a puppet szervert persze eléri SYSTEM felhasználó alatt is).
A te esetedben a legpraktikusabb, hogy minden gépen létrehozol a puppetnek egy felhasználót, és minden megosztásnál is, ahonnan deployolod a kitteket, ennek a felhasználónak adsz jogokat.
A kitteket megosztani puppet alól is lehet, puppet protokollal, akkor lehet elég a system felhasználó, de ezt nem próbáltam.
Én így telepítem a klienseket:
msiexec /qn /i \\server\kit\puppet.msi PUPPET_AGENT_ACCOUNT_DOMAIN=valami PUPPET_AGENT_ACCOUNT_USER=admin PUPPET_AGENT_ACCOUNT_PASSWORD=jelszo
Ha nincs AD-d akkor a DOMAIN-t hagyd el.

SYSTEM felhasználóval a lokális gépre push-olni kell a kit-eket, majd "require"-olni azt a telepítős task-ban.

Ezt választottam, mert valószínűleg fog menni Interneten keresztül is.
Valahogy így:

file {'Firefox current':
require => File['puppet'],
path => 'c:\puppet\Firefox Setup 27.0.1.exe',
ensure => present,
source => 'puppet:///flat/Firefox Setup 27.0.1.exe',
owner => 'Administrator',
source_permissions => ignore,
}
package {'Firefox Current':
require => File['Firefox current'],
ensure => installed,
name => 'Firefox Setup 27.0.1',
source => 'c:\puppet\Firefox Setup 27.0.1.exe',
install_options => '-ms',
# Program Files correctly maps to (x86) on x64 systems
}

owner és source_permissions fontos. Beletelt pár órácskámba mire rájöttem miért nem fut a telepítés ezek nélkül.

Működik XP, Vista, Win7, Win8-on, mindegy milyen verzió. AD-hez semmi köze, nem azt helyettesíti, csak software deployment-re jó. XP nem támogatott már de a jelenlegi verzió megy még rajta.

Az OSS verziót össze kell kalapálni, ami korántsem egyszerű. Az OSS puppet out-of-the-box annyit tud, hogy félóránta felébred, keresi a szervert s amennyiben újabb verziójú rajta a "catalog", frissít.

Enterprise vezióban mintha úgy láttam volna hogy az mcollective alapból integrálva (ezzel például lehet utasítani a klienst/agent-et, hogy soron kívül frissítsen), van hozzá csilivili GUI és ki tudja mi egyéb finomság. Viszont elég komoly pénzbe kerül.

Nekem nem tűnt bonyolultnak:
a puppetlabs-tól letöltöttem egy dpkg-t ami betette az aktuális repókat, utána apt-get install puppetmaster
A kliensekre feltettem a puppet.msi-t és a szerveren a puppet cert sing --all felvettem őket az engedélyezett kliensek közé.
Kb ennyi kell ahhoz, hogy menjen.
Ahhoz, hogy csináljon is valamit, meg kell írni az /etc/puppet/manifest/site.pp-t, de maga a szerver-kliens összehozása csak ennyi.

Az mcollective egy olyan extra, ami nagyon kevesen használnak ki szerintem. A dashboard simán fölment, csak be kell állítani a hozzáféréseket, a puppetmaster felől és az eléréseket a puppetmaster felé, hogy működjön is. Utána elvileg megy, de egy iskola vagy kisebb cég esetében nagyon jól meg lehet lenni nélküle is.

Szia!

Köszönöm a késői választ!
Közben nagy megelégedéssel, voltaképpen problémák nélkül használjuk a wpkg-t.
Az xml-szerkesztésben a notepad++ óriási segítség, egyébként meg elég egyszerű megmondani neki, hogy mi akarunk, és nagyon komoly dolgokat tud.
Az erőforrás-igénye pedig szinte hihetetlenül alacsony. Szóval nekünk bejött... :)
Igaz, win only, de nekünk egyelőre az kell. Amúgy nem is fájt volna annyira a fejem... :)
<-------
You can't grep on dead trees.

Ha valakit érdekelne, beírom ide, hogy lépésről lépésre, hogy működik az egész:
1. egy szerverre, az én esetemben ubuntu 12.04.04, felteszem a következőket (alapból is benne van, de talán a 2.7-es verzió):
wget https://apt.puppetlabs.com/puppetlabs-release-precise.deb
sudo dpkg -i puppetlabs-release-precise.deb
sudo apt-get update
sudo apt-get install puppetmaster

A kliensekre feltettem a puppet-3.4.x.msi-t, a telepítésnél mindent alapértelmezetten hagytam, mivel a DNS szerveren betettem, hogy a puppet szervert puppet néven érjék el. Ezt a klienseken a hosts fájl módosításával is meg lehet oldani.

A szerveren a puppet cert sign --all paranccsal engedélyeztem az összes kliensnek a hozzáférést.
Evvel már megy is a szerver és a kliensek megkapják a feladatlistákat.
Még egy lépés van, a feladatok meghatározása:
Ehhez létre kell hozni a /etc/puppet/manifests/site.pp-t és pl ezt írni bele:
class 7z {
package { "7-Zip 9.20":
ensure => '9.20.00.0',
source => '\\server\deploy\7z.msi',
install_options => ['/qn']
}
}

class firefox {
package { "Mozilla Firefox 27.0.1 (x86 hu)":
ensure => '27.0.1',
source => '\\server\deploy\firefox.exe',
install_options => ['/S']
}
}

class freecommander {
package { "FreeCommander XE":
ensure => 'Preview',
source => '\\server\deploy\freecommander.exe',
install_options => ['/SP-', '/VERYSILENT']
}
}

class freepascal {
package { "Free Pascal 2.6.2":
ensure => 'installed',
source => '\\server\deploy\fpc.exe',
install_options => ['/SILENT']
}
}

class krita {
package { "krita":
ensure => '9.20.00.0',
source => '\\server\deploy\krita.msi',
install_options => ['/qn']
}
}

class libreoffice {
package { "LibreOffice 4.1.5.3":
ensure => '4.1.5.3',
source => '\\server\deploy\libreoffice.msi',
install_options => ['UI_LANGS=en_US,de,fr,ro,hu', 'ISCHECKFORPRODUCTUPDATES=0', 'QUICKSTART=1']
}
}

class notepad {
package { "Notepad++":
ensure => '6.5.4',
source => '\\server\deploy\npp.exe',
install_options => ['/S']
}
}

class xnview {
package { "XnView 2.13":
ensure => '2.13',
source => '\\server\deploy\xnview.exe',
install_options => ['/SILENT']
}
}

#info2
node /^gep[2][0-9][0-9]\.suli\.local$/ {
include 7z
include bluegriffon
include firefox
include freecommander
include libreoffice
include notepad
include xnview
}

#info3
node /^gep[3][0-9][0-9]\.suli\.local$/ {
if $::kernel == windows {
include 7z
include bluegriffon
include firefox
include krita
include libreoffice
include notepad
include freepascal
}
}

Azt, hogy a puppet, milyen néven keresse a telepített csomagokat a kliensen lefuttatott puppet resource package paranccsal lehet megállapítani.

Ha még aktív a téma akkor adnák én is egy javaslatot. Én EMCO Remote Installer-t használom 74 gépen történő szoftverek frissítésre illetve törlésére stb. :) Egyszerű hasznos program és peer-to-peer hálózatokban is lehet használni ami számomra jelentett előnyt mert nincsen szerverre keret hogy központosítani tudjam az egészet. Viszont én is kérdezek ehhez kapcsolódóan :) Hogy még milyen software deployment programokat ismertek amiben van olyan funkció hogy peer-to-peer hálózaton egy PopUp ablakot tudjak küldeni az operátoroknak úgy hogy a gépekre ne keljen telepíteni semmilyen klienst se. Jelenleg a ScreenPopUp-al oldom meg csak ezzel az a gondom hogy kell a hálózaton egy közös megosztott mappát csinálni ahova az összes operátori gép belelát. Na ez nekem tök jó is lenne mert freeware csak ám a főnökség nem hajlandó egy különgépet pluszba üzembe helyezni mert árampocséklás. Valakinek ötlet erre a Popup megoldásra? cmd msg parancs kilőve illetve a net send is. Ha tudnátok akkor win formos megoldás lenne a legjobb hogy a csoportvezetők tudják ezt használni.