lenovo.lxca-config

Ansible Role: Configuración de Lenovo LXCA

Rol de Ansible para diversas operaciones de configuración (como administrar, actualizar firmware, configurar políticas, desplegar sistemas operativos) en los elementos gestionados desde Lenovo xClarity Administrator.

Requisitos

Variables Obligatorias

Las variables disponibles se enumeran a continuación, junto con su descripción:

Variable Descripción
lxca_user Usuario de lxca para conectarse a lxca
lxca_password Contraseña del usuario
lxca_url URL de lxca a la que conectarse

Variables del Rol

Las variables disponibles se enumeran a continuación, junto con su descripción:

Variable Descripción
uuid UUID de un elemento gestionado
id ID de un recurso
endpoint_ip Dirección IP del endpoint
user Nombre de usuario
password Contraseña
recovery_password Contraseña de recuperación para el recurso
storedcredential_id ID de las credenciales almacenadas
jobid ID del trabajo de fondo
mode Modo de operación para la acción de configuración
lxca_action Operación de configuración
server Detalles del nodo de computación
switch Detalles del conmutador
storage Detalles del almacenamiento
cmm Detalles del CMM
force Bandera de forzar acción de configuración
policy_info Detalles de la política
policy_name Nombre de la política
policy_type Tipo de política
repo_key Clave del repositorio
machine_type Tipo de máquina
scope Alcance de la operación
fixids ID de la imagen de firmware
file_type Tipo de archivo en la acción de configuración
endpoint Endpoint gestionado objetivo para la acción de configuración
restart Acción de configuración
config_pattern_name Nombre del patrón de configuración
config_profile_name Nombre del perfil de configuración
powerdown Operación de energía
resetimm Acción de reinicio del IMM
pattern_update_dict Diccionario de información de patrones de categoría
pattern_from_file Ruta del archivo para los datos de patrones
includeSettings Bandera para leer datos de configuración
osimages_info Información sobre imágenes de sistema operativo
osimages_dict Diccionario de información sobre imágenes de sistema operativo
files Ubicación de los archivos
update_key Clave para actualización de firmware
status Estado de elemento gestionado
uuid_list Lista de UUID
subcmd Subcomando para comandos de configuración

Etiquetas Soportadas

Las etiquetas soportadas se enumeran a continuación, junto con su descripción:

tags Descripción
get_configpatterns Devuelve todos los patrones de servidor
get_particular_configpattern Obtiene patrón de configuración por nombre o ID
import_configpatterns Importa patrón de configuración a lxca
apply_configpatterns Aplica patrón de configuración al dispositivo
get_configstatus Obtiene el estado de configuración del dispositivo por uuid
configprofiles Operaciones de perfiles de configuración
configtargets Obtiene detalles de los objetivos de configuración
manage Realiza operación de gestión en el dispositivo descubierto
manage_status Verifica el estado de finalización de la operación de gestión
unmanage Realiza operación de desaprobación
unmanage_status Verifica el estado de finalización de la operación de desaprobación
osimages Realiza operación de imágenes de sistema operativo y despliegue de sistemas operativos
updaterepo Actualiza operación de repositorio
update_firmware Actualiza firmware para dispositivo específico con mt y fixids especificados
update_firmware_all Actualiza firmware para dispositivo con lista de uuid con política asignada
update_firmware_query_status Verifica el estado de la actualización de firmware
update_firmware_query_comp Lista los componentes que se pueden actualizar
get_managementserver_pkg Obtiene detalles de los paquetes de gestión
update_managementserver_pkg Actualiza paquetes del servidor de gestión
import_managementserver_pkg Importa servidor de gestión desde el sistema local
updatepolicy Actualiza operaciones de políticas de cumplimiento
get_storedcredentials Obtiene credenciales almacenadas
create_storedcredentials Crea nuevas credenciales almacenadas
update_storedcredentials Actualiza credenciales almacenadas existentes
delete_storedcredentials Elimina credenciales almacenadas

