-
-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ci.jenkins.io] Create private EKS cluster with "side" services (datadog, ACP, etc.) #4319
Comments
Discussed with @smerle33:
|
change of usage for the module since last time we used it https://github.com/terraform-aws-modules/terraform-aws-eks/blob/master/docs/UPGRADE-20.0.md |
We choose to deal with all the IAM usage within the private repository https://github.com/jenkins-infra/terraform-states/commit/cfd08c45dd4153d676c9223670f927d515585679 |
Related to jenkins-infra/helpdesk#4319 (comment) This PR introduces ACP in the AWS EKS cluster `cijenkinsio-agents-2`. it's the first set of hypothesis (EBS persistence on gp3)
ACP is now installed (jenkins-infra/terraform-aws-sponsorship#74, jenkins-infra/terraform-aws-sponsorship#75, jenkins-infra/kubernetes-management#6073) |
Next steps (all elements have the same priority):
|
for part 1 (jenkins namespace, service account, rbac and iam link with VM iam identity and kubernetes service account): namespace, service account and rbac are dealt with the helm chart: https://github.com/jenkins-infra/helm-charts/tree/main/charts/jenkins-kubernetes-agents |
…rs builds (#6026) as per jenkins-infra/helpdesk#4319 (comment) and following #6020 this PR add the jenkins-kubernetes-agents releases with service-account, rbac, ressources-quotas, dockerhub-registry-secrets as per https://github.com/jenkins-infra/helm-charts/blob/main/charts/jenkins-kubernetes-agents/
Continuing the Jenkins container Agents related tasks in #4317 (comment) |
This comment has been minimized.
This comment has been minimized.
Update about the "private link" (e.g. allowing VM agents in other private subnets to access ACP): As per https://docs.aws.amazon.com/eks/latest/userguide/network-load-balancing.html#network-load-balancer:
=> It means we only need a LB set to internal and associated to the VM agents subnets in the EKS cluster to allow access. No need for private link which is more a "VPC to VPC" tool. Next steps:
|
Update: edited body of the issue to specify we want to use Karpenter (https://karpenter.sh/v0.32/concepts/) |
Related to jenkins-infra/helpdesk#4319 (comment) This PR sets up the Kubernetes Service for Artifact Caching Proxy in the new ci.jenkins.io-agents-2 cluster to be exposed through an AWS internal load balancer. Tested with success locally. Source documentations: - https://docs.aws.amazon.com/eks/latest/userguide/auto-configure-nlb.html - https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/guide/service/annotations/
Last step: Remove cluster autoscaler and set up Karpenter instead. Rationale of using Karpenter instead of Cluster Autoscaler: instead of artificially constraining nodes to some size, we can relax these constraint to always get a node at the right price. |
Karpenter is installed (ref. jenkins-infra/terraform-aws-sponsorship#91) : the cluster is now ready. Let's continue in #4317 |
We need a private EKS cluster to run ci.jenkins.io container agents.
"agents" x86 Node pool to host usual Linux agents: https://github.com/jenkins-infra/azure/blob/e81b9697e4a9cedebf10e119b6a5a112e09b651f/ci.jenkins.io-kubernetes-agents.tf#L103"bom agents" x86 Node pool to host BOm agents: https://github.com/jenkins-infra/azure/blob/e81b9697e4a9cedebf10e119b6a5a112e09b651f/ci.jenkins.io-kubernetes-agents.tf#L137The text was updated successfully, but these errors were encountered: