Use Ansible para probar contenedores en OpenShift 4

¿Desarrolla o mantiene contenedores para ejecutarse en entornos OpenShift 4? Si es así, querrá probar el contenedor para asegurarse de que funciona correctamente.

Red Hat proporciona contenedores independientes diseñados para funcionar en entornos OpenShift 4, pero aún debe asegurarse de que el contenedor se esté ejecutando. Es bueno probar contenedores en el proceso de integración continua (CI). Red Hat proporciona procesos para preparar OpenShift entornos para sus clientes, por lo que todo lo que necesitan hacer es proporcionar un caso de prueba que garantice que cada contenedor funcione correctamente. Sin embargo, no necesita ser cliente de Red Hat para crear una prueba. A continuación, le indicamos cómo hacerlo, tanto si es cliente de Red Hat como si trabaja solo.

Índice

Crear una prueba

Para probar el contenedor en un entorno OpenShift 4, debe indicar dónde descargar el contenedor, cómo implementarlo y cómo probarlo. En este ejemplo estoy usando un RHEL con PostgreSQL 10 envase.

Por ejemplo, puede especificar la prueba de esta manera:

---
registry_redhat_io: "rhscl/postgresql-10-rhel7"
tag_name: "postgresql:10-el7"
deployment: "oc new-app postgresql:10-el7~https://github.com/sclorg/postgresql-container.git 
     --name new-postgresql 
     --context-dir examples/extending-image/ 
     -e POSTGRESQL_USER=user 
     -e POSTGRESQL_DATABASE=db 
     -e POSTGRESQL_PASSWORD=password"
pod_name: "new-postgresql"
add_route: true
test_exec_command: "./files/check_postgresql_container.sh"
expected_exec_result: "FINE"
check_curl_output: “SOMETHING from curl output”
scl_url: "postgresql-container"
is_name: "postgresql"

Aquí está el significado de cada campo:

  • registro redhat_io: La imagen en registry.redhat.io con el espacio de nombres (en este caso, rhscl)
  • etiqueta_nombre: especifica la imagen tag_name
  • despliegue: El comando de cómo se implementa la imagen en el entorno de OpenShift 4
  • pod_name: el nombre del pod en el espacio de nombres de OpenShift
  • añadir_ruta: especifica si la ruta debe estar expuesta o no (de forma predeterminada, no lo está)
  • prueba_exec_comando: El archivo que realiza la prueba
  • resultado_exec_esperado: El resultado esperado de la test_exec_command "SOMETHING"
  • comprobar_curl_salida: Parte del contenido de la salida del curl pedido
  • scl_url: Especifica el nombre del repositorio en el caso de SCL.org contenedores
  • es nombre: especifica el flujo de imágenes del contenedor

Agregar una prueba al conjunto de pruebas general de OpenShift 4

usé un Ansible Banco de pruebas Colecciones de software proyecto que puede manejar los requisitos de OpenShift, como ejecutar contenedores. Una manera fácil de acceder al conjunto de pruebas es presentar una solicitud de extracción en el repositorio GitHub.

Si no desea compartir la prueba, siempre puede agregarla y ejecutarla con nuestro conjunto de pruebas.

Las etapas son:

  1. Clonar el ansible-tests depositar:
    $ git clone https://github.com/sclorg/ansible-tests
  2. Cambia al repositorio clonado:
    $ cd ansible-tests
  3. Agregue su conjunto de pruebas en el directorio vars. PostgreSQL 10 ya está presente.
  4. Agregue su conjunto de pruebas de contenedores a Este archivo.

[ Learn How to check deployment health on Red Hat OpenShift. ]

Tan pronto como cree el archivo de prueba que no desea compartir, debe agregarlo a un directorio.

Ejecutar una prueba

Si ya instaló un clúster de OpenShift 4, probar su contenedor es sencillo. Utilice los siguientes pasos.

  1. Descargue la última versión del cliente OpenShift 4 para su sistema desde espejo.
  2. Luego extraiga el archivo usando tar:
    $ tar -xzvf <FILE>
  3. Descargue el archivo kubeconfig. Para conectarse al clúster de OpenShift 4, debe obtener la kubeconfig archivar. Solicite el archivo a su administrador de clústeres de OpenShift 4. Cuando tenga el kubeconfig archivo disponible en su sistema, ejecute:
    $ export KUBECONFIG=<path_to_kubeconfig>/kubeconfig
  4. Ejecute su prueba en su entorno OpenShift 4.
    1. Cambia al repositorio clonado:
      $ cd ansible-tests
    2. Finalmente, ejecuta la prueba:
      $ make ocp4-tests EXT_TEST=<your_name>

Prueba tu contenedor

Puede agregar pruebas para su contenedor siguiendo los pasos de este artículo. Al ejecutar sus pruebas en un clúster de OpenShift 4, no tiene que preocuparse por instalar y configurar el clúster si un administrador lo configura por usted. Si desea obtener más información sobre OpenShift, visite el sitio de Red Hat Nube híbrida Blog.

Artículos de interés

Subir