Dependencias

Conectividad con Lenovo xClarity Administrator.

Ejemplo de Playbook

Para ejecutar un playbook de Ansible, necesita elegir una de las etiquetas especificadas arriba, también proporcionar las variables utilizadas por la etiqueta usando el siguiente comando: ####manage manage utiliza las siguientes variables adicionales user, password o storedcredential_id

ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd
lxca_url=https://10.240.29.217 endpoint_ip=10.240.72.172 user=USERID
password=CME44ibm recovery_password=CME55ibm force=True" test.yml -vvvv --tag
manage

ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd
lxca_url=https://10.240.29.217 endpoint_ip=10.240.72.172 storedcredential_id=21 force=True" test.yml -vvvv --tag
manage

####unmanage unmanage utiliza la siguiente variable adicional endpoint_ip que es ip_address,uuid,device_type device_type puede tener el siguiente valor Chasis ThinkServer Almacenamiento Rackswitch Rack-Tower

ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd
lxca_url=https://10.240.29.217
endpoint_ip=10.240.72.172;46920C143355486F97C19A34ABC7D746;Chasis force=True"
test.yml -v --tag unmanage
Actualización de política y firmware

Las siguientes variables adicionales son utilizadas con estas etiquetas

policy_info: description:

  • usado con el comando updatepolicy por los siguientes valores posibles
  • "FIRMWARE - Obtener lista de políticas de firmware aplicables"
  • "RESULTS - Listar los resultados de comparación persistidos para servidores a los que se asignó una política"
  • "COMPARE_RESULTS - Verificar cumplimiento con la política de cumplimiento asignada usando el ID de trabajo o tarea que se devolvió al asignar la política de cumplimiento."
  • "NAMELIST - Devuelve las políticas de cumplimiento disponibles"

policy_name: description: usado con el comando updatepolicy, nombre de la política a aplicar

policy_type: description:

  • usado con el comando updatepolicy, política aplicada al valor especificado puede tener el siguiente valor
  • CMM - Módulo de gestión de chasis
  • IOSwitch - Interruptor flexible
  • RACKSWITCH - Interruptor RackSwitch
  • STORAGE - Sistema de almacenamiento Lenovo
  • SERVER - Nodo de computación o servidor de rack

uuid_list: description:

  • usado con el comando update_all_firmware_withpolicy. Aplicar firmware a uuid en la lista
  • si uuid_list está vacío, el firmware se actualiza para todos los componentes actualizables con política.
  • "ejemplo ['38D9D7DBCB713C12A210E60C74A0E931','00000000000010008000542AA2D3CB00']"

mode: description:

  • "usado con el comando update_firmware, update_all_firmware_withpolicy Indica cuándo activar la actualización. Esto puede ser uno de los siguientes valores."
  • "inmediato - Usa el modo de activación inmediata al aplicar actualizaciones de firmware a los endpoints seleccionados."
  • "retrasado - Usa el modo de activación retrasada al aplicar actualizaciones de firmware a los endpoints seleccionados."
Listar todas las políticas  
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 subcmd=list" playbooks/config/config.yml -vvvv --tag updatepolicy

Obtener lista de políticas de firmware aplicables
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query policy_info=FIRMWARE" playbooks/config/config.yml -vvvv --tag updatepolicy

Listar los resultados de comparación persistidos para servidores a los que se asignó una política
----------------

ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query update_policy_info=RESULTS" playbooks/config/config.yml -vvvv --tag updatepolicy

Verificar cumplimiento con la política de cumplimiento asignada usando el ID de trabajo o tarea que se devolvió cuando se asignó la política de cumplimiento.  
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=status uuid=EF362CF0FB4511E397AB40F2E9AF01D0 jobid=2" playbooks/config/config.yml -vvvv --tag updatepolicy

Asignar política al endpoint
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=assign policy_name=x220_imm2 policy_type=SERVER uuid=7C5E041E3CCA11E18B715CF3FC112D8A" playbooks/config/config.yml -vvvv --tag updatepolicy
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=status jobid=16" playbooks/config/config.yml -vvvv --tag updatepolicy

Actualizar Firmware de Endpoint
================

Consultar componentes actualizables
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217" playbooks/config/config.yml -v --tag query_update_comp

Consultar estado de actualización de firmware
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220" playbooks/config/config.yml -vvvv --tag query_update_status

Aplicar firmware con política
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 mode=inmediato lxca_action=apply server='7C5E041E3CCA11E18B715CF3FC112D8A,IMM2 (Primario)'" playbooks/config/config.yml -vvvv --tag update_firmware

Aplicar firmware con política para componentes actualizables especificados
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 mode=inmediato lxca_action=apply uuid_list=['38D9D7DBCB713C12A210E60C74A0E931','00000000000010008000542AA2D3CB00']" playbooks/config/config.yml -vvvv --tag update_all_firmware_withpolicy

Aplicar firmware con política para todos los componentes actualizables
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 mode=inmediato lxca_action=apply uuid_list=[]" playbooks/config/config.yml -vvvv --tag update_all_firmware_withpolicy
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 mode=inmediato lxca_action=apply" playbooks/config/config.yml -vvvv --tag update_all_firmware_withpolicy
Operaciones de patrones de configuración, perfil de configuración y objetivos de configuración

Las siguientes variables adicionales se utilizan para esta etiqueta

endpoint: description:

  • utilizado con comandos configprofiles, apply_configpatterns y get_configstatus,
  • es el uuid del dispositivo para nodo, estante, torre
  • endpointdid para flexible

restart: description:

  • usado con comandos configprofiles y apply_configpatterns
  • cuándo activar las configuraciones. Esto puede ser uno de los siguientes valores
  • deferir - Activar los ajustes de IMM, pero no reiniciar el servidor.
  • inmediato - Activar todas las configuraciones y reiniciar el servidor inmediatamente
  • pendiente - Activar manualmente el perfil del servidor y reiniciar el servidor. esto se puede usar solo con apply_configpatterns. choices:
  • deferir
  • inmediato
  • pendiente

type: description:

  • utilizado con apply_configpatterns, valores válidos son choices:
  • nodo
  • estante
  • torre
  • flexible

powerdown: description: usado con comandos configprofiles para apagar el servidor

resetimm: description: usado con comandos configprofiles para reiniciar el imm

pattern_update_dict: description: usado con el comando import_configpatterns para importar el patrón especificado en esta variable como diccionario.

includeSettings: description: usado con el comando get_configpatterns para obtener configuraciones detalladas de patrones de configuración, establecer esto a 'True'

Obtener todos los patrones de configuración
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217" playbooks/config/config.yml -vvvv --tag get_configpatterns

Obtener patrón de configuración especificado con id
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 id=52" playbooks/config/config.yml -vvvv --tag get_particular_configpattern

Obtener patrón de configuración especificado por id con includeSettings
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 id=52 includeSettings=True" playbooks/config/config.yml -vvvv --tag get_particular_configpattern

Aplicar patrón al endpoint
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 id=65 endpoint=B918EDCA1B5F11E2803EBECB82710ADE restart=pending type=nodo" playbooks/config/config.yml -vvvv --tag apply_configpatterns
usando nombre
----------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 config_pattern_name=From_abcdef endpoint=B918EDCA1B5F11E2803EBECB82710ADE restart=pending type=nodo" playbooks/config/config.yml -vvvv --tag apply_configpatterns
Importar patrón SystemInfo
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 pattern_update_dict={'template_type':'SystemInfo','template':{'contact':'contact','description':'Patrón creado por prueba de API ','location':'location','name':'Learned-System_Info-99','systemName':{'autogen':'Desactivar','hyphenChecked':False},'type':'SystemInfo','uri':'\/config\/template\/61','userDefined':True}}" playbooks/config/config.yml -vvvv --tag import_configpatterns

