Kubernetes custom resources and custom controllers in AWS EKS

0

Hello,

I would like to practice developing Kubernetes custom resources and custom controllers. Is AWS EKS suitable for this purpose? I'm new to this topic, so I'm not sure if EKS managed control plains could be extended with new API resources.

I
asked 3 months ago546 views
3 Answers
2
Accepted Answer

Hi,

Maybe you can start by this page of EKS workshop to learn how Custom Resources can defined and managed in EKS: https://archive.eksworkshop.com/intermediate/270_custom_resource_definition/creating_co/

The full chapter is here: https://archive.eksworkshop.com/intermediate/270_custom_resource_definition/

Best,

Didier

profile pictureAWS
EXPERT
answered 3 months ago
profile picture
EXPERT
reviewed 3 months ago
1

Hello,

Please try this solution.

developing Kubernetes custom resources and custom controllers on AWS EKS, first, create an EKS cluster and configure kubectl to connect to it. Define your custom resource definition (CRD) in a YAML file and apply it to your cluster using kubectl apply -f filename. Develop your custom controller using a Kubernetes client library like client-go for Go. Build your controller into a Docker image, push it to a container registry such as Amazon ECR, and deploy it to your cluster with a Kubernetes Deployment manifest. Finally, create instances of your custom resource, monitor the controller logs, and iterate on your controller code as needed to ensure it manages the custom resources correctly.

Please look at AWS Document Link You will get more information.

https://archive.eksworkshop.com/intermediate/270_custom_resource_definition/creating_co/

EXPERT
answered 3 months ago
1

Hi I,

Yes, AWS EKS is suitable for developing Kubernetes custom resources and custom controllers. Follow these steps:

  • Set Up EKS Cluster: Use the AWS EKS Getting Started Guide.
  • Install Tools: Ensure kubectl and eksctl are installed.
  • Create CRDs: Define Custom Resource Definitions (CRDs).
  • Develop Controllers: Use Kubebuilder or Operator SDK.
  • Deploy and Test: Apply CRDs and deploy your controller.
  • Monitor and Troubleshoot: Use kubectl logs and kubectl describe to check logs and resource status.

https://docs.aws.amazon.com/eks/

https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/

https://book.kubebuilder.io/

profile picture
EXPERT
Sandeep
answered 3 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions