question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

ingressclassparams.elbv2.k8s.aws "alb" already exists

See original GitHub issue

What happened?

I am trying to deploy 2 different applications on AWS eks using pulumi. If I am applying ingress for the first time, there is no problem, but when I want to make an update, I get the error ingressclassparams.elbv2.k8s.aws "alb" already exists.

Steps to reproduce

Since my application is a bit complex, I tried to deploy a simple application to a new aws account, but I got the same error.

  • first time deploy works fine
  • When I try to make any changes and make a new deploy, I get the above error.

cluster.ts

import * as eks from '@pulumi/eks';
import * as k8s from '@pulumi/kubernetes';
import * as awsx from '@pulumi/awsx';
import { Output } from '@pulumi/pulumi';
import * as config from '../config';

import {
  vpc,
  sg,
  cert,
  awsAlbServiceAccountName,
  kubeSystemNameSpace,
} from './input';
import { managerService } from './manager';
import { hasuraService } from './hasura';

const namespaceName = 'default';
const cluster = new eks.Cluster(config.CLUSTER_NAME, {
  name: config.CLUSTER_NAME,
  vpcId: vpc.id,
  publicSubnetIds: vpc.publicSubnetIds,
  privateSubnetIds: vpc.privateSubnetIds,
  instanceType: config.CLUSTER_NODE_INSTANCE_TYPE,
  createOidcProvider: true,
  desiredCapacity: 2,
  minSize: 1,
  maxSize: 3,
});

sg.createIngressRule('postgres-access', {
  location: {
    sourceSecurityGroupId: cluster.nodeSecurityGroup.id,
  },
  ports: new awsx.ec2.TcpPorts(5432),
  description: 'Postgres access for nodes',
});

const kubeconfig: Output<any> = cluster.kubeconfig;

const urn: Output<string> = cluster.urn;

const helmChartTransformation = (obj: any) => {
  if (obj['kind'] === 'CustomResourceDefinition') delete obj['status'];
};
const albIngressController = new k8s.helm.v3.Chart(
  'alb',
  {
    chart: 'aws-load-balancer-controller',
    version: '1.4.2',
    fetchOpts: {
      repo: 'https://aws.github.io/eks-charts',
    },
    namespace: kubeSystemNameSpace,
    values: {
      clusterName: cluster.eksCluster.name,
      region: 'us-east-1',
      vpcId: vpc.id,
      replicaCount: 1,
      keepTLSSecret: true,
      serviceAccount: {
        name: awsAlbServiceAccountName,
        create: false,
      },
    },
    transformations: [helmChartTransformation],
  },
  { provider: cluster.provider }
);

const ingress = new k8s.networking.v1.Ingress(
  `${config.PROJECT_NAME}-ingress`,
  {
    apiVersion: 'networking.k8s.io/v1',
    metadata: {
      labels: {
        app: 'ingress',
      },
      namespace: namespaceName,
      annotations: {
        'alb.ingress.kubernetes.io/scheme': 'internet-facing',
        'alb.ingress.kubernetes.io/certificate-arn': cert.arn,
        'alb.ingress.kubernetes.io/target-type': 'ip',
      },
    },
    spec: {
      ingressClassName: 'alb',
      rules: [
        {
          host: config.MANAGER_APP_HOST_NAME,
          http: {
            paths: [
              {
                path: '/',
                pathType: 'Prefix',
                backend: {
                  service: {
                    name: managerService.metadata.name,
                    port: { number: 80 },
                  },
                },
              },
            ],
          },
        },
        {
          host: config.HASURA_APP_HOST_NAME,
          http: {
            paths: [
              {
                path: '/',
                pathType: 'Prefix',
                backend: {
                  service: {
                    name: hasuraService.metadata.name,
                    port: { number: 80 },
                  },
                },
              },
            ],
          },
        },
      ],
    },
  },
  { provider: cluster.provider, dependsOn: albIngressController.ready }
);

const ingressHostname: Output<string> =
  ingress.status.loadBalancer.ingress[0].hostname;