Importar patrón desde archivo
------------------------
Leer datos de patrón de configuración desde el archivo config_pattern_import.yml en la carpeta vars de configuraciones de roles
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 pattern_file=config_pattern_import.yml pattern_from_file=true" playbooks/config/config.yml -vvvv --tag import_configpatterns

estado de configuración
------------
obtener estado de configuración
ansible-playbook -e "lxca_user=USERID lxca_password=CME44ibm lxca_url=https://10.240.29.217 endpoint=B918EDCA1B5F11E2803EBECB82710ADE" playbooks/config/config.yml -vvvv --tag get_configstatus
Operaciones de Perfil de Configuración
obtener todos los perfiles
----------------
ansible-playbook -e "lxca_user=USERID lxca_password=Passw0rd lxca_url=https://10.240.29.217 subcmd=list" playbooks/config/config.yml -v --tag configprofiles

obtener perfil especificado con id
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220  subcmd=list id=69 " playbooks/config/config.yml -vvvv --tag configprofiles

Cambiar nombre de perfil de id
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=rename id=69 config_profile_name='nombre cambiado 3' " playbooks/config/config.yml -vvvv --tag configprofiles

Activar perfil para el endpoint
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=activate id=69 endpoint=B918EDCA1B5F11E2803EBECB82710ADE restart=inmediato " playbooks/config/config.yml -vvvv --tag configprofiles

Desasignar perfil
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=unassign id=69" playbooks/config/config.yml -vvvv --tag configprofiles

Eliminar perfil
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 id=69 subcmd=delete" playbooks/config/config.yml -vvvv --tag configprofiles

#####Actualizar comandos de Repositorio Las siguientes variables adicionales se utilizan para esta etiqueta

machine_type: description:

  • utilizado con el comando updaterepo
  • es una cadena con un valor como '7903'

fixids: description:

  • utilizado con comandos updaterepo , get_particular_managementserver_pkg y update_managementserver_pkg
  • es una cadena con un valor como 'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch'

scope: description:

  • utilizado con el comando updaterepo, los siguientes son posibles valores
  • all - Cuando lxca_action=refresh está especificado, este parámetro devuelve información sobre todas las versiones de todas las actualizaciones de firmware que están disponibles para todos los dispositivos soportados.
  • latest - Cuando lxca_action=refresh está especificado, este parámetro devuelve información sobre la versión más actual de todas las actualizaciones de firmware para todos los dispositivos soportados.
  • payloads - Cuando lxca_action=acquire está especificado, este parámetro devuelve información sobre actualizaciones de firmware específicas.

file_type: description:

  • utilizado con el comando updaterepo, cuando lxca_action=delete o lxca_action=export está especificado, este parámetro se usa. Puede especificar uno de los siguientes valores
  • all - Elimina archivos de paquete de actualización seleccionados (carga, historial de cambios, readme y archivos de metadatos)
  • payloads - Elimina solo los archivos de imagen de carga seleccionados
Consultas
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=importDir" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=lastRefreshed" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=publicKeys" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=size" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=supportedMts" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=updates" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=updatesByMt" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=query repo_key=updatesByMtByComp" playbooks/config/config.yml -vvvv --tag updaterepo

Acción
----------------
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=read lxca_action=read" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=refresh lxca_action=refresh machine_type=7903" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=delete lxca_action=delete machine_type=7903 file_type=payloads fixids=ibm_fw_imm2_1aoo78j-6.20_anyos_noarch" playbooks/config/config.yml -vvvv --tag updaterepo
ansible-playbook -e "lxca_user=TEST lxca_password=CME44ibm lxca_url=https://10.240.29.220 subcmd=acquire lxca_action=acquire machine_type=7903 scope=payloads fixids=ibm_fw_imm2_1aoo78j-6.20_anyos_noarch" playbooks/config/config.yml -vvvv --tag updaterepo
operaciones del servidor de gestión

