Our pod is now running but we need to be able to connect to it. To do that, we will deploy a Service.
One of the reasons why we are running this on a cloud-based cluster is the ability to deploy load-balancers. I know what you are thinking; “Why are we deploying a load-balancer for a single pod?". At this stage, we’re doing it to prepare for next steps which will include scaling-out of our application.
Create a Service
Create a file called cloud-lb.yml:
katarinabrookfield@KatsMac hugo-site % vi cloud-lb.yml
Enter the following info into the cloud-lb.yml file:
apiVersion: v1 kind: Service metadata: name: hugo-site-lb spec: type: LoadBalancer ports: - port: 80 targetPort: 8080 selector: project: hugo-site
Deploy the Service
Run the following command to deploy the service:
katarinabrookfield@KatsMac hugo-site % kubectl apply -f cloud-lb.yml service/hugo-site-lb created katarinabrookfield@KatsMac hugo-site % kubectl get svc NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE hugo-site-lb LoadBalancer 10.128.32.145 18.104.22.168 80:32542/TCP 4s
You should now be able to browser to your External-IP and see your website.
If you are in IT and following this, chances are that you bought a domain years ago and never used it. Well, now is your chance!
I had a test domain in AWS to I have created two A records for advecti.io and www.advecti.io for my load-balancer IP.
You should now be able to access your website using your domain name!