Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift

Red Hat OpenShift Serverless es un conjunto de componentes orientados a Kubernetes, gestionados por eventos, para microservicios, contenedores y implementaciones de Function-as-a-Service (FaaS).

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift

Esta solución 'listo para usar' incluye herramientas de seguridad y enrutamiento de tráfico, y combina Red Hat Operators, Knative y Red Hat OpenShift para ejecutar cargas de trabajo sin estado y sin servidor en la plataforma OpenShift en entornos privados, públicos, híbridos y multicloud.

OpenShift Serverless permite a los desarrolladores concentrarse por completo en la creación de aplicaciones de nueva generación, ofreciendo una amplia variedad de lenguajes de programación, marcos, entornos de desarrollo y otras herramientas para crear y desplegar productos comerciales innovadores.

Características clave de Red Hat OpenShift Serverless:

  • Una amplia selección de lenguajes de programación y componentes runtime para aplicaciones sin servidor. Puedes elegir exactamente el conjunto de herramientas que necesitas.
  • Escalado horizontal automático según la intensidad de las solicitudes o mediante la ocurrencia de eventos para una gestión eficiente de los recursos basada en necesidades reales y no supuestas.
  • Integración completa con OpenShift Pipelines, un sistema de integración y entrega continua (CI/CD) orientado a Kubernetes, basado en Tekton.
  • Base en forma de Red Hat Operator, que permite a los administradores gestionar de forma segura las instancias en ejecución y actualizarlas, además de organizar el ciclo de vida de las aplicaciones de manera similar a los servicios en la nube.
  • Seguimiento constante de nuevos lanzamientos comunitarios, incluyendo Knative 0.13 Serving, Eventing y kn (el CLI oficial para Knative) – al igual que con todos los demás productos de Red Hat, esto significa una riguroso testeo y verificación en diversas plataformas y configuraciones de OpenShift.

Además, Red Hat colabora estrechamente en tecnologías sin servidor con varios socios, así como con Microsoft en asuntos de Azure Functions y KEDA (ver más en aquí). En particular, ya existe un operador de OpenShift certificado por TriggerMesh, y recientemente comenzamos una colaboración con Serverless.com, para que el Serverless Framework pueda trabajar con OpenShift Serverless y Knative. Estas asociaciones pueden considerarse como un signo de la madurez de lo serverless y el inicio de la formación de un ecosistema industrial.

Si anteriormente instalaste la versión preliminar de Red Hat OpenShift Serverless, puedes actualizarla a la versión pública GA (disponibilidad general). Para la versión Technology Preview, será necesario reconfigurar el Canal de Suscripción de OLM, como se muestra en la Figura 1.

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Figura 1. Actualización del canal de suscripción.

El canal de suscripción debe actualizarse para que corresponda a la versión de OpenShift Container Platform, ya sea 4.4 o 4.3.

Servicios Knative – atención de primer nivel

OpenShift 4.4 simplifica enormemente la implementación de aplicaciones con la funcionalidad de OpenShift Serverless, permitiendo desplegar sin esfuerzo los Servicios Knative directamente desde el modo Desarrollador de la consola web de OpenShift.

Al agregar una nueva aplicación al proyecto, basta con especificar el tipo de recurso como Knative Service, activando instantáneamente la funcionalidad de OpenShift Serverless e incluyendo la escalabilidad a cero en modo de espera, como se muestra en la Figura 2.

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Figura 2. Selección de Knative Service como tipo de recurso.

Instalación sencilla utilizando Kourier

Como ya mencionamos en el anuncio de la versión OpenShift Serverless 1.5.0 Tech Preview, el uso de Kourier ha permitido reducir drásticamente la lista de requisitos para instalar Serverless en OpenShift, y en la versión GA, estos requisitos son aún menos. Todo esto reduce el consumo de recursos, acelera el inicio en frío de las aplicaciones, y también se elimina la influencia de cargas de trabajo regulares, no serverless, que operan en el mismo espacio de nombres.

En general, estas mejoras, junto con las mejoras en OpenShift 4.3.5, aceleran la creación de aplicaciones a partir de un contenedor preconstruido en un 40-50% dependiendo del tamaño de la imagen.
Cómo ocurre todo sin el uso de Kourier se puede ver en la Figura 3:

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Figura 3. Tiempo para crear aplicaciones en casos donde no se usa Kourier.