Las siguientes variables adicionales se utilizan para esta etiqueta

fixids: description:

  • utilizado con el comando updaterepo , get_particular_managementserver_pkg y update_managementserver_pkg
  • es una cadena con un valor como 'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch'

update_key: description:

  • utilizado con comandos del servidor de gestión, las siguientes son opciones válidas Devuelve el tipo de actualización especificado. Esto puede ser uno de los siguientes valores.
  • all - Devuelve toda la información. Este es el valor predeterminado.
  • currentVersion - Devuelve la versión actual de Lenovo XClarity Administrator.
  • history Devuelve el historial de actualizaciones del servidor de gestión.
  • importDir Devuelve el directorio para el repositorio de actualizaciones del servidor de gestión.
  • size - Devuelve el tamaño del repositorio (en bytes).
  • updates - Devuelve información sobre todos los paquetes de actualizaciones.
  • updatedDate - Devuelve la fecha en que se realizó la última actualización.

files: description:

  • Usado con comandos del servidor de gestión para importar archivos a LXCA, el archivo puede ser especificado como una cadena separada por comas
  • ejemplo
  • '/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.txt, /home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.chg, /home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.xml'
obtener servidor de gestión con diferentes opciones de clave
-----------------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query', 'update_key':'importDir'}" playbooks/config/config.yml -vvvv --tag get_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query', 'update_key':'size'}" playbooks/config/config.yml -vvvv --tag get_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query', 'update_key':'updates'}" playbooks/config/config.yml -vvvv --tag get_managementserver_pkg

obtener detalles particulares con fixids
----------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'query_fixids', 'update_key':'filetypes', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch'}" playbooks/config/config.yml -vvvv --tag get_particular_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217',  'subcmd':'query_fixids', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','type':'readme'}" playbooks/config/config.yml -vvvv --tag get_particular_managementserver_pkg

Opciones de actualización para el servidor de gestión
----------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'refresh'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','subcmd':'acquire'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','subcmd':'apply'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'fixids':'lnvgy_sw_lxca-fw-repository-pack_1-1.0.1_anyos_noarch','subcmd':'delete'}" playbooks/config/config.yml -vvvv --tag update_managementserver_pkg

Importar archivos locales al servidor de gestión
--------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'import', 'files':'/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.txt,/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.chg,/home/naval/updates/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.xml'}" playbooks/config/config.yml -vvvv --tag import_managementserver_pkg

Archivos especificados relativos a los archivos del playbook
----------------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'import', 'files':'../../files/updates/lnvgy_sw_lxca_thinksystemrepo1-1.3.2_anyos_noarch.xml'}" playbooks/config/config.yml -vvvv --tag import_managementserver_pkg

Operaciones de imágenes de sistema operativo

Las siguientes variables adicionales se utilizan para esta etiqueta

subcmd: description:

  • Utilizado con osimage, puede tener los siguientes valores
  • list - listar todos o detalles específicos de imágenes de sistema operativo
  • delete - eliminar detalles de imágenes de sistema operativo especificadas
  • globalsettings - Establecer valores globales utilizados en el despliegue de sistema operativo
  • hostsettings - Configurar valores particulares del host utilizados en el despliegue de sistema operativo
  • hostPlatforms - Usado para desplegar imágenes de sistema operativo
  • remoteFileServers - Usado para operaciones de servidores ftp, http remotos

imagetype: description: Usado con la imagen de sistema operativo para importar el tipo de archivos. choices:

  • BUNDLE
  • BOOT
  • DUD
  • OS
  • OSPROFILE
  • SCRIPT
  • CUSTOM_CONFIG
  • UNATTENDED

osimages_dict: type: dict description: Usado con osimage, se utiliza para establecer parámetros de imágenes de sistema operativo y despliegue.

obtener todas las imágenes de sistema operativo
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'subcmd':'list'}" playbooks/config/config.yml -v --tag osimages

