SII Ouest
Une des agences du Groupe SII.
- ESN (== SSII)
- ~450 collaborateurs (6000 à l'échelle du Groupe)
- Une 15aine de profils autour des technos VMware
- Centre de service (plateau) et assistance technique
- Ingénierie et opérations
- www.groupe-sii.com
Ludovic Rivallain
Senior Virtualization & Cloud-Computing Consultant à SII Ouest.
- Septembre 2007: Rachat de Dunes Technologies par VMware:
- Et notamment son produit: Dunes Virtual Services Orchestrator
- Avril 2009: * vCenter Orchestrator 4.0* est distribué par VMware.
- Depuis Mars 2015: * vRealize Orchestrator*
- Dernière version: vRealize Orchestrator 7.5.0
vRO est principalement un moteur de workflow:
- Librairie standard:
- Contenu initial
- Contenu proposé par VMware
- Contenus personalisés
Représentation d'une suite de tâches ou opérations à effectuer.
Le workflow sert à décrire:
- le circuit des traitements
- les tâches à répartir entre les différents acteurs d'un processus
- les délais
- les contrôles et les modes de validation
Automatiser !
Automatiser une action récurrente basée sur des données connues (inputs) ou calculables (à partir des inputs).
Eventuellement: produire un résultat exploitable de cette action (output).
Selon les moteurs utilisés, un workflow peut utiliser différents actionneurs pour réaliser son travail:
- Actionneurs internes: stocker des variables, calculer des valeurs, gérer l'algorithme…
- Actionneurs externes: Eléments ne faisant pas partie du moteur pour exécuter une action.
vRO est basé sur ???
- Moteur de backend =
???
- Frontend = applet
???
- Il peut être étendu via des plugins en
???
vRO est basé sur Java
- Moteur de backend = Java
- Frontend = applet Java
- Il peut être étendu via des plugins en Java
vRO embarque un moteur permettant l'interprétation du Javascript
- Les capacités de ce moteur sont limitées
N'espérez pas avoir des sélecteurs comme sur jQuery ou un interpréteur digne de celui de votre browser préféré.
- Permet d'accéder aux modèles de données (via des managers) définis dans les plugins (Java).
- Plus simple à appréhender que le Java
- Pas besoin de compiler le code
- Editable directement dans le client
vRealize Orchestrator est disponible gratuitement si vous disposez déjà d'une licence valide de vSphere/vCenter Standard ou vRealize Automation (via vRealize Suite Advanced/Enterprise).
Pas d'excuse!
Gestion de l'appliance et/ou du cluster:
- Gestion base de données
- Startup options
- Ajout de plugins
- Troubleshooting
- …
- Voir
- Exécuter:
- Run
- Schedule
- Pas d'édition !
Indispensable pour le moment pour l'édition des éléments.
L'inventaire de vRO permet de parcourir dynamiquement les endpoints qui y sont reliés:
- vCenter
- NSX
- AD
- BDD SQL
- …
Cela peut inclure des modèles personnalisés (via les plugins customs).
Scénario exécutable basé sur des:
inputs
attributes
(variables)- Tests et éléments d'algorithme
- Actionneurs
Equivalent d'une fonction Javascript:
- Réutilisable (WF, autre action etc.)
- Des
inputs
- Une
output
optionnelle
Les actions sont organisées dans des modules.
Ex:
isHaEnabled = System.getModule("com.vmware.library.vc.cluster")
.haEnabledCluster(cluster);
Les actions c'est bon, mangez-en !
Prévoyez des actions génériques:
- Facilement réutilisables
- Configurables via les
inputs
- Des modules par thème d'actionneurs
- Module
com.sii.vcenter.sso_management.get
- Action
read_sso_configuration
- Action
list_sso_identity_sources
- Action
list_local_users
- Action
- Module
com.sii.vcenter.sso_management.add
- Action
push_init_sso_configuration
- Action
add_sso_identity_sources
- Action
add_local_users
- Action
- Module
com.sii.vcenter.sso_management.del
- Action
del_sso_identity_sources
- Action
del_local_users
- Action
Liste d'attributs permettant de définir des constantes.
Bref c'est un fichier de configuration quoi !
Ressources diverses pouvant être utilisées dans le contexte d'un autre élément vRO:
- Fichiers de référence (qui n'évolue pas souvent)
- Images
- Templates XML ou HTML
- Scripts
- Certificats d'autorités
- …
Taille des fichiers limitée à 16MB.
Comme partout dans le monde IT: Exécuter des tâches selon une programmation temporelle.
Déclenchement d'action(s) (workflow) selon des évènements.
De base, les évènements suivants sont disponibles:
- SNMP
- AMQP
- Vérification périodique
- Autre policy (début et fin)
Un package permet la distribution d'éléments de contenu de vRO:
- Workflows
- Actions
- Template de Policies
- Configurations et Resources Elements
Un package peut être:
- Exporté
- (Ré-)importé
- Sauvegardé
- Synchronisé…
Il permet aussi de détecter et inclure les dépendances entres éléments.
Les uses-cases suivants s'appuient sur quelques longues années d'utilisation de vCO/vRO avec nos clients.
Ils expriment un certain biais lié à notre activité d'ESN mais permettent d'avoir une idée des capacités de cet outil.
La principale limite de vRO: votre imagination.
😉
Automatiser l'arrivée d'un nouveau client/service/utilisateur dans votre SI:
- Création des comptes AD, *Unix
- Création des accès à des services non-AD friendly
- Création des accès à des services externes (merci le cloud !)
- Routines internes…
Exporter la structure d'une organisation vCloud Director afin de la réimporter dans un autre déploiement via un mapping pré-défini.
Dans le use-case d'un de nos clients, l'opération était réalisée manuellement (~15min/VM
) et a été grandement accélérée par l'usage d'un WF vRO (gain de temps: ~2min/VM
).
La notion de Blocking tasks sur vCloud Director permet d'intervenir avant/pendant/après le déploiement d'une ressource.
En utilisant vRO+AMQP (RabbitMQ), on peut par exemple:
- Renseigner un outil de gestion de parc.
- Demander le monitoring, le backup de la ressource.
- Insérer un mécanisme d'approbation des demandes…
vRealize Automation s'appuie sur vRO pour étendre le champ de ses fonctionnalités (XaaS).
Cela nous a permis d'ajouter le support d'un cloud public initialement non pris en charge par vRA.
Ce projet utilisait massivement les dynamicTypes
et les call API REST via le plugin natif de vRO afin de permettre le déploiement de stacks HEAT (OpenStack).
Interaction avec des équipements réseaux pour provisionner automatiquement des environnements clients (le SDN avant l'heure!):
- Partition F5/BigIP
- VSYS Juniper
- VRF Cisco…
Les slides de la présentation:
groupe-sii.github.io/rex-vro-meetngeek