VMware Update Manager & Proxy

Récemment, nous avons eu la joie de goutter aux problèmes que provoquent les proxy Blue Coat sur l’Update Manager de VMware.

Ces proxy, comme d’autres également, scannent (anti-virus, anti-trojants) les fichiers téléchargés avant de les transmettre aux clients. Lorsque le fichier ne fait que quelques Ko c’est presque transparent mais lorsqu’il fait quelques dizaines de Mo c’est plus long. Aucun problème lorsque la requête est faite par un navigateur car le proxy redirige vers une page d’attente affichant la progression du download. Mais lorsque la requête provient d’un composant tel qu’Update Manager c’est le timeout assuré.

Résultat, Update Manager ayant téléchargé le fichier xml contenant la liste des nouvelles mises à jour mais le download des updates ayant échoué, vous vous retrouvez avec la liste des MAJ qui n’existent pas dans le répository et que vous ne pouvez donc pas appliquer. Malheureusement, impossible de forcer un nouveau download et télécharger les updates manuellement pour les copier ensuite dans le repository relèverait de la torture.

Après quelques recherches et un peu d’improvisation dans la base SQL VIM_UMDB, nous avons trouvé 2 solutions. L’une figure dans l’admin guide d’Update Manager et l’autre très certainement pas supporté du tout par VMware puisqu’il s’agit de modifier le contenu d’une table de la base SQL.

VMware a en effet prévu que le VirtualCenter ne soit pas connecté à Internet. Il existe donc un autre composant sur le CD d’install : UMDS aka Update Manager Download Service.

Une fois ce composant installé sur un serveur en DMZ ou ayant un accès direct à Internet, il suffit de configurer (en CLI uniquement) UMDS avant de lancer un téléchargement des updates. Vous pouvez utiliser des commandes pour ne télécharger que les updates sur une période précise et forcer un nouveau téléchargement en cas d’échec. Une fois le téléchargement terminé, il suffit d’utiliser une commande pour exporter le contenu du repository de l’UMDS vers un répertoire et d’utiliser une autre commande sur le VirtualCenter pour les importer. Toutes ces commandes sont détaillées à la page 16 de l’admin guide.

L’autre solution, plus “trash”, consiste à supprimer de la base SQL VIM_UMDB (présente sur le VirtualCenter) les updates dont le download aurait échoué.

Il suffit pour cela d’installer Management Studio Express de Microsoft sur le VirtualCenter et de vous connecter à la base SQL de ce dernier.

Une fois la table dbo.VCI_UPDATES identifiée, il faudra dans un premier temps désactiver les relations avec les autres tables pour pouvoir ensuite supprimer les lignes des updates à re-télécharger.

Il faut ensuite relancer le service vmware-ufad-vci et la tache planifiée de l’Update Manager. La ou les MAJ seront alors re-téléchargée(s).

Nous avons testé à plusieurs reprise cette métode et bien qu’aucun effet indésirable ne se soit manifesté, nous vous recommandons vivement de faire un backup avant toute modification de la base.

Tags: , ,

Leave a Reply