13.2.4 • Published 5 months ago

@grucloud/module-k8s-aws-load-balancer-controller v13.2.4

Weekly downloads
-
License
ISC
Repository
github
Last release
5 months ago

GruCloud Module for the AWS Load Balancer Controller on Kubernetes

Integrate the Aws Load Balancer Controller with GruCloud.

How to use this module

See a simple example.

This module is also used to deploy a full starter kit

Dependecencies

This module depends on the cert-manager which install Custom Resource Definition, aka CRD

Update manifest version

Eventually edit the manifest version in the package.json at the field .scripts.download-manifest.

Download the manifest file locally

npm run download-manifest

Code Generation

The load balancer controler manifest is transformed into javascript code using the k8s-manifest2code tool:

npm run gen-code

This commands creates the resource.js file containing all the resources.

Post Edit: Cluster name

Modify the generated resource.js in 2 places:

  • Specify the cluster name for the LoadBalancerController Deployment
  • Add the AWS Load Balancer Role as a dependencies of LoadBalancerController ServiceAccount. This will link the k8s Serive Account to the Load Balancer AWS IAM Role.
git diff
diff --git a/packages/modules/k8s/aws-load-balancer/resources.js b/packages/modules/k8s/aws-load-balancer/resources.js
index d149bd7c..ae273988 100644
--- a/packages/modules/k8s/aws-load-balancer/resources.js
+++ b/packages/modules/k8s/aws-load-balancer/resources.js
@@ -558,6 +558,9 @@ exports.createResources = async ({ provider, resources }) => {
       }),
     }
   );
+  assert(provider.dependencies.aws.config.eks);
+  const clusterName = provider.dependencies.aws.config.eks.cluster.name;
+  assert(clusterName);

   const kubeSystemawsLoadBalancerControllerDeployment = provider.makeDeployment(
     {
@@ -591,7 +594,7 @@ exports.createResources = async ({ provider, resources }) => {
               containers: [
                 {
                   args: [
-                    "--cluster-name=your-cluster-name",
+                    `--cluster-name=${clusterName}`,
                     "--ingress-class=alb",
                   ],
                   image: "amazon/aws-alb-ingress-controller:v2.1.2",
diff --git a/packages/modules/k8s/aws-load-balancer/resources.js b/packages/modules/k8s/aws-load-balancer/resources.js
index ae273988..76cc1aa9 100644
--- a/packages/modules/k8s/aws-load-balancer/resources.js
+++ b/packages/modules/k8s/aws-load-balancer/resources.js
@@ -323,12 +323,17 @@ exports.createResources = async ({ provider, resources }) => {
     }
   );

+  assert(resources.lbc.roleLoadBalancer);
   const kubeSystemawsLoadBalancerControllerServiceAccount = provider.makeServiceAccount(
     {
       name: "kube-system-aws-load-balancer-controller",
-      properties: () => ({
+      dependencies: { role: resources.lbc.roleLoadBalancer },
+      properties: ({ dependencies: { role } }) => ({
         apiVersion: "v1",
         metadata: {
+          annotations: {
+            "eks.amazonaws.com/role-arn": role?.live?.Arn,
+          },
           labels: {
             "app.kubernetes.io/component": "controller",
             "app.kubernetes.io/name": "aws-load-balancer-controller",
13.2.4

5 months ago

13.2.2

5 months ago

13.2.3

5 months ago

13.2.1

5 months ago

13.2.0

5 months ago

13.0.31-alpha.0

5 months ago

13.1.1

5 months ago

13.1.2

5 months ago

13.1.0

5 months ago

13.0.30-alpha.0

5 months ago

13.0.0

5 months ago

13.0.29-alpha.0

6 months ago

13.0.8-alpha.0

6 months ago

13.0.25-alpha.0

6 months ago

13.0.13-alpha.0

6 months ago

12.10.7

8 months ago

12.10.6

8 months ago

13.0.16-alpha.0

6 months ago

12.10.3

8 months ago

12.10.2

8 months ago

12.10.5

8 months ago

12.10.4

8 months ago

13.0.5-alpha.0

6 months ago

12.10.1

8 months ago

12.10.0

8 months ago

13.0.10-alpha.0

6 months ago

13.0.2-alpha.0

6 months ago

13.0.22-alpha.0

6 months ago

12.11.1

7 months ago

12.11.0

7 months ago

12.6.1

9 months ago

12.6.2

9 months ago

12.6.3

9 months ago

12.6.4

8 months ago

13.0.18-alpha.0

6 months ago

12.12.1

7 months ago

12.12.0

7 months ago

12.12.2

7 months ago

13.0.27-alpha.0

6 months ago

13.0.9-alpha.0

6 months ago

13.0.4-alpha.0

6 months ago

13.0.15-alpha.0

6 months ago

12.13.0

7 months ago

12.13.1

7 months ago

13.0.1-alpha.0

6 months ago

12.8.0

8 months ago

12.14.3

6 months ago

13.0.21-alpha.0

6 months ago

12.14.0

6 months ago

13.0.12-alpha.0

6 months ago

13.0.7-alpha.0

6 months ago

12.7.0

8 months ago

12.7.1

8 months ago

12.7.2

8 months ago

13.0.17-alpha.0

6 months ago

12.15.2

6 months ago

12.15.4

6 months ago

13.0.6-alpha.0

6 months ago

13.0.26-alpha.0

6 months ago

13.0.11-alpha.0

6 months ago

13.0.3-alpha.0

6 months ago

13.0.14-alpha.0

6 months ago

13.0.19-alpha.0

6 months ago

13.0.0-alpha.0

6 months ago

13.0.20-alpha.0

6 months ago

12.9.0

8 months ago

12.9.1

8 months ago

13.0.28-alpha.0

6 months ago

12.9.2

8 months ago

12.9.3

8 months ago

12.9.4

8 months ago

12.4.0

11 months ago

12.0.1

1 year ago

12.3.0

12 months ago

12.2.6

12 months ago

12.2.7

12 months ago

12.2.8

12 months ago

12.2.2

12 months ago

12.2.9

12 months ago

12.5.0

11 months ago

12.1.0

1 year ago

12.2.10

12 months ago

12.2.11

12 months ago

11.1.0

1 year ago

11.0.1

1 year ago

10.4.0

1 year ago

10.7.0

1 year ago

10.7.1

1 year ago

10.3.0

1 year ago

10.6.0

1 year ago

10.6.1

1 year ago

10.5.0

1 year ago

10.1.0

2 years ago

10.0.0

2 years ago

10.0.1

2 years ago

10.0.2

2 years ago

9.1.3

2 years ago

9.2.0

2 years ago

9.1.2

2 years ago

9.0.0

2 years ago

7.6.0

2 years ago

9.1.1

2 years ago

9.1.0

2 years ago

7.7.0

2 years ago

8.0.0

2 years ago

7.3.0

2 years ago

7.4.2

2 years ago

7.4.1

2 years ago

6.2.5

2 years ago

6.2.4

2 years ago

6.2.1

2 years ago

6.2.0

2 years ago

6.2.3

2 years ago

6.2.2

2 years ago

7.4.0

2 years ago

7.0.4

2 years ago

7.0.3

2 years ago

7.0.2

2 years ago

7.5.0

2 years ago

7.1.0

2 years ago

7.2.2

2 years ago

7.2.1

2 years ago

5.3.2

2 years ago

5.3.0

2 years ago

6.1.0

2 years ago

5.11.0

2 years ago

3.6.2

2 years ago

3.6.0

2 years ago

4.0.0

2 years ago

5.8.8

2 years ago

5.8.7

2 years ago

5.8.6

2 years ago

5.8.5

2 years ago

5.8.4

2 years ago

5.8.3

2 years ago

5.8.2

2 years ago

5.8.1

2 years ago

5.8.0

2 years ago

5.4.0

2 years ago

5.0.0

2 years ago

5.12.2

2 years ago

3.5.2

2 years ago

3.5.0

2 years ago

5.9.1

2 years ago

5.9.0

2 years ago

5.5.1

2 years ago

5.5.0

2 years ago

5.1.2

2 years ago

5.1.1

2 years ago

5.1.0

2 years ago

3.4.0

2 years ago

6.0.7

2 years ago

6.0.6

2 years ago

6.0.9

2 years ago

6.0.8

2 years ago

5.6.0

2 years ago

5.2.1

2 years ago

5.2.0

2 years ago

6.0.1

2 years ago

6.0.3

2 years ago

6.0.5

2 years ago

5.10.0

2 years ago

3.3.0

2 years ago

3.7.0

2 years ago

4.1.0

2 years ago

5.7.1

2 years ago

5.7.0

2 years ago

3.2.0

2 years ago

3.0.2

2 years ago

3.1.0

2 years ago

3.0.1

3 years ago

3.0.0

3 years ago

2.2.0

3 years ago

2.3.1

3 years ago

2.1.0

3 years ago

2.0.2

3 years ago

2.0.1

3 years ago

2.0.0

3 years ago

1.39.0

3 years ago

1.40.0

3 years ago

1.38.0

3 years ago

1.37.0

3 years ago

1.36.0

3 years ago

1.32.0

3 years ago

1.34.0

3 years ago

1.33.0

3 years ago

1.31.0

3 years ago

1.29.0

3 years ago

1.30.0

3 years ago

1.27.0

3 years ago

1.28.0

3 years ago

1.26.0

3 years ago

1.25.0

3 years ago

1.23.0

3 years ago

1.24.0

3 years ago

1.22.0

3 years ago

1.21.0

3 years ago

1.20.0

3 years ago

1.19.1

3 years ago

1.19.0

3 years ago

1.18.1

3 years ago

1.18.0

3 years ago

1.15.0

3 years ago

1.14.1

3 years ago

1.13.2

3 years ago

1.14.0

3 years ago

1.12.0

3 years ago

1.17.2

3 years ago

1.17.1

3 years ago

1.15.2

3 years ago

1.16.0

3 years ago

1.15.1

3 years ago

1.17.5

3 years ago

1.17.4

3 years ago

1.17.3

3 years ago

1.10.24

3 years ago

1.10.25

3 years ago

1.11.0

3 years ago

1.10.23

3 years ago

1.10.22

3 years ago

1.10.21

3 years ago

1.10.20

3 years ago

1.10.19

3 years ago

1.10.18

3 years ago

1.10.17

3 years ago

1.10.16

3 years ago

1.10.13

3 years ago

1.10.14

3 years ago

1.10.11

3 years ago

1.10.9

3 years ago

1.10.12

3 years ago

1.10.4

3 years ago

1.10.2

3 years ago

1.10.0

3 years ago

1.9.4

3 years ago

1.9.3

3 years ago