Avec System Center 2012 R2 Configuration Manager, Microsoft a intégré un mécanisme permettant de déployer de nouvelles fonctionnalités sans pour autant nécessiter la mise à jour du produit via un Service Pack ou un correctif cumulatif. Cette fonctionnalité appelée Extensions for Windows Intune ou Weaves (son nom de code) permet d’intégrer les différentes vagues proposées par Windows Intune ; la solution de gestion des périphériques mobiles basée dans le Cloud. En effet, ConfigMgr emphatisait d’un cycle de développement trop long par rapport à son confrère. Cet article revient sur le fonctionnement de Weaves en prenant exemple sur les deux premières extensions :
- Email Profiles Extension
- iOS 7 Security Settings
Voici le processus en détail :
Premièrement, Microsoft travaille la fonctionnalité en développement. Celle-ci est testée dans un environnement de test afin de valider la qualité de la Release. Elle est ensuite publiée sur Windows Intune et annoncée sur les différents canaux de notification (Blogs, sites…).
Côté infrastructure, elle est téléchargée par le connecteur Windows Intune. Cela se traduit par le téléchargement de messages observables dans le fichier de journalisation dmpdownloader.log. Malheureusement, il n’est pas possible d’identifier facilement le téléchargement des extensions.
L’extension apparaît dans la console d’administration dans la partie Administration – Overview – Cloud Services – Extension for Windows Intune. Vous pouvez l’activer en la sélectionnant et en cliquant sur Enable. L’activation se fait pour l’ensemble de la hiérarchie ConfigMgr.
Vous devez ensuite accepter le contrat de licence pour pouvoir lancer l’activation :
Le statut de la fonctionnalité passe à « Enabling extension… »
Vous pouvez suivre l’activation de la fonctionnalité via le fichier de journalisation du SMS Provider (smsprov.log). Une fois la fonctionnalité activée, vous pouvez suivre l’installation au travers de la hiérarchie via les logs hman.log et rcmctrl.log :
No resync found
Inbox notification tiggered.
Cleaning the RCM inbox if there are any *.RCM files for further change notifications....
Deleted 1 files from RCM inbox
Initializing RCM.
No parent or child sites found, so no replication channels to configure.
There are 1 Updates need to apply, updating ...
Rcm control is waiting for file change notification or timeout after 3600 seconds.
Update Email Profiles Version 100001137 Install with version 100001137 has applied successfully.
STATMSG: ID=7842 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_REPLICATION_CONFIGURATION_MONITOR" SYS=WTR2-CM-PR1.WINDOWSTOUCH.R2 SITE=LYN PID=2160 TID=4636 GMTDATE=dim. févr. 16 11:27:30.382 2014 ISTR0="Email Profiles Version 100001137 Install" ISTR1="100001137" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=0
Une fois activées, toutes les consoles doivent être mises à jour afin de permettre l’accès aux fonctionnalités. Notez que chaque opérateur qui ouvre la console est aussi prévenu qu’une extension est disponible. En effet, l’ouverture de la session lance des requêtes pour lister les extensions référencées dans la base de données.
L’application de la mise à jour doit se faire par un utilisateur administrateur du serveur afin d’appliquer les différents changements. De plus, la mise à jour doit être impérativement appliquée et la console ne se lancera plus si ce n’est pas le cas. Ces deux faits peuvent poser des problèmes lors de l’utilisation de la console d’administration dans un environnement RDS/Citrix. Si une console est déjà ouverte, vous recevez un message demandant de fermer toutes les consoles
Malheureusement, il n’existe pas à ce jour de moyen de déployer de manière contrôlée ces extensions.
Une fois accepté, une fenêtre s’ouvre pour suivre la mise à jour. Une fois terminé, cliquez sur Close pour terminer l’opération et ouvrir une console d’administration
Vous pouvez suivre l’installation de la fonctionnalité sur les consoles d’administration via les fichiers de journalisation : FeatureExtensionInstaller.log, AdminUI.ExtensionInstaller.log
Une fois la console à jour, vous pouvez observer les changements impliqués comme l’apparition d’un nœud Email Profiles :
Côté base de données, on retrouve les informations suivantes :
- La fonction fn_ListCFDFeatures(<LocalID>) permet de lister toutes les fonctionnalités proposées. On y retrouve les identifiants, le nom, la version de la fonctionnalité, l’EULA, le manifest, la version minimale et maximale de ConfigMgr, la date de publication, l’état et la date d’activation. Vous pouvez utiliser le LocalID 1036 pour le français. Pour retrouver la liste complète : http://msdn.microsoft.com/en-us/goglobal/bb964664.aspx
- La table CFDGo affiche l’erreur et le nombre d’essai pour tenter l’activation
- La table CFDFeatureState affiche les identifiants des différents états de la fonctionnalité et le nom correspondant.
- De la même façon, on retrouve une vue vSMS_CFDFeatures rassemblant ces informations.