Cómo ocurre todo cuando se aplica Kourier se puede ver en la Figura 4:

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Figura 4. Tiempo para crear aplicaciones al usar Kourier.

TLS/SSL de manera automática

OpenShift Serverless ahora puede crear y desplegar automáticamente TLS/SSL para la ruta (OpenShift Route) de tu Knative Service, para que no te distraigas con la implementación y el mantenimiento de estas funciones al trabajar en la aplicación. En otras palabras, Serverless libera al desarrollador de las complejidades relacionadas con TSL, manteniendo a su vez un alto nivel de seguridad que todos esperan de Red Hat OpenShift.

Interfaz de línea de comandos de OpenShift Serverless

En OpenShift Serverless se llama kn y está disponible directamente en la consola de OpenShift en la página de Herramientas de Línea de Comando, como se muestra en la Fig. 5:

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Fig. 5. Página de descarga de la interfaz de línea de comandos de OpenShift Serverless.

Al descargar desde esta página, obtienes la versión kn para MacOS, Windows o Linux, verificada por Red Hat y garantizada sin malware.

La Fig. 6 muestra cómo en kn se puede desplegar un servicio con un solo comando, lo que permite crear en segundos una instancia de aplicación en la plataforma OpenShift con acceso a través de URL:

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Fig. 6. Uso de la interfaz de línea de comandos kn.

Esta herramienta permite gestionar plenamente los recursos de Serverless Serving y Eventing sin tener que ver o modificar ninguna configuración YAML.

Vista mejorada de Topología en el modo Desarrollador de la consola

Ahora veamos cómo la vista mejorada de Topología facilita la gestión de los Servicios Knative.

Visualización centrada en el Servicio Knative

Los Servicios Knative en la página de la vista de Topología se muestran como un rectángulo que contiene todas las revisiones, como se muestra en la Fig. 7:

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Fig. 7. Servicios Knative en la página de vista de Topología.

Aquí se puede ver instantáneamente los porcentajes actuales de distribución del tráfico del Servicio Knative, además de agrupar los Servicios Knative dentro de un grupo de aplicaciones para controlar visualmente lo que sucede dentro del grupo seleccionado.

Colapso de listas de Servicios Knative de OpenShift

Continuando con el tema de agrupaciones, cabe señalar que en OpenShift 4.4 se pueden colapsar los Servicios Knative dentro de un grupo de aplicaciones para una visualización y gestión más conveniente de los servicios, cuando se implementan aplicaciones más complejas en el proyecto.

Servicio Knative en detalle

En OpenShift 4.4 también se ha mejorado la barra lateral para los Servicios Knative. Ahora hay una pestaña Recursos, donde se muestran los componentes del servicio, como Pods, Revisiones y Rutas. Estos componentes también permiten un acceso rápido y fácil a los registros de los pods individuales.

La vista de Topología también muestra los porcentajes de distribución del tráfico y permite cambiar rápidamente la configuración. De este modo, puedes obtener rápidamente la distribución del tráfico para el Servicio Knative seleccionado en tiempo real mediante el número de pods que están funcionando para la revisión dada, como se muestra en la Fig. 8.

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Fig. 8. Distribución del tráfico del Servicio Knative.

Una mirada más profunda a las Revisiones Serverless

La vista Topología ahora permite una exploración mucho más profunda de la revisión seleccionada, por ejemplo, ver rápidamente todos sus pods y, si es necesario, consultar sus registros. Además, en esta vista se puede acceder fácilmente a los despliegues y configuraciones de la revisión, así como a la subruta que apunta directamente a esta revisión, como se muestra en la Fig. 9:

Las aplicaciones sin servidor son más rápidas y fáciles con OpenShift
Fig. 9. Recursos asociados a las revisiones.

Esperamos que las novedades descritas anteriormente te sean útiles al crear y gestionar aplicaciones sin servidor, y que en las próximas versiones haya aún más funciones útiles para los desarrolladores, como la posibilidad de crear fuentes de eventos y otras.

¿Interesado?

¡Prueba OpenShift!

Valoramos tu opinión

Cuéntanosqué piensas sobre las soluciones serverless. Únete a nuestro grupo de Google OpenShift Developer Experience para participar en discusiones y seminarios en Office Hours, para colaborar con nosotros y dejar tus comentarios y sugerencias.

Información adicional

Descubre más sobre el desarrollo de aplicaciones en OpenShift mediante los siguientes recursos de Red Hat:

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster