Volver al blog

Kubernetes servicio

Resumen Técnico & Objetivo

Los servicios son un tipo de objeto en kubernetes aqui vamos mostrar como crear una configuracion minima de un servicio. Tener instalado y ejecutandose docker minikube kubectl C...

Índice del artículo (2 secciones)

Los servicios son un tipo de objeto en kubernetes aqui vamos mostrar como crear una configuracion minima de un servicio.

Requerimientos

Tener instalado y ejecutandose

  • docker
  • minikube
  • kubectl

Creacion

Creamos el deployment con el selector mi-web

apiVersion: apps/v1
kind: Deployment
metadata:
  name: mi-web
  labels:
    app: aplicacion-externa
spec:
  replicas: 5
  selector:
    matchLabels:
      app: mi-web
  template:
    metadata:
      labels:
        app: mi-web
    spec:
      containers:
      - name: nginx
        image: nginx:1.20-alpine
        ports:
        - containerPort: 80
$ kubectl apply -f deploy.yaml

kubeview deploy

Creamos el servicio haciendo referencia al selector mi-app.

apiVersion: v1
kind: Service
metadata:
  name: mi-servicio
spec:
  selector:
    app: mi-web
  ports:
    -protocol: TCP
      port: 80
      targetPort: 80
$ kubectl apply -f service.yaml

kubeview deploy

Para acceder a nuestra aplicación tenemos node-port load balancer e ingress aquí ponemos un ejemplo del primero ya que estamos trabajando de forma local

apiVersion: v1
kind: Service
metadata:
  name: servicio-nodeport
spec:
  type: NodePort
  selector:
    app: mi-web
  ports:
    - port: 80
      targetPort: 80
      nodePort: 30007
$ kubectl apply -f node-port.yaml