Desplegar una aplicación de ejemplo

Para explorar Istio, instalarás la aplicación de ejemplo Bookinfo, compuesta por cuatro microservicios separados que se utilizan para demostrar varias características de Istio.

La aplicación de ejemplo Bookinfo de Istio está escrita en muchos lenguajes diferentes
La aplicación de ejemplo Bookinfo de Istio está escrita en muchos lenguajes diferentes

Como parte de esta guía, desplegarás la aplicación Bookinfo y expondrás el servicio productpage utilizando una gateway de entrada.

Desplegar la aplicación Bookinfo

Comienza desplegando la aplicación:

ZipZip
$ kubectl apply -f @samples/bookinfo/platform/kube/bookinfo.yaml@
$ kubectl apply -f @samples/bookinfo/platform/kube/bookinfo-versions.yaml@

Para verificar que la aplicación se está ejecutando, comprueba el estado de los pods:

$ kubectl get pods
NAME                             READY   STATUS    RESTARTS   AGE
details-v1-cf74bb974-nw94k       1/1     Running   0          42s
productpage-v1-87d54dd59-wl7qf   1/1     Running   0          42s
ratings-v1-7c4bbf97db-rwkw5      1/1     Running   0          42s
reviews-v1-5fd6d4f8f8-66j45      1/1     Running   0          42s
reviews-v2-6f9b55c5db-6ts96      1/1     Running   0          42s
reviews-v3-7d99fd7978-dm6mx      1/1     Running   0          42s

Para acceder al servicio productpage desde fuera del cluster, necesitas configurar una gateway de entrada.

Desplegar y configurar la gateway de entrada

Utilizarás la API de Gateway de Kubernetes para desplegar una gateway llamada bookinfo-gateway:

Zip
$ kubectl apply -f @samples/bookinfo/gateway-api/bookinfo-gateway.yaml@

Por defecto, Istio crea un servicio LoadBalancer para una gateway. Como accederás a esta gateway a través de un túnel, no necesitas un balanceador de carga. Cambia el tipo de servicio a ClusterIP anotando la gateway:

$ kubectl annotate gateway bookinfo-gateway networking.istio.io/service-type=ClusterIP --namespace=default

Para comprobar el estado de la gateway, ejecuta:

$ kubectl get gateway
NAME               CLASS   ADDRESS                                            PROGRAMMED   AGE
bookinfo-gateway   istio   bookinfo-gateway-istio.default.svc.cluster.local   True         42s

Espera a que la gateway se muestre como programada antes de continuar.

Acceder a la aplicación

Te conectarás al servicio productpage de Bookinfo a través de la gateway que acabas de aprovisionar. Para acceder a la gateway, necesitas usar el comando kubectl port-forward:

$ kubectl port-forward svc/bookinfo-gateway-istio 8080:80

Abre tu navegador y navega a http://localhost:8080/productpage para ver la aplicación Bookinfo.

Aplicación Bookinfo
Aplicación Bookinfo

Si actualizas la página, deberías ver que la visualización de las calificaciones de los libros cambia a medida que las solicitudes se distribuyen entre las diferentes versiones del servicio reviews.

Próximos pasos

Continúa con la siguiente sección para agregar la aplicación a la malla y aprender a proteger y visualizar la comunicación entre las aplicaciones.

¿Fue útil esta información?
¿Tienes alguna sugerencia para mejorar?

¡Gracias por tus comentarios!