martes, 10 de diciembre de 2013

Distribución de software mediante SCCM 2007 R3

Hoy vamos a ver todos los pasos para distribuir software con SCCM 2007 R3.

Lo primero que debemos hacer para distribuir software es crear una colección con los equipos a los que queramos desplegar el software deseado. A mi personalmente me gusta nombrar las colecciones dedicadas a despliegue con "Despliegue - ". De esta forma se identifican inmediatamente.



Creación paquete

Lo primero que hay que crear cuando se distribuye software es un paquete. Para SCCM un paquete es un contenedor (un directorio) dentro del cual están los ficheros o programas que vamos a lanzar. 

Para crear nuestro paquete pulsamos sobre Software Distribution -> Packages -> New -> Package


Se abre el asistente e indicamos los datos del paquete: su nombre, versión, fabricante, idioma y comentario.


Indicamos que el paquete contiene los ficheros fuente y que siempre los obtenga de directorio source (dónde hemos dejado los binarios del instalador, en este caso F:\Paquetes Originales\Notepad 618). 

No marcamos la distribución a los distribution points porque es más didáctico verlo después.

NOTA: Podríamos decirle que dejara una caché en el cliente y que realizara una replicación diferencial. En este ejemplo no lo marcamos. 



Indicamos que se debe de acceder a través del recurso compartido del servidor SCCM (en caso contrario nos pide datos para crear un nuevo share):


Dependiendo de la urgencia que tengamos para desplegar el software indicaríamos la prioridad. En este caso y dado que estoy haciendo un piloto (y tengo prisa) le digo High:


Fijaos que no cambiamos nada más aunque es interesante la opción de los branch distribution points. En mi caso casi que prefiero elegir yo cuales actualizo, aunque en caso de tener muchos no es mala idea que se actualicen solos (cómo en la imagen), pero como esto es un laboratorio lo dejo en automático. La parte de Operating System Deployment la dejamos sin tocar.

Cómo no nos interesa tocar nada más pulsamos en Finish directamente.



Creación del programa

Para SCCM el paquete es un contenedor. Se necesita un lanzador que inicie la instalación: ese es el programa. Para crear un programa pulsamos dentro del paquete en programs y con botón derecho selccionamos New -> Program


Dado que un mismo paquete puede tener distintos lanzadores (por ejemplo, uno con la instalación oculta y sin avisar al usuario y otro que se muestren avisos e incluso globos aunque no le permitamos tocar nada).
Indicamos el nombre que tendrá el lanzador (para poder distinguirlo de otros lanzadores que tenga el paquete dado que puede haber varios) y seleccionaremos el comando a ejecutar con sus correspondientes parámetros. En este caso la linea a lanzar es npp.6.1.8.installer.exe /S 


NOTA: No hay que indicar el path dado que el programa es relativo a su contenedor (el paquete).

Podemos indicar el espacio estimado en disco así como el tiempo estimado de instalación. SCCM los tendrá en cuenta para no instalar si no hay espacio o para cancelar la espera de mensajes una vez sobrepasado el tiempo.
NOTA: En el caso que se supere el tiempo de instalación SCCM dará por finalizada de forma incorrecta la instalación pero eso no quiere decir que haya acabado mal: simplemente no sabe que ha acabado.

También se puede especificar la arquitectura para que únicamente se instale en los clientes cuya arquitectura sea la especificada.


Dentro de la pantalla environment podemos indicar si instamos cuando el usuario esté logueado, no logueado o si nos es indiferente. En este caso hemos seleccionado únicamente cuando no esté logueado.


Se puede especificar que se ejecute otro programa antes del mismo paquete (es una buena idea para desinstalar versiones anteriores antes de instalar la siguiente o para reemplazar programas por otros), suprimir las notificaciones  etc… 

En nuestro caso no tiene sentido eliminar las notificaciones porque el programa se va a instalar cuando el usuario no está logueado.


Esta pantalla la dejamos tal cual:


En esta tampoco tocaremos nada dado que no nos interesa la interactuación con MOM (SCOM):


Finalmente aparece el sumario con lo que se va a hacer.


Cuando acaba de crear el programa aparece el resultado:


Puntos de distribución

