Kubernetes logo on an open laptop screen

Creating Kubernetes services

Matthew Casperson

This post is the 5th in our Kubernetes training series, providing DevOps engineers with an introduction to Docker, Kubernetes, and Octopus.

This video demonstrates how to expose pods to network traffic via a service.

If you don't already have Octopus account, you can start a free trial.

MetalLB has been updated since this video was recorded to use Custom Resource Definitions (CRDs).

You can still apply these manifests to apply version 0.12, which is the version used by this video:

And then apply this ConfigMap:

apiVersion: v1
kind: ConfigMap
  namespace: metallb-system
  name: config
  config: |
    - name: default
      protocol: layer2

You can work through the series using the links below.


Sample Service YAML

apiVersion: v1
kind: Service
  name: webapp
    app: webapp
  type: LoadBalancer
    - protocol: TCP
      port: 80
      targetPort: 80

Learn more

If you're looking to build and deploy containerized applications to AWS platforms such as EKS and ECS, the Octopus Workflow Builder populates a GitHub repository with a sample application built with GitHub Actions workflows and configures a hosted Octopus instance with sample deployment projects demonstrating best practices such as vulnerability scanning and Infrastructure as Code (IaC).

Happy deployments!