eliminar imágenes de sistema operativo con id
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.197.119','subcmd':'delete','id':'20190227190109_trail.py'}" playbooks/config/config.yml -vvvv --tag osimages

obtener globalSetting para imágenes de sistema operativo
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'globalsettings'}" playbooks/config/config.yml -vvvv --tag osimages

establecer globalSetting para imágenes de sistema operativo
-----------------
para establecer un globalSetting, obtén los detalles de get globalSetting y cambia los
parámetros que deseas modificar. Este ejemplo establece la contraseña predeterminada de LINUX.
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'CME44ibm', 'lxca_url':'https://10.243.9.238', 'subcmd':'globalsettings', 'osimages_dict':{'activeDirectory':{'allDomains': [],'defaultDomain':None}, 'credentials':[{'name': 'root', 'password':'Test1234', 'passwordChanged':True, 'type': 'LINUX'}, {'type': "WINDOWS", 'name': 'Administrator', password: None, 'passwordChanged': False}],'ipAssignment':'dhcpv4', 'isVLANMode': 'false', 'licenseKeys': {'win2012r1': {'dataCenterLicenseKey': '','standardLicenseKey': '',},'win2012r2':{'dataCenterLicenseKey': '', 'standardLicenseKey': ''}, 'win2016r1': {'dataCenterLicenseKey': '', 'standardLicenseKey': ''}, 'win2019r1': {'dataCenterLicenseKey': '','standardLicenseKey': ''}}}}" playbooks/config/config.yml -vvvv --tag osimages

obtener hostSetting para imágenes de sistema operativo
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostsettings'}" playbooks/config/config.yml -vvvv --tag osimages

crear hostSetting para imágenes de sistema operativo
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostsettings', 'osimages_dict':{\"action\": \"create\", \"hosts\": [{\"storageSettings\": {\"targetDevice\": \"localdisk\"}, \"uuid\": \"A1445C6FDBAA11E6A87F86E06E3AFFFF\", \"networkSettings\": {\"dns2\": \"\", \"dns1\": \"10.240.0.10\", \"hostname\": \"nodeundefined\", \"vlanId\": 0, \"selectedMAC\": \"AUTO\", \"gateway\": \"10.243.0.1\", \"subnetMask\": \"255.255.240.0\", \"mtu\": 1500, \"prefixLength\": 64, \"ipAddress\": \"10.243.9.79\"}}, {\"storageSettings\": {\"targetDevice\": \"localdisk\"}, \"uuid\": \"A122FB03FF4011E68D9BA32E3A66DDDD\", \"networkSettings\": {\"dns2\": \"\", \"dns1\": \"10.240.0.10\", \"hostname\": \"proton1\", \"vlanId\": 0, \"selectedMAC\": \"AUTO\", \"gateway\": \"10.243.0.1\", \"subnetMask\": \"255.255.240.0\", \"mtu\": 1500, \"prefixLength\": 64, \"ipAddress\": \"10.243.9.87\"}}]}}" playbooks/config/config.yml -vvvv --tag osimages


actualizar hostSetting para imágenes de sistema operativo
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.197.119','subcmd':'hostsettings', 'osimages_dict':{'action': 'update', 'hosts': [{'storageSettings': {'targetDevice': 'localdisk'}, 'uuid': 'A1445C6FDBAA11E6A87F86E06E3AFFFF', 'networkSettings': {'dns2': '', 'dns1': '10.240.0.10', 'hostname': 'nodeundefined', 'vlanId': 0, 'selectedMAC': 'AUTO', 'gateway': '10.243.0.1', 'subnetMask': '255.255.240.0', 'mt': 1500, 'prefixLength': 64, 'ipAddress': '10.243.9.79'}}, {'storageSettings': {'targetDevice': 'localdisk'}, 'uuid': 'A122FB03FF4011E68D9BA32E3A66DDDD', 'networkSettings': {'dns2': '', 'dns1': '10.240.0.10', 'hostname': 'proton1', 'vlanId': 0, 'selectedMAC': 'AUTO', 'gateway': '10.243.0.1', 'subnetMask': '255.255.240.0', 'mt': 1500, 'prefixLength': 64, 'ipAddress': '10.243.9.87'}}]}}" playbooks/config/config.yml -vvvv --tag osimages