const ingressAddress: Output<string> =
  ingress.status.loadBalancer.ingress[0].ip;

Expected Behavior

I would expect the application to deploy smoothly.

Actual Behavior

The pulumi throws the alb already exists error after the first deployment.

Versions used

CLI          
Version      3.34.1
Go Version   go1.18.3
Go Compiler  gc

Plugins
NAME        VERSION
aws         5.8.0
aws         5.8.0
docker      3.2.0
eks         0.40.0
kubernetes  3.19.3
kubernetes  3.18.2
nodejs      unknown
random      4.8.0
tls         4.6.0

Host     
OS       darwin
Version  12.3.1
Arch     arm64

This project is written in nodejs: executable='/Users/yasintz/.nvm/versions/node/v12.22.0/bin/node' version='v12.22.0'

Current Stack: staging

TYPE                                                                       URN
pulumi:pulumi:Stack                                                        urn:pulumi:staging::kismet::pulumi:pulumi:Stack::kismet-staging
pulumi:providers:aws                                                       urn:pulumi:staging::kismet::pulumi:providers:aws::default_5_8_0
awsx:ecr:Repository                                                        urn:pulumi:staging::kismet::awsx:ecr:Repository::kismet-manager-app
awsx:ecr:Repository                                                        urn:pulumi:staging::kismet::awsx:ecr:Repository::kismet-hasura
awsx:x:ec2:SecurityGroup                                                   urn:pulumi:staging::kismet::awsx:x:ec2:SecurityGroup::kismet-sg
awsx:x:ec2:Vpc                                                             urn:pulumi:staging::kismet::awsx:x:ec2:Vpc::kismet-vpc
kubernetes:helm.sh/v3:Chart                                                urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart::alb
eks:index:Cluster                                                          urn:pulumi:staging::kismet::eks:index:Cluster::kismet-k8-cluster
aws:route53/zone:Zone                                                      urn:pulumi:staging::kismet::aws:route53/zone:Zone::kismet.ai
pulumi:providers:tls                                                       urn:pulumi:staging::kismet::pulumi:providers:tls::default_4_6_0
awsx:x:ec2:EgressSecurityGroupRule                                         urn:pulumi:staging::kismet::awsx:x:ec2:SecurityGroup$awsx:x:ec2:EgressSecurityGroupRule::outbound
awsx:x:ec2:IngressSecurityGroupRule                                        urn:pulumi:staging::kismet::awsx:x:ec2:SecurityGroup$awsx:x:ec2:IngressSecurityGroupRule::postgres-access
eks:index:ServiceRole                                                      urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole::kismet-k8-cluster-eksRole
eks:index:ServiceRole                                                      urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole::kismet-k8-cluster-instanceRole
awsx:x:ec2:InternetGateway                                                 urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:InternetGateway::kismet-vpc
awsx:x:ec2:Subnet                                                          urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet::kismet-vpc-private-0
awsx:x:ec2:Subnet                                                          urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet::kismet-vpc-public-1
awsx:x:ec2:NatGateway                                                      urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:NatGateway::kismet-vpc-1
awsx:x:ec2:Subnet                                                          urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet::kismet-vpc-private-1
awsx:x:ec2:NatGateway                                                      urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:NatGateway::kismet-vpc-0
awsx:x:ec2:Subnet                                                          urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet::kismet-vpc-public-0
pulumi:providers:random                                                    urn:pulumi:staging::kismet::pulumi:providers:random::default_4_8_0
tls:index/privateKey:PrivateKey                                            urn:pulumi:staging::kismet::tls:index/privateKey:PrivateKey::auth-private-key
random:index/randomPassword:RandomPassword                                 urn:pulumi:staging::kismet::random:index/randomPassword:RandomPassword::kismet-password
aws:ecr/repository:Repository                                              urn:pulumi:staging::kismet::awsx:ecr:Repository$aws:ecr/repository:Repository::kismet-manager-app
aws:ecr/repository:Repository                                              urn:pulumi:staging::kismet::awsx:ecr:Repository$aws:ecr/repository:Repository::kismet-hasura
pulumi:providers:eks                                                       urn:pulumi:staging::kismet::pulumi:providers:eks::default
eks:index:RandomSuffix                                                     urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:RandomSuffix::kismet-k8-cluster-cfnStackName
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::www-kismet-ai-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::kismet-ai-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::staging-record
aws:ec2/vpc:Vpc                                                            urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$aws:ec2/vpc:Vpc::kismet-vpc
aws:iam/role:Role                                                          urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole$aws:iam/role:Role::kismet-k8-cluster-eksRole-role
aws:iam/role:Role                                                          urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole$aws:iam/role:Role::kismet-k8-cluster-instanceRole-role
aws:ecr/lifecyclePolicy:LifecyclePolicy                                    urn:pulumi:staging::kismet::awsx:ecr:Repository$aws:ecr/lifecyclePolicy:LifecyclePolicy::kismet-manager-app
aws:ecr/lifecyclePolicy:LifecyclePolicy                                    urn:pulumi:staging::kismet::awsx:ecr:Repository$aws:ecr/lifecyclePolicy:LifecyclePolicy::kismet-hasura
aws:ec2/eip:Eip                                                            urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:NatGateway$aws:ec2/eip:Eip::kismet-vpc-0
aws:acm/certificate:Certificate                                            urn:pulumi:staging::kismet::aws:acm/certificate:Certificate::cert
aws:ec2/eip:Eip                                                            urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:NatGateway$aws:ec2/eip:Eip::kismet-vpc-1
aws:ec2/routeTable:RouteTable                                              urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTable:RouteTable::kismet-vpc-private-1
aws:ec2/securityGroup:SecurityGroup                                        urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroup:SecurityGroup::kismet-k8-cluster-eksClusterSecurityGroup
aws:ec2/routeTable:RouteTable                                              urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTable:RouteTable::kismet-vpc-public-1
aws:ec2/subnet:Subnet                                                      urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/subnet:Subnet::kismet-vpc-public-0
aws:ec2/internetGateway:InternetGateway                                    urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:InternetGateway$aws:ec2/internetGateway:InternetGateway::kismet-vpc
aws:ec2/securityGroup:SecurityGroup                                        urn:pulumi:staging::kismet::awsx:x:ec2:SecurityGroup$aws:ec2/securityGroup:SecurityGroup::kismet-sg
aws:ec2/subnet:Subnet                                                      urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/subnet:Subnet::kismet-vpc-private-0
aws:ec2/routeTable:RouteTable                                              urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTable:RouteTable::kismet-vpc-public-0
aws:ec2/subnet:Subnet                                                      urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/subnet:Subnet::kismet-vpc-private-1
aws:ec2/subnet:Subnet                                                      urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/subnet:Subnet::kismet-vpc-public-1
aws:ec2/routeTable:RouteTable                                              urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTable:RouteTable::kismet-vpc-private-0
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::kismet-k8-cluster-eksClusterInternetEgressRule
aws:iam/rolePolicyAttachment:RolePolicyAttachment                          urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::kismet-k8-cluster-eksRole-4b490823
aws:iam/rolePolicyAttachment:RolePolicyAttachment                          urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::kismet-k8-cluster-instanceRole-03516f97
aws:iam/rolePolicyAttachment:RolePolicyAttachment                          urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::kismet-k8-cluster-instanceRole-e1b295bd
aws:iam/rolePolicyAttachment:RolePolicyAttachment                          urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::kismet-k8-cluster-instanceRole-3eb088f2
aws:ec2/route:Route                                                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/route:Route::kismet-vpc-public-1-ig
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::awsx:x:ec2:SecurityGroup$awsx:x:ec2:EgressSecurityGroupRule$aws:ec2/securityGroupRule:SecurityGroupRule::outbound
aws:ec2/route:Route                                                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/route:Route::kismet-vpc-public-0-ig
aws:ec2/routeTableAssociation:RouteTableAssociation                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTableAssociation:RouteTableAssociation::kismet-vpc-public-0
aws:ec2/routeTableAssociation:RouteTableAssociation                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTableAssociation:RouteTableAssociation::kismet-vpc-private-1
aws:ec2/routeTableAssociation:RouteTableAssociation                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTableAssociation:RouteTableAssociation::kismet-vpc-public-1
aws:ec2/routeTableAssociation:RouteTableAssociation                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/routeTableAssociation:RouteTableAssociation::kismet-vpc-private-0
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::www.kismet.ai-validation-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::kismet.ai-validation-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::gql.kismet.ai-validation-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::api.kismet.ai-validation-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::staging.kismet.ai-validation-record
aws:iam/instanceProfile:InstanceProfile                                    urn:pulumi:staging::kismet::eks:index:Cluster$aws:iam/instanceProfile:InstanceProfile::kismet-k8-cluster-instanceProfile
aws:ec2/natGateway:NatGateway                                              urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:NatGateway$aws:ec2/natGateway:NatGateway::kismet-vpc-0
aws:ec2/natGateway:NatGateway                                              urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:NatGateway$aws:ec2/natGateway:NatGateway::kismet-vpc-1
aws:eks/cluster:Cluster                                                    urn:pulumi:staging::kismet::eks:index:Cluster$aws:eks/cluster:Cluster::kismet-k8-cluster-eksCluster
aws:rds/subnetGroup:SubnetGroup                                            urn:pulumi:staging::kismet::aws:rds/subnetGroup:SubnetGroup::kismet-subnets
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-public-0-cluster-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-public-1-elb-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-private-1-elb-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-private-0-elb-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-private-1-cluster-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-public-1-cluster-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-public-0-elb-tag
aws:ec2/tag:Tag                                                            urn:pulumi:staging::kismet::aws:ec2/tag:Tag::kismet-vpc-private-0-cluster-tag
aws:acm/certificateValidation:CertificateValidation                        urn:pulumi:staging::kismet::aws:acm/certificateValidation:CertificateValidation::kismet-certificate-validation
aws:ec2/route:Route                                                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/route:Route::kismet-vpc-private-0-nat-0
aws:ec2/route:Route                                                        urn:pulumi:staging::kismet::awsx:x:ec2:Vpc$awsx:x:ec2:Subnet$aws:ec2/route:Route::kismet-vpc-private-1-nat-1
aws:ec2/securityGroup:SecurityGroup                                        urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroup:SecurityGroup::kismet-k8-cluster-nodeSecurityGroup
aws:iam/openIdConnectProvider:OpenIdConnectProvider                        urn:pulumi:staging::kismet::eks:index:Cluster$aws:iam/openIdConnectProvider:OpenIdConnectProvider::kismet-k8-cluster-oidcProvider
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::kismet-k8-cluster-eksNodeClusterIngressRule
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::kismet-k8-cluster-eksExtApiServerClusterIngressRule
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::kismet-k8-cluster-eksNodeInternetEgressRule
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::kismet-k8-cluster-eksNodeIngressRule
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::kismet-k8-cluster-eksClusterIngressRule
aws:ec2/securityGroupRule:SecurityGroupRule                                urn:pulumi:staging::kismet::awsx:x:ec2:SecurityGroup$awsx:x:ec2:IngressSecurityGroupRule$aws:ec2/securityGroupRule:SecurityGroupRule::postgres-access
aws:rds/cluster:Cluster                                                    urn:pulumi:staging::kismet::aws:rds/cluster:Cluster::kismet-postgres
aws:iam/role:Role                                                          urn:pulumi:staging::kismet::aws:iam/role:Role::aws-loadbalancer-controller-role
aws:iam/policy:Policy                                                      urn:pulumi:staging::kismet::aws:iam/role:Role$aws:iam/policy:Policy::ingressController-iam-policy
aws:rds/clusterInstance:ClusterInstance                                    urn:pulumi:staging::kismet::aws:rds/clusterInstance:ClusterInstance::postgres-cluster-instance-1
aws:iam/policyAttachment:PolicyAttachment                                  urn:pulumi:staging::kismet::aws:iam/role:Role$aws:iam/policyAttachment:PolicyAttachment::aws-loadbalancer-controller-attachment
pulumi:providers:kubernetes                                                urn:pulumi:staging::kismet::eks:index:Cluster$pulumi:providers:kubernetes::kismet-k8-cluster-eks-k8s
eks:index:VpcCni                                                           urn:pulumi:staging::kismet::eks:index:Cluster$eks:index:VpcCni::kismet-k8-cluster-vpc-cni
kubernetes:core/v1:ConfigMap                                               urn:pulumi:staging::kismet::eks:index:Cluster$kubernetes:core/v1:ConfigMap::kismet-k8-cluster-nodeAccess
aws:ec2/launchConfiguration:LaunchConfiguration                            urn:pulumi:staging::kismet::eks:index:Cluster$aws:ec2/launchConfiguration:LaunchConfiguration::kismet-k8-cluster-nodeLaunchConfiguration
aws:cloudformation/stack:Stack                                             urn:pulumi:staging::kismet::eks:index:Cluster$aws:cloudformation/stack:Stack::kismet-k8-cluster-nodes
pulumi:providers:kubernetes                                                urn:pulumi:staging::kismet::eks:index:Cluster$pulumi:providers:kubernetes::kismet-k8-cluster-provider
kubernetes:core/v1:Service                                                 urn:pulumi:staging::kismet::kubernetes:core/v1:Service::hasura
kubernetes:core/v1:Secret                                                  urn:pulumi:staging::kismet::kubernetes:core/v1:Secret::hasura-secrets
kubernetes:core/v1:ServiceAccount                                          urn:pulumi:staging::kismet::kubernetes:core/v1:ServiceAccount::aws-lb-controller-sa
kubernetes:core/v1:Service                                                 urn:pulumi:staging::kismet::kubernetes:core/v1:Service::manager-app
kubernetes:rbac.authorization.k8s.io/v1:ClusterRoleBinding                 urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:rbac.authorization.k8s.io/v1:ClusterRoleBinding::alb-aws-load-balancer-controller-rolebinding
kubernetes:rbac.authorization.k8s.io/v1:RoleBinding                        urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:rbac.authorization.k8s.io/v1:RoleBinding::kube-system/alb-aws-load-balancer-controller-leader-election-rolebinding
kubernetes:networking.k8s.io/v1:IngressClass                               urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:networking.k8s.io/v1:IngressClass::alb
kubernetes:core/v1:Service                                                 urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:core/v1:Service::kube-system/aws-load-balancer-webhook-service
kubernetes:apps/v1:Deployment                                              urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:apps/v1:Deployment::kube-system/alb-aws-load-balancer-controller
kubernetes:rbac.authorization.k8s.io/v1:ClusterRole                        urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:rbac.authorization.k8s.io/v1:ClusterRole::alb-aws-load-balancer-controller-role
kubernetes:rbac.authorization.k8s.io/v1:Role                               urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:rbac.authorization.k8s.io/v1:Role::kube-system/alb-aws-load-balancer-controller-leader-election-role
kubernetes:apiextensions.k8s.io/v1:CustomResourceDefinition                urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:apiextensions.k8s.io/v1:CustomResourceDefinition::ingressclassparams.elbv2.k8s.aws
kubernetes:apiextensions.k8s.io/v1:CustomResourceDefinition                urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:apiextensions.k8s.io/v1:CustomResourceDefinition::targetgroupbindings.elbv2.k8s.aws
kubernetes:admissionregistration.k8s.io/v1:ValidatingWebhookConfiguration  urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:admissionregistration.k8s.io/v1:ValidatingWebhookConfiguration::aws-load-balancer-webhook
kubernetes:admissionregistration.k8s.io/v1:MutatingWebhookConfiguration    urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:admissionregistration.k8s.io/v1:MutatingWebhookConfiguration::aws-load-balancer-webhook
kubernetes:core/v1:Secret                                                  urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:core/v1:Secret::kube-system/aws-load-balancer-tls
kubernetes:elbv2.k8s.aws/v1beta1:IngressClassParams                        urn:pulumi:staging::kismet::kubernetes:helm.sh/v3:Chart$kubernetes:elbv2.k8s.aws/v1beta1:IngressClassParams::kube-system/alb
kubernetes:networking.k8s.io/v1:IngressClass                               urn:pulumi:staging::kismet::kubernetes:networking.k8s.io/v1:IngressClass::kismet-ingress-class
kubernetes:apps/v1:Deployment                                              urn:pulumi:staging::kismet::kubernetes:apps/v1:Deployment::hasura
kubernetes:apps/v1:Deployment                                              urn:pulumi:staging::kismet::kubernetes:apps/v1:Deployment::manager-app
kubernetes:networking.k8s.io/v1:Ingress                                    urn:pulumi:staging::kismet::kubernetes:networking.k8s.io/v1:Ingress::kismet-ingress
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::gql-record
aws:route53/record:Record                                                  urn:pulumi:staging::kismet::aws:route53/record:Record::api-record


