HP-UX
(Hewlett Packard UniX) est une implementation
proprietaire
du
systeme d'exploitation
Unix
, base sur
System V
, developpee par
Hewlett Packard Enterprise
. HP-UX est utilise sur des serveurs et des stations de travail HP 9000 et Integrity, equipes respectivement de
processeurs
PA-RISC
(32 et 64 bits), concus par HP, et Intel
Itanium
. HP-UX etait egalement disponible pour des systemes
Apollo
et les premieres versions fonctionnerent sur des serveurs
HP 9000
de serie 200, 300 et 400, bases sur des
processeurs Motorola de serie 68000
, ainsi que sur des HP 9000 de serie 500, bases sur les processeurs proprietaires
HP FOCUS
.
HP-UX a ete le premier Unix avec permissions d'acces aux fichiers de type
liste de controle d'acces
(ACL) comme alternative au systeme standard de permission Unix. HP-UX a egalement ete un des premiers Unix a inclure un
gestionnaire de volumes logiques
integre. HP a une longue relation avec
Veritas Software
(en)
et integre
VxFS
en tant que systeme de fichier principal. HP-UX 11i est un des Unix commerciaux leaders pour la virtualisation integree aux services critiques, la performance observee, la haute disponibilite, ainsi que la facilite de gestion.
HP-UX est un concurrent direct de
Sun
Solaris
, d'
IBM
AIX
et de
GNU/Linux
.
HP-UX utilise
XFree86
, l'environnement de bureau
CDE
et de nombreux
logiciels libres
, dont le logiciel libre
Bastille
auquel HP contribue (a l'origine developpe pour Red-Hat Linux).
La version, publiee en
, est la
11i v3
(aussi connue sous le nom de 11.31). Comme la version precedente, cette version supporte les processeurs
PA-RISC
et
Itanium
. La nouvelle version introduit
NFSv4
et le support
hyperthreading
pour les processeurs Itanium.
La derniere version est HP-UX 11i v3 (11.31), dont le dernier update est
.
HP-UX est fourni en quatre versions differentes pre-integrees et testees.
- L'environnement d'operation de base (base operating environment - BOE) est le
systeme d'exploitation
de base, auxquels s'ajoutent de nombreux
paquets
supplementaires, tels que SRP (Partitions de ressources securisees),
Bastille
,
OpenSSL
, Secure Shell (une implementation d'
OpenSSH
),
IPSec
, Fedora Directory Server,
Apache
,
Java
,
Tomcat
, Ignite-UX, etc.
- L'environnement d'operation
Haute Disponibilite
(High-availibility Operating Environment - HA-OE) est centre autour de la solution de cluster ServiceGuard. Il contient l'environnement d'operation de base ainsi que ServiceGuard (et ses extensions et boites a outils pour NFS, par exemple), MirrorDisk/UX, OnlineJFS et GlancePlus.
- L'environnement d'operation Virtualisation (Virtual Server Environment - VSE-OE) permet aux administrateurs de serveurs HP-UX d'utiliser l'environnement de base, mais, au-dela, d'utiliser les outils de virtualisation vPar et Integrity Virtual Machines. Il inclut egalement les outils de gestion de charge Global Workload Manager et de consolidation Capacity Advisor.
- Finalement, l'environnement d'operation de
centre de donnees
(Datacenter Operating Environment - DCOE) inclut les trois environnements d'operation precedents.
Les systemes HP-UX proposent differentes couches de
virtualisation
afin de repondre a differents types de charge.
- les nPars (node Partition - partition de nœud) sont uniquement disponibles pour les systemes Superdome 2 et constituent un groupement logique de plusieurs serveurs en
lame
physiques. Cette approche offre une granularite au niveau de la cellule (deux processeurs, huit cœurs) et a l'avantage d'une isolation electrique complete entre les composants. Il est possible d'installer HP-UX directement sur la nPar (bare-metal) ou de creer une vPar (voir ci-dessous)
- les vPars (virtual Partitions - partitions virtuelles) sont egalement uniquement disponibles pour les systemes Superdome 2. Elles permettent de subdiviser une nPartition avec une granularite d'un cœur de processeur. Il est par exemple possible d'avoir, sur une nPar de deux processeurs/huit cœurs, une vPar d'un cœur et une autre vPar de sept cœurs.
- les
Integrity Virtual Machines
peuvent etre installees sur tout type de serveur HP-UX (excepte les vPars). Le systeme hote peut etre, par exemple, une nPar ou un serveur HP Integrity en lame ou monte en
rack
. Les Integrity Virtual Machines (egalement appelees HPVM) fonctionnent sur le principe d'une architecture completement partagee. Les ressources (processeurs,
memoire vive
,
I/O
) sont partagees entre
machines virtuelles
. Ce systeme presente l'avantage d'etre extremement flexible : les machines virtuelles peuvent etre migrees d'un hote a un autre sans interruption du systeme d'exploitation. Elles peuvent egalement etre integrees a un environnement de clustering MC/ServiceGuard pour creer des machines virtuelles a haute disponibilite.
- Les Secure Resource Partitions (SRP - partitions de ressources securisees) permettent d'isoler des applications a l'interieur meme de toute instance du systeme d'exploitation HP-UX. Les SRP creent des compartiments isoles et permettent d'empecher toute
communication inter-processus
(IPC) ou signaux envoyes a des processus envoyes d'une partition a une autre. De plus, elles permettent d'attribuer a une partition, soit des parts de processeur (grace au mecanisme de FSS - fair share scheduler), soit des processeurs entiers (grace au mecanisme de pSets - processor sets). Enfin, la memoire vive, certains systemes de fichiers, ainsi que les interfaces reseaux peuvent etre attribuees exclusivement a une SRP. Des patrons pour
Tomcat
, SSH et
Oracle
sont disponibles afin d'integrer facilement les applications a ces containers.
Depuis l'introduction d'HP-UX 11i v3, la gestion du
stockage
est faite au moyen de fichiers speciaux appeles Persistent Device Special Files (Persistent ou Agile DSF, par exemple : /dev/disk/disk6), par opposition aux Legacy DSF (par exemple /dev/dsk/c2t0d4) utilises dans les versions precedentes de HP-UX. Ces fichiers assurent la connectivite, par exemple, aux disques locaux ou a des
LUN
presentees via
SAN
. Les Persistent DSF assurent le multipathing, permettant aux donnees de transiter par differents chemins dans la fabrique SAN, ils gerent le
load-balancing
entre ces differents chemins, ainsi que le
failover
, qui assure la continuite du service, meme en cas de probleme sur un des chemins. De plus, ces fichiers restent constants, meme en cas de changements de taille de la LUN. Les produits de gestion du multi-pathing EMC PowerPath, HP Securepath ou Veritas DMP ne sont donc plus necessaires sur HP-UX 11.31.
Il existe trois choix de systemes de gestion de volumes logiques (LVM)
- LVM est le systeme de gestion de volumes logiques (LVM) de base d'HP-UX. Il supporte des volumes physiques jusque 16
To
, jusqu'a 2048 groupes de volumes (volume groups - VG) et des volumes logique (logical volumes - LV) d'une taille de 256
To
.
- Veritas Volume Manager (VxVM)
- Cluster Volume Manager pour les applications deployees en cluster, par exemple avec ServiceGuard
Au niveau du systeme de fichiers, HP-UX supporte le systeme de fichier de base de Veritas (VxFS-lite), le systeme de fichiers OnlineJFS (le VxFS complet), ainsi que CFS (Clustered File System) et HFS, d'origine HP mais inusite aujourd'hui car manquant de fonctionnalites.
HP-UX peut compter sur un ecosysteme complet d'applications permettant une administration aisee.
Software Assistant (SWA) permet de surveiller le niveau de rustine (patch) de centaines de serveurs afin d'appliquer les changements rapidement apres que des alertes, par exemple de securite, ont ete emises.
Ignite-UX permet de deployer des instances d'HP-UX, soit en installant les paquets un par un, soit en utilisant une image logicielle (golden image), par le reseau Ethernet, utilisant le mecanisme de PXE boot. Il est egalement possible d'utiliser Ignite pour creer des sauvegardes d'HP-UX dans le cadre d'un plan de reprise d'activite (PRA).
Pour les administrateurs qui ne se sentent pas a l'aise avec la ligne de commande, HP-UX dispose d'une application web appelee System Management Homepage qui permet d'effectuer toutes les taches quotidiennes d'administration de maniere graphique. Par exemple, augmenter la taille d'un volume logique et de son systeme de fichier peut etre realise de maniere tres simple, l'extension du volume logique et du systeme de fichier etant combine en une seule action.
Software Distributor (SD) est l'outil d'administration des paquets logiciels. Il fournit un ensemble d'outils permettant la creation et l'installation de paquets. Ces paquets peuvent etre groupes dans un depot logiciel (depot). Un serveur peut contenir de multiples depots pour l'installation de paquets differents, et meme de systemes complets.
Les outils d'operations de distribution de logiciel sont en general executees a la ligne de commande. Software Distributor inclut les commandes suivantes :
- swacl ? l'acces aux produits ou depots logiciels peuvent etre controles granulairement par une ACL (Access Control List). Cette liste est geree par la commande swacl
- swask ? execute des scripts de demande de logiciel interactifs et enregistre les reponses pour un usage futur par les fichiers de swinstall et de swconfig
- swconfig ? configure ou deconfigure un paquet logiciel installe
- swcopy ? copie un paquet logiciel sur un depot
- swinstall ? installe un ou plusieurs paquets logiciels sur un systeme local ou distant. Ceci peut causer un redemarrage si les paquets installes l'exigent
- swjob ? cree et surveille les taches batch de Software Distributor
- swlist ? liste les produits logiciels installes ou le contenu de depots. Un nombre considerable de parametres de paquets peuvent etre affiches en utilisant les arguments appropries de cette commande
- swmodify ? modifie les particularites d'un paquet logiciel installe sur un systeme ou charge sur un depot
- swpackage ? un fichier de specification est passe a cette commande, indiquant comment ce paquet doit etre construit. Le paquet peut ensuite etre ajoute a un depot ou sur un media pour etre envoye par la poste
- swreg ? enregistre ou supprime un depot. Seuls les depots enregistres seront affiches en utilisant swlist pour depots sur un serveur distant
- swremove ? supprime un paquet d'un systeme ou depot. Ceci peut causer un redemarrage si les paquets a supprimer l'exigent
- swverify ? teste un produit logiciel pour determiner si l'etat d'installation est normal
Les paquets logiciels sont construits par un fichier de specification, un groupe de scripts d'installation, et le contenu du logiciel propre. Les scripts d'installation sont executes durant l'installation, la verification, la suppression et peuvent etre utilises afin de preparer un systeme pour le logiciel ou activer ou desactiver des paquets.
Le fichier de specification determine comment le paquet logiciel sera organise, il liste les endroits des differents fichiers a charger dans le paquet, restreint les systemes sur lesquels les paquets peuvent etre installes et determine la configuration de securite du paquet. Il fournit egalement de nombreuses informations sur le paquet, tels que son nom, sa version et sa description.
Les paquets logiciels sont organises en containers, le niveau le plus haut etant un groupement (bundle) ou un produit (product), et le plus bas etant les fichiers. La hierarchie s'etablit comme suit:
En fait, seuls les niveaux ≪ Product ≫ et ≪ Fileset ≫ sont utilises par la plupart des paquets. Le niveau ≪ Subproduct ≫ (sous-produit) est parfois utilise pour grouper des ≪ Filesets ≫ (groupes de fichiers), tandis que le ≪ Bundle ≫ fournit un groupement de haut-niveau pour produits relies entre eux. Un exemple typique est le ≪ Bundle ≫ HP-UX web services, qui contient les ≪ Products ≫ Apache et Tomcat.
Il peut y avoir un ou plusieurs groupes de fichiers dans un Product, et un ou plusieurs Products dans un Bundle. Les groupes de fichiers sont utilises specifiquement pour charger les fichiers.
Les groupes de fichiers et produits peuvent etre lies par differentes conditions et, dans ce cas, swinstall selectionne les dependances automatiquement.
Chaque groupe de fichier peut avoir de nombreux scripts de controle specifiques aux fichiers qu'il va charger. Ces scripts sont executes dans l'ordre suivant durant l'installation :
- checkinstall ? execute durant la phase d'analyse de pre-installation pour verifier si le groupe de fichiers peut etre charge sur le systeme
- preinstall ? execute juste avant le chargement des fichiers dans le groupe de fichiers
- postinstall ? execute immediatement apres le chargement des fichiers, et avant le redemarrage, si celui-ci est exige
- configure ? execute apres le script postinstall et apres un eventuel redemarrage pour finir la configuration du paquet installe
Il existe un groupe de scripts similaires qui sont executes dans l'ordre inverse lors de l'execution de la commande swremove
- checkremove
- unconfigure
- preremove
- postremove
D'autres scripts incluent d'autres verifications par l'execution des commandes swverify, unpreinstall et unpostinstall. Ces scripts peuvent etre inclus en totalite, en partie, ou pas du tout dans le paquet, selon les exigences de l'installation. Ils sont utiles pour executer un nettoyage de paquets precedents, creer des liens, ajouter le repertoire de logiciel a diverses variables d'environnement de recherche, etc.
Annee
|
Version
|
Changements
|
1984
|
1.0
|
Prise en charge du PC HP Integral (version ROM embarquee). Le kernel de base fonctionne sur le ROM; les autres commandes sont sur les disques
|
1987
|
2.0
|
Premiere version pour HP 9000 series 800. Il y a peut-etre eu une version 2.x differente pour les series 200 a une date differente
|
1988
|
3.x
|
Uniquement pour les HP 9000 serie 600/800. Note: les versions 2.x/3.x (pour les series 600/800) furent developpees en parallele aux versions 5.x/6.x (pour les series 200/300/400). Donc, par exemple, 3.x etait contemporain de 6.x. Les deux lignes furent unies a partir de la version 7.x (avec des nombres mineurs differents pour chaque serie). Les series 800 sauterent de 3.1 a 7.0 et les series 300 de 6.5 a 7.01
|
1985
|
5.0
|
Mis a jour et renomme HP-UX pour PC Integral. Prise en charge des series 200, 300 et 500
|
1988
|
6.x
|
Prise en charge des HP 9000 Series 300 uniquement. Introduction des sockets de 4.3BSD. Cette version (avec la 3.x) apporte egalement la technologie des fichiers dependants du contexte -context dependent files (CDF)- feature, une methode permettant a un serveur de fichier de servir differentes configurations et fichiers executables (et meme architectures) a differents clients dans un environnement heterogene. Un repertoire contenant de tels fichiers a son bit suid active et est cache des processus root et ordinaires dans un usage normal. Ce schema etait parfois utilise par des hackers pour cacher des exploits. Les CDF et le systeme de fichier CDF sont abandonnes avec la version 10.00
|
1990
|
7.x
|
Prise en charge des HP 9000 Series 300/400, 600/700 (version 7.03) et systemes 800. Fournit la bibliotheque graphique OSF/
Motif
|
|
8.x
|
Prise en charge des systemes HP 9000 Series 300/400 600/700/800. Introduction des bibliotheques partagees
|
|
9.x
|
9.00, 9.02, 9.04 (Series 600/800), 9.01, 9.03, 9.05, 9.07 (Series 300/400/700), 9.08, 9.09, 9.09+ (Series 700 only), 9.10 (Series 300/400 only). Ces versions prennent en charge les systemes HP 9000 Series 300, 700 et 800. Introduction de SAM. Le gestionnaire de volumes logiques (LVM) est presente avec 9.00 pour les series 800 afin de remplacer les anciennes methodes de gestion de disques. Afin de determiner si HP-UX fonctionne sur une station de travail ou un serveur, il suffit de regarder le dernier chiffre de la version de l'OS: les nombres pairs indiquent un serveur, les nombres impairs une station de travail.
|
1995
|
10.00
|
Cette version majeure voit la convergence du systeme d'exploitation entre les systemes HP 9000 Series 700 (stations de travail) et Series 800 (serveurs). Le systeme d'exploitation ne supporte plus les series plus anciennes. Il y a egalement des changements majeurs dans la disposition des fichiers et dossiers, bases sur l'UNIX d'AT&T System V Release 4 standard. Les applications sont enlevees du dossier /usr et placees dans /opt; les fichiers de configuration de demarrage sont placees sous /etc/rc.config.d; les repertoires des utilisateurs sont places de /users a /home. Les logiciels pour HP-UX sont maintenant installes sous forme de paquets, envoyes, et installes par les outils de Software Distributor (SD). LVM est egalement disponible pour les Series 700. HP-UX 10.0 est suivi par 10.01 (1995), 10.02 (1995), 10.03 (1996), 10.08 (1996), 10.09 (1996), 10.10 (1996) et 10.16 (1996).
|
1996
|
10.20
|
Cette version inclut la prise en charge des processeurs PA-RISC 2.0 qui supportent l'adressage de memoire en 64 bits. Pluggable Authentication Modules (PAM) sont introduits pour utilisation dans CDE. Le systeme de fichier racine peut etre configure pour utiliser le Veritas File System (VxFS). Pour des raisons techniques et de compatibilite, le systeme de fichier utilise pour le demarrage du noyau reste le Hi Performance FileSystem (HPFS; une variation d'UFS) jusqu'a la version 11.23. HP-UX 10.20 supporte egalement les identifiants d'utilisateurs et de groupes 32-bit. La limite precedente etait de 60,000, ou 16-bit. Cette version d'HP-UX, ainsi que les precedentes, sont maintenant officiellement obsoletes et le support par HP prit fin le
|
|
10.24
|
Cette version d'HP-UX fournit des fonctionnalites de securite ameliorees. Virtual Vault est un systeme d'exploitation compartimente dans lequel chaque fichier est alloue a un compartiment et ou les processus n'ont acces qu'aux fichiers appartenant a leurs compartiments et, a la difference de la plupart des autres Unix, le super utilisateur (root) n'a pas un acces complet au systeme sans suivre les procedures correctes.
|
1997
|
10.30
|
Cette version est destinee principalement aux developpeurs avec diverses ameliorations. L'utilisation des PAM continue a augmenter dans les composants de securite du systeme. De nombreux changements aux appels systeme (system calls) sont egalement faits. Ce systeme d'exploitation fournit egalement la premiere prise en charge des threads de kernel, avec un modele de thread 1:1 (chaque utilisateur est lie a un thread du kernel). HP-UX 10.30 est egalement la premiere version d'HP-UX compatible avec l'an 2000.
|
1997
|
11.00
|
Cette version d'HP-UX est la premiere a supporter l'adressage en 64-bit; les versions precedentes etaient uniquement compatibles 32 bits. Les applications 32-bits peuvent cependant fonctionner sur les systemes 64-bits. Cette version est egalement compatible an 2000. Elle prend en charge le multiprocessing symetrique, fibre channel, et NFS PV3. Elle contient egalement des outils et de la documentation afin de convertir du code 32 bits en 64 bits.
|
|
11.10
|
Il s'agit d'une version limitee a la prise en charge des systemes HP 9000 V2500 SCA (Scalable Computing Architecture) et V2600 SCA. Les autres versions prenaient en charge les serveurs HP 9000 V-class dans une configuration de cabinet simpleM; HP-UX 11.10 fonctionne sur les versions SCA ou les deux serveurs sont empiles les uns sur les autres, connectes entre eux par une ≪ hyperplane crossbar ≫. HP-UX 11.10 ajoute egalement JFS 3.3, la prise en charge de 128 processeurs, AutoFS, et un nouveau ftpd. Elle n'est pas disponible separement.
|
2000
|
11.11 (11i v1)
|
Egalement connue sous le nom 11i, cette version d'HP-UX introduit le concept d'Operating Environments. Elle est sortie en
. Il s'agit de groupes d'applications utilisable pour une utilisation generale. Les OE disponibles sont les OE Mission Critical, Enterprise, Internet, Technical Computing, et Minimal Technical OEs. (les deux derniers destines aux stations de travail HP 9000). Les principales ameliorations incluent le support de partitions physiques, la prise en charge des interfaces gigabit Ethernet, NFS par TCP/IP, les modules noyau chargeables, les parametres noyau changeables dynamiquement, les notifications d'evenements kernel, et les piles protegees (
protected stacks
).
|
2001
|
11.20
|
Egalement connue sous le nom de 11i v1.5, cette version d'HP-UX est la premiere a supporter la nouvelle ligne de systemes Itanium (IA-64). Elle n'est pas destinee a des environnements critiques et ne supporte pas le logiciel de cluster d'HP, ServiceGuard. Elle supporte cependant l'execution d'applications compilees sur plateformes PA-RISC sur des systemes Itanium et le Veritas Volume Manager 3.1.
|
2002
|
11.22
|
Une version incrementale de la version Itanium d'HP-UX, elle est aussi connue sous le nom de 11i v1.6. Cette version atteint une scalabilite de 64 processeurs, m:n threads, ajout des parametres du kernel changeables dynamiquement et prend en charge le gestionnaire de volumes logiques (LVM) d'HP. Elle a ete construite sur la branche de code de 11i v1.
|
2003
|
11.23 (11i v2)
|
La sortie originale de cette version a lieu en
afin de prendre en charge les systemes bases sur Itanium. Cette version est egalement appelee 11i v2. En
, ce systeme d'exploitation est mis a jour afin de prendre en charge les systemes Itanium et PA-RISC. En plus de fonctionner sur des systemes Itanium, cette version inclut la prise en charge de ccNUMA, la configuration des elements et du kernel par une application web, IPv6 et une generation de nombres aleatoires forte.
|
2007
|
11.31 (11i v3)
|
Cette version est egalement nommee HP-UX 11i v3. Cette version prend en charge les systemes PA-RISC et Itanium. Elle est sortie le
. Les principales nouvelles fonctionnalites incluent la prise en charge du multipathing nativement, un cache de fichier unifie, NFS v4, Veritas ClusterFS, multi-volume VxFS, et la virtualisation integree. L'hyperthreading est pris en charge par les processeurs
Montvale
et
Tukwila
. HP-UX 11i v3 est conforme aux standards UNIX 03 de l'Open Group. Des mises a jour pour 11iv3 sortent regulierement, la derniere etant l'update 10, sortie en
.
|