Moduly prostředí (software) - Environment Modules (software)
![]() | Tento článek má několik problémů. Prosím pomozte zlepšit to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
![]() | |
Stabilní uvolnění | 4.6.1 / 14. listopadu 2020 |
---|---|
Úložiště | ![]() |
Operační systém | Unixový |
Licence | GNU General Public License # verze 2 |
webová stránka | moduly |
The Moduly prostředí systém je nástroj, který pomáhá uživatelům spravovat jejich Unix nebo Linux prostředí prostředí tím, že umožňuje dynamicky provádět nebo odstraňovat skupiny souvisejících nastavení proměnných prostředí.
Moduly existují od počátku 90. let[1] a používá se v některých z největších počítačových center[2] nasadit uživatelům více verzí různých softwarových nástrojů. Národní centrum pro výzkum v oblasti energetického výzkumu (NERSC) uvádí, že ke správě téměř veškerého softwaru používají moduly prostředí.[3] Moduly prostředí jsou specifikovány jako požadavek na základní konfiguraci DoD High Performance Computing Modernisation Program (HPCMP)[4] Konfigurace základní úrovně projektu[5] tým pro účast v DoD Supercomputing Resource Centers (DSRC).
soubory modulů
Systém modulů je založen na modulových souborech,[6] které určují skupiny nastavení prostředí, které je třeba provést společně. Modulové soubory lze instalovat na centrálním místě pro obecné použití nebo v uživatelském adresáři pro osobní použití. Soubory modulů prostředí jsou zapsány v souboru Tcl (Tool Command Language) a jsou interpretovány programem modulecmd prostřednictvím modulu[7] uživatelské rozhraní.
Klíčovou výhodou modulů prostředí je, že je nezávislý na prostředí a podporuje všechny hlavní skořápky, například bash, ksh, zsh, sh, tcsh a csh. Druhou klíčovou výhodou je, že umožňuje používat více verzí programu nebo balíčku ze stejného účtu pouhým načtením správného modulu. Tyto dvě výhody pomohly učinit moduly prostředí součástí většiny nastavení clusterů HPC. Inspirovalo také několik alternativních implementací, jako je lmod z University of Texas, který je napsán v Lua místo TCL.
soubory modulů jsou vytvářeny pro jednotlivé aplikace a verze. Mohou být dynamicky načítány, vykládány nebo přepínány. Spolu se schopností používat více verzí stejného softwaru jej lze také použít k implementaci zásad webu týkajících se přístupu a používání aplikací.
výchozí adresář modulů
Výchozí cesta hledání modulů je ve skrytém konfiguračním souboru, který můžete zobrazit pomocí:
$ kočka ${DOMŮ MODULŮ}/init/.modulespath/ etc / modulefiles # CentOS, Scientific Linux, RHEL/ usr / local / Modules / modulefiles # Sestavení z výchozího zdroje
The / etc / modulefiles adresář používaný některými distribucemi (nebo jakýkoli jiný adresář) lze použít po sestavení ze zdroje úpravou souboru $ {MODULESHOME} /init/.modulespath soubor.
Přidejte do cesty své vlastní moduly
The $ {MODULESHOME} / modulefiles /use.own modul v zásadě provádí tyto kroky:
mkdir $ DOMŮ/ privatemodules cp ${DOMŮ MODULŮ}/ modulefiles / null $ DOMŮ/ privatemodules modul použít --append $ DOMŮ/ privatemodules
Použijte soubor verze v hierarchické organizaci
Příkazy v této části vyžadují přístup pro čtení / zápis / spuštění do adresáře / etc / modulefiles. Místo toho lze použít $ HOME / privatemodules nebo jiný adresář spolu s „module use --append“ nebo úpravou konfiguračního souboru se specifikací výchozí cesty hledání modulů.
Výchozí adresář modulefiles je zpočátku prázdný. Zkopírujte nulový modul do výchozího adresáře modulefiles, aby se zobrazil jako „modul k dispozici“. Následující používá moduly null a module-info k zobrazení použití souboru verze v hierarchické organizaci a jejich vliv na využití modulu a show modulu:
mkdir / etc / modulefiles / test cp ${DOMŮ MODULŮ}/ modulefiles / null /etc/modulefiles/test/2.0 cp ${DOMŮ MODULŮ}/ modulefiles / module-info /etc/modulefiles/test/1.0 modul využít modul ukázat test
Nastavte první verzi jako výchozí:
echo '#%Modul' > /etc/modulefiles/test/.verze echo 'set ModulesVersion "1.0"' >> /etc/modulefiles/test/.version modul zobrazí modul test testovací modul / 2.0
Přepněte na novější verzi jako výchozí pomocí:
rm /etc/modulefiles/test/.verze echo '#%Modul' > /etc/modulefiles/test/.verze echo 'set ModulesVersion "2.0"' >> /etc/modulefiles/test/.version modul využije ukázku modulu test
Po výše uvedeném po nové instalaci ze zdroje byste viděli:
$ modul k dispozici-------------------- /usr/local/Modules/3.2.10/modulefiles ------------------ ---dot modul-git modul-informační moduly null use.own------------------------------- / etc / modulefiles --------------- ----------------nulový test / 1,0 test / 2,0 (výchozí)--------------------------- / home / user / privatemodules ----------------- ---------nula$ show modulu test-------------------------------------------------------------------/etc/modulefiles/test/2.0:module-whatis nedělá absolutně nic -------------------------------------------------------------------$ testovací modul / 1.0-------------------------------------------------------------------/etc/modulefiles/test/1.0:module-whatis vrací všechny různé hodnoty informací o modulu +++ informace o modulu +++++++++++++++++++++++++++++++++++++vlajky = 2režim = zobrazeníname = test / 1.0specifikováno = test / 1.0shell = bashshelltype = shverze = test / 1.0uživatel = pokročilýstopa = 0tracepat = -. *symboly = * undef *+++ informace +++++++++++++++++++++++++++++++++++++++++++++++hostname = localhostúroveň = 1načten null = 0knihovna = /usr/local/lib/tcl8.6nameofexecutable =sharedlibextension = .sotclversion = 8.6patchlevel = 8.6.1+++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------------------
Automatická inicializace modulů
Moduly prostředí na distribucích Scientific Linux, CentOS a RHEL v balíčku modulů prostředí zahrnují modules.csh a modules.sh skripty pro /etc/profile.d adresář, díky kterému je inicializace modulů součástí výchozí inicializace prostředí. Jednou z výhod modulů prostředí je jeden soubor modulu, který podporuje uživatele prostředí bash, ksh, zsh, sh i tcsh a csh shell pro nastavení a inicializaci prostředí. Díky tomu je správa složitých prostředí o něco méně komplikovaná.
Pro sestavení zdroje lze ručně nakonfigurovat automatizaci pro všechny uživatele.
bash, ksh, zsh, sh automatická inicializace modulů
/etc/profile.d/modules.sh z atd / global / profile.modules soubor v adresáři sestavení modulů 3.2.10.
past "" 1 2 3 případ "$0" v -bash|bash|* / bash) . / usr / local / Modules / default / init / bash ;; -chš|ksh|* / ksh) . / usr / local / Modules / default / init / ksh ;; -zsh|zsh|* / zsh) . / usr / local / Modules / default / init / zsh ;; *) . / usr / local / Modules / default / init / sh ;; # výchozí esac past 1 2 3
Zkopírujte atd / global / profile.modules soubor z adresáře sestavení modulů 3.2.10 do adresáře inicializace systému:
$ sudo cp etc / global / profile.modules /etc/profile.d/modules.sh
Přidejte symbolický odkaz verze 3.2.10 na výše uvedené obecné adresy:
$ CD / usr / local / Modules$ sudo ln -sT 3.2.10 výchozí
Automatická inicializace modulů tcsh, csh
A /etc/profile.d/modules.csh symbolický odkaz na atd / global / profile.modules Soubor v adresáři sestavení modulů 3.2.10 umožňuje těmto uživatelům automatickou inicializaci modulů.
Instalace na Linux
Instalace modulů prostředí na Linux pomocí yum a rpm
V distribucích Scientific Linux, CentOS a RHEL jsou moduly prostředí Environment v balíčku modulů prostředí, které lze nainstalovat pomocí:
sudo yum nainstalovat moduly prostředí
Po instalaci lze informace o balíčku zobrazit pomocí:
rpm -qi environment-modulesrpm -ql environment-modules
Instalace modulů prostředí na Linux pomocí apt a dpkg
V Ubuntu nebo systémech využívajících apt-get lze moduly prostředí nainstalovat s:
sudo apt-get install environment-modules
Po instalaci lze informace o balíčku zobrazit pomocí:
dpkg -L moduly prostředí
Instalace modulů prostředí na Linux ze zdroje
Ačkoli instalace z úložiště distribucí Linuxu pomocí tohoto správce aktualizací distribucí je nejjednodušší, software lze nainstalovat ze zdroje. Řešení závislostí je pro instalaci ze zdroje nejtěžší úkol. Typický cyklus konfigurace, provedení a instalace se může bolestně zpomalit, protože každé vylepšení konfigurace odhalí další závislost, která není ve vašem výchozím prostředí k dispozici. Tato část obsahuje kroky k instalaci balíčku modulů prostředí na zdroj, včetně kompilace Tcl (Tool Command Language) ze zdroje jako závislost.
8.6.1 verze Tcl (Tool Command Language) postaveno z / usr / local / src
Ačkoli 64bitové úložiště PCLinuxOS obsahují Tcl (Tool Command Language) nezahrnují vývojový balíček s konfiguračními soubory potřebnými k vytváření modulů prostředí v systému Linux ze zdroje. Budova Tcl ze zdroje zpřístupní požadované soubory.
Zdroj Tcl: http://sourceforge.net/projects/tcl/files/Tcl/
Extrahujte zdroj po stažení
CD / usr / local / src tar -xvzf ~ / Soubory ke stažení / tcl8.6.1-src.tar.gz
Nakonfigurujte, vytvořte, nainstalujte
CD /usr/local/src/tcl8.6.1 unix / configure make sudo make install
3.2.10 verze modulů vytvořených z / usr / local / src
Extrahujte zdroj po stažení
CD / usr / local / src tar -xvzf ~ / Downloads / modules-3.2.10.tar.gz
Nakonfigurujte, vytvořte, nainstalujte
CD /usr/local/src/modules-3.2.10CPPFLAGS=„-DUSE_INTERP_ERRORLINE“ ./configuremakesudo provést instalaci
Viz také
- Tcl # jako jazyk příkazu nástroje
- Softwarová prostředí Xsede. Prostředí Extreme Science and Engineering Discovery Environment - National Science Foundation
- Popis modulů NICS - The National Institute for Computational Sciences at Oak Ridge National Laboratory - Department of Energy
- Lmod ― Lua - na základě modulového systému
- Spack - Package Manager pro HPC Software vyvinutý na Lawrence Livermore National Laboratory
Reference
- ^ Furlani, John L. (30. září - 3. října 1991). „Moduly: Poskytování flexibilního uživatelského prostředí“ (PDF). Sborník příspěvků z páté konference o velké instalaci instalačních systémů (LISA V). San Diego, CA: 141–152. Citováno 9. února 2014.
- ^ "Uživatelská podpora NICS Kraken Moduly Popis". Národní institut pro výpočetní vědy (NICS). Národní laboratoř v Oak Ridge - ministerstvo energetiky. 22. května 2011. Archivovány od originál dne 22. února 2014. Citováno 9. února 2014.
- ^ „Softwarové prostředí modulů NERSC“. Národní vědecké výpočetní středisko pro energetický výzkum (NERSC). Úřad pro vědu - ministerstvo energetiky. 07.02.2014. Citováno 19. února 2014.
- ^ „Použití modulů pro přístup k více verzím softwaru“. Základní konfigurace. DoD High Performance Computing Modernisation Program (HPCMP). 20. března 2008. Archivovány od originál dne 22. února 2014. Citováno 9. února 2014.
- ^ „Základní konfigurace programu High Performance Computing Modernisation Computing“. Základní konfigurace. DoD High Performance Computing Modernisation Program (HPCMP). Archivovány od originál dne 22. února 2014. Citováno 9. února 2014.
- ^ John L. Furlani a Peter W. Osel (červenec 2009). "modulfile - soubory obsahující Tcl kód pro balíček modulů". SourceForge. manuálová stránka. Citováno 9. února 2014.
- ^ John L. Furlani a Peter W. Osel (červenec 2009). "modul - příkazové rozhraní k balíčku modulů". SourceForge. manuálová stránka. Citováno 9. února 2014.
externí odkazy
- http://modules.sourceforge.net/ - domovská stránka projektu Moduly prostředí
- John L. Furlani, Moduly: Poskytování flexibilního uživatelského prostředí Sborník příspěvků z páté konference o velké instalaci instalačních systémů (LISA V), s. 141–152, San Diego, CA, 30. září - 3. října 1991.
- http://lmod.sourceforge.net - alternativní implementace pomocí LUA místo Tcl
- http://www.lysator.liu.se/cmod/ - alternativní implementace pouze pomocí C.
- Uživatelská příručka k modulům prostředí PennState
- Přetáhněte své návrhové prostředí kopáním a křikem do 90. let s moduly! - SNUB Boston 2001 - Erich Whitney, Axiowave Networks, Mark Sprague, ATI Research