Found no pending operations associated with staging

Backend        
Name           pulumi.com
URL            https://app.pulumi.com/yasinntza
User           yasinntza
Organizations  yasinntza

Dependencies:
NAME                VERSION
@pulumi/aws         5.8.0
@pulumi/awsx        0.40.0
@pulumi/docker      3.2.0
@pulumi/eks         0.40.0
@pulumi/kubernetes  3.19.3
@pulumi/pulumi      3.34.1
@pulumi/random      4.8.0
@pulumi/tls         4.6.0
@types/node         17.0.23
typescript          3.9.10

Pulumi locates its logs in /var/folders/yl/n1dpjgm50csfyc_p79q_jz040000gn/T/ by default

Additional context

At first I thought the problem would be with the controller itself and I created an issue, but I guess pulumi is trying to create a new ingress class with the same name while updating something, without deleting the old one.

https://github.com/kubernetes-sigs/aws-load-balancer-controller/issues/2698

Contributing

Vote on this issue by adding a 👍 reaction. To contribute a fix for this issue, leave a comment (and link to your pull request, if you’ve opened one already).

Issue Analytics

  • State:open
  • Created a year ago
  • Reactions:2
  • Comments:9 (1 by maintainers)

github_iconTop GitHub Comments

1reaction
LukeOmancommented, Jun 29, 2022

