Key Points

  • AWS EKS is a service that we can use to set up Kubernetes.

  • The deployment.yaml file is used to specify how our pods should be created.

  • The service.yaml file is used to specify how our pods are exposed.

deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
  labels:
    app: my-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: my-app
  template:
    metadata:
      labels:
        app: my-app
    spec:
      containers:
      - name: simple-node
        image: YOUR_DOCKER_HUB/simple-node
        ports:
        - containerPort: 80

 

service.yaml

apiVersion: v1
kind: Service
metadata:
  name: my-app
  labels:
    run: my-app
spec:
  ports:
  - port: 80
    protocol: TCP
  selector:
    run: my-app

 

Creating a Kubernetes Cluster on AWS

Creating an EKS Cluster

  1. Create cluster in EKS
  2. Create and specify role for Kubernetes cluster
  3. Enable public access

Creating a Node Group

  1. Add Node Group in the newly-created cluster
  2. Create and specify role for IAM role for node group
  3. Create and specify SSH key for node group
  4. Set instance type to t3.micro for cost-savings as we learn how to use Kubernetes
  5. Specify desired number of nodes
[AWS] Kubernetes on AWS_sed

Docker images are loaded from the container registry into Kubernetes pods. Access to the pods are exposed to consumers through a service.