meta data de esta página
Usando Kubertenes
Kubertenetes usa un fichero de configuración llamado Kubernetes Deployment Object, donde describimos en formato YAML el despliegue a realizar.
un ejemplo del mismo sería el siguiente fichero nginx-despliegue.yaml
apiVersion : apps/v1 kind: Deployment metadata: name: nginx-deployment spec: selector: matchLabels: app: nginx replicas: 2 template: metada: labels: app: nginx spec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort:80
Para realizar este despliegue ejecutaríamos en el manager
kubectl apply -f nginx-despliegue.yaml
Para comprobar lo que ha realizado ejecutaríamos
kubectl deescribe deployment nginx-despliegue
Para comprobar los pods
kubectl get pods -l app=nginx
kubectl describe pod nginx-despliegue-75654585
Para quitar el despliegue
kubectl delete deployment nginx-despliegue
Un ejemplo sin usar un fichero de despliegue
Vamos a desplegar un servidor NGINX directamente
- Desplegamos la imgen de nginx
kubectl create deployment nginx --image=nginx
- Creamos un service para poder acceder desde nuestro navegador
kubectl create service nodeport nginx --tcp=80:80
- Comprobamos en que puerto de salida nos ha expuesto el pod
kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4m nginx NodePort 10.96.25.233 <none> 80:32746/TCP 6s
Finalmente,abrimos nuestro navegador y conectamos a la url http://xxx.xxx.xxx:32746 (IP del nodo manager:puerto por donde lo expone). Al conectar desde el navegador deberías de ver la imagen de bienvenida del servidor ngnix