I should also mention that this problem doesn’t exist with the k8s.helm.v3.Release() and is how I’ve worked around it currently, but still exists with k8s.helm.v3.Chart()

As per this issue: https://github.com/pulumi/pulumi-kubernetes/issues/1937

0reactions
badaljaincommented, Oct 7, 2022

How do we apply transformations in help release?

Read more comments on GitHub >

github_iconTop Results From Across the Web

Set up an ALB using the AWS Load Balancer Controller on an ...
I want to set up an Application Load Balancer using the AWS Load Balancer Controller on an Amazon Elastic Compute Cloud (Amazon EC2)...
Read more >
Ask Question - Stack Overflow
Looks like you are using an older manifest (prior to K8s 1.18) that uses the ingress class annotation: kubernetes.io/ingress.class: alb.
Read more >
EKS using existing ALB with AWS Load Balancer Controller
I am setting up a cluster in EKS and am having trouble with the AWS Load balancer Controller and using an existing ALB...
Read more >
IngressClass - AWS Load Balancer Controller
specify controller as ingress.k8s.aws/alb to denote Ingresses should be ... apiVersion: elbv2.k8s.aws/v1beta1 kind: IngressClassParams metadata: name: ...
Read more >
Ingress Controller - Amazon EKS Workshop
The AWS ALB Ingress Controller has been rebranded to AWS Load Balancer ... Now let's deploy a sample 2048 game into our Kubernetes...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found