“Instance Group” di computer con più hosted classes allo stesso tempo

Sicuramente avrete avuto, almeno una volta, la necessità di creare un gruppo contenente istanze di classi diverse ospitate sullo stesso computer. Ad esempio vogliamo raggruppare i server Exchange che eseguono anche IIS, oppure i server SQL che siano anche Domain Controller, e così via.

Nel primo esempio (Exchange assieme ad IIS) il contenuto del nostro gruppo sarà costituito da oggetti della classe “Windows Computer”, solo qualora essi siano hosting parent tanto di un’istanza della classe “Exchange 2003 Role” quanto della classe “IIS Server Role” .

Quello di cui abbiamo bisogno è un gruppo con membri dinamici. La “Operations Console” non permette di configurare la membership dinamica secondo le nostre necessità e la “Authoring Console” non è facilissima da utilizzare. Come valida alternativa possiamo utilizzare un editor XML per modificare un gruppo (con membership dinamica ma semplicistica) creato tramite una delle 2 console.

Vediamo come si fa.

  • Innanzi tutto dobbiamo creare il gruppo che ci serve, utilizzando la console che più ci piace. Successivamente andremo ad impostare la membership dinamica specificando due criteri ovvero: Windows Computer e Exchange 2003 Role.

image

 

  • Dovremmo a questo punto salvare il MP che contiene il gruppo. Se abbiamo operato da Operations Console, sarà necessario quindi esportare il MP per il successivo editing.
  • Dopo l’export del MP, dovremo modificare il file XML. Per fare ciò si può utilizzare un qualsiasi editor di testi.
  • All’interno del file XML dovremo cercare la sezione chiamata “Discoveries”. All’interno di essa andremo a cercare la “Discovery” contenente il datasource di tipo “Microsoft.SystemCenter.GroupPopulator”.

image

 

  • All’interno di questa sezione troveremo la sezione “MembershipRules” dove sono contenute le condizioni da noi specificate e per le quali il gruppo viene popolato.

image

  • Come vedete nelle Membership rule non è specificata alcuna condizione di AND. Quindi immediatamente al di sotto della prima riga “<RelationshipClass>…..” inseriremo una nuova sezione chiamata <Expression> che andrà a contenere la nuova condizione di anding specificata dall’operatore logico <AND>.

  • image

  • Dentro sezione definita dall’operatore logico, verranno specificate le nuove condizioni (es. che contenga la classe “IIS Server Role”) inclusa la seconda di quelle definite da interfaccia grafica secondo l’esempio sotto riportato. Per fare ciò è possibile copiare la sezione creata con l’interfaccia grafica, specificando come MPElement la nuova classe che deve essere contenuta.

 image

  • A questo punto, la seconda sezione MembershipRule che conteneva il secondo criterio di membership sarà vuota e dovrà essere cancellata.
  • Se avessimo bisogno di inserire elementi che siano appartenenti ad una classe OPPURE ad un' altra, ovvero realizzare la seguente espressione “((Exchange 2003 Role or Exchange Physical Installation) and (IIS Server Role or IIS Web Site))” basterà inserire una nuova sezione contenente il nuovo operatore e le relative nuove condizioni.

 

image

Se volete scaricare il MP di esempio potete farlo da questo link: MulticlassGroup.zip

Per nozioni teoriche sulle relazioni di hosting potete consultare i seguenti articoli:

http://technet.microsoft.com/es-es/library/dd362552.aspx

http://myitforum.com/cs2/blogs/vdipippo/archive/2009/03/14/relationships-in-opsmgr-2007-part-1.aspx

Per ulteriori nozioni teoriche relative ai gruppi potete consultare i seguenti articoli:

http://blogs.technet.com/b/kevinholman/archive/2009/02/05/what-is-a-group-anyway.aspx

http://blogs.technet.com/b/kevinholman/archive/2010/07/27/authoring-groups-from-simple-to-complex.aspx