Para que los equipos puedan acceder al paquete hay que enviarlo a los puntos de distribución. Los puntos de distribución son los directorios compartidos desde los cuales SCCM instala el software en los clientes.
Los puntos de distribución se deben de crear antes de desplegar software.
Una vez creados (por defecto se crea uno) podemos asignar software a los mismos: no tiene sentido asignar un software a una ubicación en la que no vamos a distribuirlo.

Para asignar un sofware a un distribution point pulsamos botón derecho sobre New Distribution Points


y seguimos el asistente.


Seleccionamos los puntos de distribución sobre los que queremos distribuir el paquete (y que todavía no lo tengan). En este caso sólo el servidor 1:


Al pulsar en siguiente se realiza el progreso y al acabar muestra el resultado:


Podemos consultar el estado de la distribución de los paquetes en los puntos de distribución, para ello vamos al paquete y expandimos las ramas Package Status -> Package Status -> CPD – Sitio Central de Administración (este será el nombre de nuestro site de SCCM). A la derecha podemos ver los puntos de distribución, la versión del paquete que tiene cada uno, el estado (installed quiere decir correctamente distribuido), la fecha de la última vez que se actualizó etc…

NOTA: Mientras se está distribuyendo el estado es Installing.


Creación de Advertisement:

Ya tenemos el paquete (lo que se va a instalar), tenemos el programa (lo que iniciará la instalación), tenemos el punto de distribución (el lugar desde dónde se va a instalar) pero los equipos no saben que el paquete está disponible para ellos.

Para solucionar esto creamos un advertisement o anuncio que les indicará a los equipos que ese software está ahí para ellos:
Para ello pulsamos sobre Advertisements -> botón derecho -> New -> Advertisement



Aparece el asistente: rellenamos el nombre, seleccionamos el paquete, el programa y lo asignamos a una colección.


Ahora debemos especificar las fechas desde la que estará disponible y hasta la que estará disponible el paquete para los equipos. Si tenemos mucha urgencia podemos seleccionar lo antes posible (as soon as posible). También podemos indicar la prioridad y en qué condiciones se relanzará la instalación (volver a intentar si falla, no volver a intentar etc….)


¡¡OJO!! con la casilla ignore maintenance Windows NO debería estar marcada en software distribuidos a servidores ya que permitiría un reinicio en horas de trabajo.

En la pestaña de puntos de distribución seleccionamos  que siempre ejecute desde el distribution point. Esto es porque si indicamos que descargue el contenido y lo inicie localmente dependeremos de BITS y podemos estar esperando mucho rato hasta que se haga efectivo.



En las siguientes ventanas pulsamos sobre siguiente…


Siguiente…


Y con esto hemos finalizado la creación del advertisement.

En el caso de un piloto si no queremos esperar a que los equipos refresquen la política (lo hacen cada hora) podemos manualmente forzar un refresco ya sea desde el panel de control del equipo o desde el menú contextual del SCCM con la opción Machine Policy Evaluation and Update Cycle. Este menú contextual no viene por defecto hay que instalar las right click tools :
(http://myitforum.com/cs2/blogs/rhouchins/archive/2008/04/09/sccm-right-click-tools.aspx


Desde el servidor dentro de Reporting podemos consultar el reporte Status of a specific advertisements para ver el estado de la distribución de un software específico. 
En la imagen podemos observar que de dos equipos a los que se ha enviado uno ha aceptado la instalación y el otro no (en este caso está apagado: no status) y el que lo ha aceptado se ha instalado correctamente (Accepted a las 11:43:13 y Succeded a alas 11:43:14).


Si pulsamos sobre la flecha que hay a la izquierda de Succeded podemos ver los diferentes estados por los que ha pasado el software hasta que se ha instalado en el equipo:
  1.  Waiting for content
  2. Waiting for user action
  3. Program received
  4. Program started
  5. Program completed with success

Ha sido un poco largo paro espero que haya valido la pena.

2 comentarios:

  1. Gerson, muchas gracias por compartir tu conocimiento, justo estoy por comenzar a utilzar esta funcionalidad del SCCM en mi trabajo para realizar instalaciones en varios equipos y por lo que veo me has ahorrado bastante tiempo de investigación.
    Saludos Juan.

    ResponderEliminar
  2. Este comentario ha sido eliminado por el autor.

    ResponderEliminar