eliminar hostSetting para imágenes de sistema operativo
-----------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostsettings', 'osimages_dict':{'action': 'delete', 'uuid': 'A1445C6FDBAA11E6A87F86E06E3AFFFF'}}" playbooks/config/config.yml -vvvv --tag osimages

importar archivo de imagen de sistema operativo desde servidor remoto
-------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'osimages_imagetype_dict':{'imageType':'OS'}, 'import_dict':{'imageType':'OS','os':'rhels','imageName':'fixed','path':'iso/rhel73.iso','serverId':'1'}}" playbooks/config/config.yml -vvvv --tag import_osimages


importar archivo script de imagen de sistema operativo desde local
-------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217', 'osimages_imagetype_dict':{'imageType':'SCRIPT'}, 'import_dict':{'imageType':'SCRIPT', "imageName":"trail.py", "os":"rhels", "description":"test_python_file", "file": "/home/naval/trail.py" }}" playbooks/config/config.yml -vvvv --tag import_osimages

obtener detalles de plataformas de host para imágenes de sistema operativo
------------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostplatforms'}" playbooks/config/config.yml -vvvv --tag osimages

desplegar imagen de sistema operativo en nodo
----------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'hostplatforms','osimages_dict':{'networkSettings':{'dns1': '10.240.0.10','dns2':'10.240.0.11','gateway':'10.240.28.1','ipAddress':'10.240.29.226','mtu':1500,'prefixLength':64,'selectedMac':'AUTO','subnetMask':'255.255.252.0','vlanId':521},'selectedImage':'rhels7.3|rhels7.3-x86_64-install-Minimal','storageSettings':{'targetDevice':'localdisk'},'uuid':'B918EDCA1B5F11E2803EBECB82710ADE'}}" playbooks/config/config.yml -vvvv --tag osimages

obtener todos los servidores de archivos remotos
-------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers'}" playbooks/config/config.yml -vvvv --tag osimages

Obtener Servidores de Archivos Remotos Específicos
------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers', 'osimages_dict':{'id':'1'}}" playbooks/config/config.yml -vvvv --tag osimages

Eliminar Servidor de Archivos Remoto Específico
---------------------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers', 'osimages_dict':{'deleteid':'2'}}" playbooks/config/config.yml -vvvv --tag osimages

Agregar Servidor de Archivos Remoto
----------------------
ansible-playbook -e "{'lxca_user':'USERID', 'lxca_password':'Passw0rd', 'lxca_url':'https://10.240.29.217','subcmd':'remotefileservers', 'osimages_dict':{'displayName':'TEST99','address': '192.168.1.10','keyPassphrase': 'Passw0rd','keyType': 'RSA-2048','port': 8080,'protocol': 'HTTPS'}}" playbooks/config/config.yml -vvvv --tag osimages

-vvv es un comando opcional de verbose que ayuda a identificar qué está sucediendo durante la ejecución del playbook.

- name: obtener datos de configtargets de LXCA
  pylxca_module:
    login_user: "{{ lxca_user }}"
    login_password: "{{ lxca_password }}"
    auth_url: "{{ lxca_url }}"
    id: "{{ id }}"
    command_options: configtargets
  register: rslt
  tags:
     configtargets
Acerca del proyecto

The lxca-config ansible role facilitates configuration of managed endpoiints from Lenovo xClarity Adiministrator.

Instalar
ansible-galaxy install lenovo.lxca-config
Licencia
bsd-3-clause
Descargas
36.3k
Propietario
Open source projects from Lenovo