diff --git a/content/es/docs/tutorials/_index.md b/content/es/docs/tutorials/_index.md index e7638f1344..7fed31f2f6 100644 --- a/content/es/docs/tutorials/_index.md +++ b/content/es/docs/tutorials/_index.md @@ -27,7 +27,7 @@ Antes de recorrer cada tutorial, recomendamos añadir un marcador a * [Introduction to Kubernetes (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x#) -* [Hello Minikube](/docs/tutorials/hello-minikube/) +* [Hello Minikube](/es/docs/tutorials/hello-minikube/) ## Configuración diff --git a/content/es/docs/tutorials/hello-minikube.md b/content/es/docs/tutorials/hello-minikube.md new file mode 100644 index 0000000000..144256637b --- /dev/null +++ b/content/es/docs/tutorials/hello-minikube.md @@ -0,0 +1,275 @@ +--- +title: Hello Minikube +content_template: templates/tutorial +weight: 5 +menu: + main: + title: "Get Started" + weight: 10 + post: > +
¿Listo para poner manos a la obra? Construye un clúster sencillo de Kubernetes que ejecuta un Hola Mundo para Node.js
+card: + name: tutorials + weight: 10 +--- + +{{% capture overview %}} + +Este tutorial muestra como ejecutar una aplicación Node.js Hola Mundo en Kubernetes utilizando +[Minikube](/docs/setup/learning-environment/minikube) y Katacoda. +Katacoda provee un ambiente de Kubernetes desde el navegador. + +{{< note >}} +También se puede seguir este tutorial si se ha instalado [Minikube localmente](/docs/tasks/tools/install-minikube/). +{{< /note >}} + +{{% /capture %}} + +{{% capture objectives %}} + +* Desplegar una aplicación Hola Mundo en Minikube. +* Ejecutar la aplicación. +* Ver los logs de la aplicación. + +{{% /capture %}} + +{{% capture prerequisites %}} + +Este tutorial provee una imagen de contenedor construida desde los siguientes archivos: + +{{< codenew language="js" file="minikube/server.js" >}} + +{{< codenew language="conf" file="minikube/Dockerfile" >}} + +Para más información sobre el comando `docker build`, lea la [documentación de Docker ](https://docs.docker.com/engine/reference/commandline/build/). + +{{% /capture %}} + +{{% capture lessoncontent %}} + +## Crear un clúster Minikube + +1. Haz clic en **Launch Terminal** + + {{< kat-button >}} + + {{< note >}}Si se tiene instalado Minikube local, ejecutar `minikube start`.{{< /note >}} + +2. Abrir el tablero de Kubernetes dashboard en un navegador: + + ```shell + minikube dashboard + ``` + +3. Solo en el ambiente de Katacoda: En la parte superior de la terminal, haz clic en el símbolo + y luego clic en **Select port to view on Host 1**. + +4. Solo en el ambiente de Katacoda: Escribir `30000`, y hacer clic en **Display Port**. + +## Crear un Deployment + +Un [*Pod*](/docs/concepts/workloads/pods/pod/) en Kubernetes es un grupo de uno o más contenedores, +asociados con propósitos de administración y redes. El Pod en este tutorial tiene solo un contenedor. +Un [*Deployment*](/docs/concepts/workloads/controllers/deployment/) en Kubernetes verifica la salud del Pod y reinicia su contenedor si este es eliminado. Los Deployments son la manera recomendada de manejar la creación y escalación. + +1. Ejecutar el comando `kubectl create` para crear un Deployment que maneje un Pod. El Pod ejecuta un contenedor basado en la imagen proveida por Docker. + + ```shell + kubectl create deployment hello-node --image=k8s.gcr.io/echoserver:1.4 + ``` + +2. Ver el Deployment: + + ```shell + kubectl get deployments + ``` + + El resultado es similar a: + + ``` + NAME READY UP-TO-DATE AVAILABLE AGE + hello-node 1/1 1 1 1m + ``` + +3. Ver el Pod: + + ```shell + kubectl get pods + ``` + + El resultado es similar a: + + ``` + NAME READY STATUS RESTARTS AGE + hello-node-5f76cf6ccf-br9b5 1/1 Running 0 1m + ``` + +4. Ver los eventos del clúster: + + ```shell + kubectl get events + ``` + +5. Ver la configuración `kubectl`: + + ```shell + kubectl config view + ``` + + {{< note >}} Para más información sobre el comando `kubectl`, ver [kubectl overview](/docs/user-guide/kubectl-overview/).{{< /note >}} + +## Crear un Service + +Por defecto, el Pod es accedido por su dirección IP interna dentro del clúster de Kubernetes, para hacer que el contenedor `hello-node` sea accesible desde afuera de la red virtual Kubernetes, se debe exponer el Pod como un + [*Service*](/docs/concepts/services-networking/service/) de Kubernetes. + +1. Exponer el Pod a la red pública de internet utilizando el comando `kubectl expose`: + + ```shell + kubectl expose deployment hello-node --type=LoadBalancer --port=8080 + ``` + + El flag `--type=LoadBalancer` indica que se quiere exponer el Service fuera del clúster. + +2. Ver el Service creado: + + ```shell + kubectl get services + ``` + + El resultado es similar a: + + ``` + NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE + hello-node LoadBalancer 10.108.144.78