Am trying to deploy a simple Nginx example with external-dns:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: nginx
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/target-type: pod
alb.ingress.kubernetes.io/security-groups: eks-staging-lbs
alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:us-west-2:1234567890:certificate/asdfghjk-asdf-1234-qwer-zxcvbnmlpokji
labels:
app: nginx
spec:
rules:
- host: nginx.example.org
http:
paths:
- path: /
backend:
serviceName: nginx
servicePort: 80
---
apiVersion: v1
kind: Service
metadata:
name: nginx
labels:
app: nginx
spec:
type: NodePort
ports:
- port: 80
targetPort: 80
protocol: TCP
selector:
app: nginx
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginx
spec:
template:
metadata:
labels:
app: nginx
spec:
containers:
- image: nginx
name: nginx
ports:
- containerPort: 80
name: http
But the controller is crashing:
AWS ALB Ingress controller
Release: 1.0-beta.4
Build: git-a6565ea4
Repository: https://github.com/kubernetes-sigs/aws-alb-ingress-controller
-------------------------------------------------------------------------------
I0731 03:39:27.201773 1 flags.go:131] Watching for Ingress class: alb
W0731 03:39:27.201920 1 client_config.go:552] Neither --kubeconfig nor --master was specified. Using the inClusterConfig. This might not work.
I0731 03:39:27.202081 1 main.go:159] Creating API client for https://10.100.0.1:443
I0731 03:39:27.221773 1 main.go:203] Running in Kubernetes cluster version v1.10 (v1.10.3) - git (clean) commit 2bba0127d85d5a46ab4b778548be28623b32d0b0 - platform linux/amd64
I0731 03:39:27.222458 1 alb.go:85] ALB resource names will be prefixed with 279b181a
I0731 03:39:27.233760 1 alb.go:158] Starting AWS ALB Ingress controller
I0731 03:39:27.618438 1 albingresses.go:64] Building list of existing ALBs
I0731 03:39:27.731745 1 albingresses.go:72] Fetching information on 1 ALBs
I0731 03:39:28.346980 1 targetgroups.go:97] default/nginx: Fetching Targets for Target Group arn:aws:elasticloadbalancing:us-west-2:1234567890:targetgroup/279b181a-nginx-2448bb63a89e1/58e5a4e5f7ff6793
I0731 03:39:28.407154 1 rules.go:26] default/nginx: Fetching Rules for Listener arn:aws:elasticloadbalancing:us-west-2:1234567890:listener/app/279b181a-default-nginx-ef8b/3260919fc7acac9c/67503dc43686d270
I0731 03:39:28.425451 1 albingress.go:237] default/nginx: Ingress rebuilt from existing ALB in AWS
I0731 03:39:28.425495 1 albingresses.go:88] Assembled 1 ingresses from existing AWS resources in 807.034019ms
I0731 03:39:29.626080 1 leaderelection.go:185] attempting to acquire leader lease kube-system/ingress-controller-leader-alb...
I0731 03:39:29.639129 1 leaderelection.go:194] successfully acquired lease kube-system/ingress-controller-leader-alb
I0731 03:39:29.639165 1 status.go:152] new leader elected: alb-ingress-controller-7859857fdd-wcvs9
I0731 03:39:33.001677 1 loadbalancer.go:506] default/nginx: Modifying ELBV2-managed security groups.
I0731 03:39:33.001943 1 targetgroup.go:315] default/nginx: Modifying target group targets. Adding (192.168.43.204:80) and removing (us-west-2c:80)
I0731 03:39:33.002224 1 event.go:221] Event(v1.ObjectReference{Kind:"Ingress", Namespace:"default", Name:"nginx", UID:"1f94f195-9452-11e8-8735-024f56d2dcb2", APIVersion:"extensions/v1beta1", ResourceVersion:"787297", FieldPath:""}): type: 'Warning' reason: 'ERROR' 279b181a-default-nginx-ef8b security group modification failed: No ports specified on ingress. Ingress resource may be misconfigured
E0731 03:39:33.285359 1 albingress.go:295] default/nginx: Failed to reconcile state on this ingress
E0731 03:39:33.285382 1 albingress.go:297] default/nginx: - Failed ELBV2-managed security groups modification: No ports specified on ingress. Ingress resource may be misconfigured
E0731 03:39:33.285394 1 albingress.go:300] default/nginx: Will retry to reconcile in 1m0.35932564s
I0731 03:39:33.285630 1 event.go:221] Event(v1.ObjectReference{Kind:"Ingress", Namespace:"default", Name:"nginx", UID:"1f94f195-9452-11e8-8735-024f56d2dcb2", APIVersion:"extensions/v1beta1", ResourceVersion:"787297", FieldPath:""}): type: 'Normal' reason: 'MODIFY' 279b181a-nginx-2448bb63a89e1 target group modified
E0731 03:39:59.550694 1 runtime.go:66] Observed a panic: &runtime.TypeAssertionError{_interface:(*runtime._type)(0x16340e0), concrete:(*runtime._type)(0x1583d60), asserted:(*runtime._type)(0x153aee0), missingMethod:""} (interface conversion: interface {} is string, not *string)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:72
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:65
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:51
/home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:522
/home/travis/.gimme/versions/go/src/runtime/panic.go:513
/home/travis/.gimme/versions/go/src/runtime/iface.go:248
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/aws/albec2/ec2.go:261
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:301
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:128
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:143
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:123
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:123
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:431
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:297
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/controller.go:202
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:552
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:203
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:203
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:548
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:546
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:390
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:71
/home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:1333
panic: interface conversion: interface {} is string, not *string [recovered]
panic: interface conversion: interface {} is string, not *string
goroutine 185 [running]:
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime.HandleCrash(0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:58 +0x108
panic(0x1696b20, 0xc00092b4a0)
/home/travis/.gimme/versions/go/src/runtime/panic.go:513 +0x1b9
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/aws/albec2.(*EC2).GetSecurityGroups(0xc0001f2b80, 0xc00000ca50, 0x1, 0x1, 0x1, 0xc00000ca50, 0x0, 0x1, 0x1aa9380)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/aws/albec2/ec2.go:261 +0x91f
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer.parseSecurityGroups(0x1aa9520, 0xc000410f20, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:301 +0x487
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer.loadBalancer.Parse(0x1aa8840, 0xc0000785c0, 0x1aa9520, 0xc000410f20, 0x169d940, 0x189bf00, 0x2c17400, 0x1aa9520)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:128 +0x403
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations.Extractor.extract(0xc00046b890, 0x188a240, 0xc0008792c0, 0x1ae6140, 0xc000410f20, 0x409828, 0x10, 0x1583d60, 0x1)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:143 +0x135
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations.Extractor.ExtractIngress(0xc00046b890, 0xc000410f20, 0x2f)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:123 +0xa1
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store.(*k8sStore).extractIngressAnnotations(0xc0000785c0, 0xc000410f20)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:431 +0x114
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store.New.func4(0x189bf00, 0xc000410f20, 0x189bf00, 0xc000410f20)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:297 +0xec
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.ResourceEventHandlerFuncs.OnUpdate(0xc000026300, 0xc000026360, 0xc000026330, 0x189bf00, 0xc000410f20, 0x189bf00, 0xc000410f20)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/controller.go:202 +0x5d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run.func1.1(0x42b2d3, 0xc0008e75c8, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:552 +0x18b
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.ExponentialBackoff(0x989680, 0x3ff0000000000000, 0x3fb999999999999a, 0x5, 0xc0008d9e18, 0x42ade2, 0xc0006400d0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:203 +0x9c
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run.func1()
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:548 +0x89
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1(0xc0008e7768)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133 +0x54
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc0008d9f68, 0xdf8475800, 0x0, 0x163a801, 0xc0000861e0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134 +0xbe
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.Until(0xc0008e7768, 0xdf8475800, 0xc0000861e0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88 +0x4d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run(0xc00038b280)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:546 +0x8d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run-fm()
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:390 +0x2a
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.(*Group).Start.func1(0xc0000fbc60, 0xc0004a6020)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:71 +0x4f
created by github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.(*Group).Start
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:69 +0x62
I have a security group specifically created for ALBs using Terraform, with a Name tag of eks-staging-lbs. The EKS workers' security group is configured to accept all traffic from this ALB security group.
Is this a documented bug already or is this new?
If I don't specify a security group to attach to the ALB, the controller correctly provisions one. However, it does not add the rule to accept traffic from it to the worker's own security group, instead opting to create its own instance security group. It then does not attach this newly-created instance security group to the workers. I'm confused as to why this instance security group is being created.
facing siimilar situation
I0731 14:07:27.607339 1 main.go:24] [ALB-INGRESS] [controller] [INFO]: Log level read as "", defaulting to INFO. To change, set LOG_LEVEL environment variable to WARN, ERROR, or DEBUG.
I0731 14:07:27.607805 1 launch.go:112] &{ALB Ingress Controller 1.0-beta.4 git-385f5365 git://github.com/kubernetes-sigs/aws-alb-ingress-controller}
I0731 14:07:27.607833 1 launch.go:115] Watching for ingress class: alb
I0731 14:07:27.608046 1 launch.go:282] Creating API client for https://172.20.0.1:443
I0731 14:07:27.626393 1 launch.go:294] Running in Kubernetes Cluster version v1.10 (v1.10.3) - git (clean) commit 2bba0127d85d5a46ab4b778548be28623b32d0b0 - platform linux/amd64
I0731 14:07:27.629501 1 launch.go:134] validated kube-system/default-http-backend as the default backend
I0731 14:07:27.638363 1 alb-controller.go:121] [ALB-INGRESS] [controller] [INFO]: Ingress class set to alb
I0731 14:07:27.638384 1 alb-controller.go:130] [ALB-INGRESS] [controller] [INFO]: albNamePrefix undefined, defaulting to 63694e71
I0731 14:07:27.874546 1 albingresses.go:83] [ALB-INGRESS] [ingress] [INFO]: Building list of existing ALBs
I0731 14:07:27.915980 1 albingresses.go:91] [ALB-INGRESS] [ingress] [INFO]: Fetching information on 0 ALBs
I0731 14:07:27.925688 1 albingresses.go:108] [ALB-INGRESS] [ingress] [INFO]: Assembled 0 ingresses from existing AWS resources in 51.10788ms
I0731 14:07:27.925720 1 controller.go:1359] starting Ingress controller
I0731 14:07:27.930804 1 event.go:218] Event(v1.ObjectReference{Kind:"Ingress", Namespace:"default", Name:"webapp-alb-ingress", UID:"1df27725-94c8-11e8-b4e4-060bff6edc1a", APIVersion:"extensions", ResourceVersion:"18526", FieldPath:""}): type: 'Normal' reason: 'CREATE' Ingress default/webapp-alb-ingress
I0731 14:07:28.346865 1 leaderelection.go:174] attempting to acquire leader lease...
I0731 14:07:28.347081 1 controller.go:477] backend reload required
I0731 14:07:28.357555 1 leaderelection.go:184] successfully acquired lease kube-system/ingress-controller-leader-alb
I0731 14:07:28.357602 1 status.go:193] new leader elected: alb-ingress-controller-7599fd9969-57nvn
E0731 14:07:28.759524 1 runtime.go:66] Observed a panic: "invalid memory address or nil pointer dereference" (runtime error: invalid memory address or nil pointer dereference)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:72
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:65
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:51
/home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:522
/home/travis/.gimme/versions/go/src/runtime/panic.go:513
/home/travis/.gimme/versions/go/src/runtime/panic.go:82
/home/travis/.gimme/versions/go/src/runtime/signal_unix.go:390
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/alb/tg/targetgroups.go:141
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/alb/lb/loadbalancer.go:116
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/albingress/albingress.go:123
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/albingress/albingresses.go:53
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/controller/alb-controller.go:217
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/controller/alb-controller.go:200
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller/controller.go:479
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller/controller.go:175
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task/queue.go:89
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task/queue.go:49
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task/queue.go:49
/home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:1333
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
panic: runtime error: invalid memory address or nil pointer dereference
Can you guys try with 1.0-beta.5? That release included a lot of work on supporting EKS
The original error [op's] seems to be a matter of only passing in one security group where it was expecting an array.
home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:1333
panic: interface conversion: interface {} is string, not *string [recovered]
panic: interface conversion: interface {} is string, not *string
Ive tried 1.0-beta.5. It still fails
Using a trailing comma seems to be a workarround for now
alb.ingress.kubernetes.io/security-groups: albing,
Can you give me the stack trace? That shouldn鈥檛 be a big deal to track down and fix
I0801 20:01:07.494773 1 event.go:221] Event(v1.ObjectReference{Kind:"Ingress", Namespace:"echoserver", Name:"echoserver", UID:"6e952797-9508-11e8-9812-06e1fa182b34", APIVersion:"extensions/v1beta1", ResourceVersion:"897878", FieldPath:""}): type: 'Warning' reason: 'ERROR' error instantiating load balancer: Error getting Service annotations, no object matching key "echoserver/responder" in local store
E0801 20:01:24.208386 1 runtime.go:66] Observed a panic: &runtime.TypeAssertionError{_interface:(*runtime._type)(0x163b540), concrete:(*runtime._type)(0x158af20), asserted:(*runtime._type)(0x1542120), missingMethod:""} (interface conversion: interface {} is string, not *string)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:72
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:65
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:51
/home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:522
/home/travis/.gimme/versions/go/src/runtime/panic.go:513
/home/travis/.gimme/versions/go/src/runtime/iface.go:248
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/aws/albec2/ec2.go:263
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:305
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:129
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:143
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:123
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:123
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:444
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:310
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/controller.go:202
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:552
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:203
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:203
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:548
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:546
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:390
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:71
/home/travis/.gimme/versions/go/src/runtime/asm_amd64.s:1333
panic: interface conversion: interface {} is string, not *string [recovered]
panic: interface conversion: interface {} is string, not *string
goroutine 196 [running]:
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime.HandleCrash(0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:58 +0x108
panic(0x169e040, 0xc000a694a0)
/home/travis/.gimme/versions/go/src/runtime/panic.go:513 +0x1b9
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/aws/albec2.(*EC2).GetSecurityGroups(0xc0000868b0, 0xc00000c118, 0x1, 0x1, 0x1, 0xc00000c118, 0x0, 0x1, 0x1ab18e0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/aws/albec2/ec2.go:263 +0x91f
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer.parseSecurityGroups(0x1ab1a80, 0xc000a6e000, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:305 +0x487
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer.loadBalancer.Parse(0x1ab55c0, 0xc0003a0280, 0x1ab1a80, 0xc000a6e000, 0x16a4f60, 0x18a3ce0, 0x2c26300, 0x1ab1a80)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/loadbalancer/main.go:129 +0x403
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations.Extractor.extract(0xc0003be0f0, 0x1892020, 0xc0003da3c0, 0x1aeec80, 0xc000a6e000, 0x409828, 0x10, 0x158af20, 0x56366d601)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:143 +0x135
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations.Extractor.ExtractIngress(0xc0003be0f0, 0xc000a6e000, 0x2f)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/annotations/annotations.go:123 +0xa1
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store.(*k8sStore).extractIngressAnnotations(0xc0003a0280, 0xc000a6e000)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:444 +0x114
github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store.New.func4(0x18a3ce0, 0xc00010c158, 0x18a3ce0, 0xc000a6e000)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/internal/ingress/controller/store/store.go:310 +0xec
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.ResourceEventHandlerFuncs.OnUpdate(0xc0004eecf0, 0xc0004eed50, 0xc0004eed20, 0x18a3ce0, 0xc00010c158, 0x18a3ce0, 0xc000a6e000)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/controller.go:202 +0x5d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run.func1.1(0x42b2d3, 0xc000829dc8, 0x4f792f536472672f)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:552 +0x18b
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.ExponentialBackoff(0x989680, 0x3ff0000000000000, 0x3fb999999999999a, 0x5, 0xc00083be18, 0x42ade2, 0xc00009a210)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:203 +0x9c
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run.func1()
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:548 +0x89
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1(0xc000829f68)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133 +0x54
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc00083bf68, 0xdf8475800, 0x0, 0x1641c01, 0xc0003f20c0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134 +0xbe
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.Until(0xc000829f68, 0xdf8475800, 0xc0003f20c0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88 +0x4d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run(0xc0003b9180)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:546 +0x8d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache.(*processorListener).run-fm()
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/client-go/tools/cache/shared_informer.go:390 +0x2a
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.(*Group).Start.func1(0xc000115640, 0xc0004e0000)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:71 +0x4f
created by github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.(*Group).Start
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:69 +0x62
Thanks for catching that, a fix is being built now
See crash as well.
Below the new annotation I am trying,
alb.ingress.kubernetes.io/listen-ports: 9001
alb.ingress.kubernetes.io/healthcheck-interval-seconds: 75
alb.ingress.kubernetes.io/healthcheck-path: /xyz/v1/ready
alb.ingress.kubernetes.io/healthcheck-port: 31822
alb.ingress.kubernetes.io/healthcheck-protocol: HTTP
alb.ingress.kubernetes.io/healthcheck-timeout-seconds: 10
alb.ingress.kubernetes.io/healthy-threshold-count: 1
alb.ingress.kubernetes.io/unhealthy-threshold-count: 10
alb.ingress.kubernetes.io/ssl-policy: ELBSecurityPolicy-TLS-1-1-2017-01
goroutine 95 [running]:
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime.HandleCrash(0x0, 0x0, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:58 +0x108
panic(0x1829aa0, 0x2e2c810)
/home/travis/.gimme/versions/go/src/runtime/panic.go:513 +0x1b9
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/aws/albec2.ClusterSubnets(0x0, 0xc00004000d, 0xa, 0xc000428390, 0x2e650a0, 0x43c8c3, 0x16f4700, 0x380, 0xc000010360)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/aws/albec2/ec2.go:725 +0x73
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/annotations.(Annotations).setSubnets(0xc000780000, 0xc0000b12c0, 0xc00004000d, 0xa, 0xc000428390, 0x1c8de80, 0x2e63fd8, 0x2e63fd8, 0x1c6d080)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/annotations/annotations.go:495 +0x1387
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/annotations.(ValidatingAnnotationFactory).ParseAnnotations(0xc0002e50a0, 0xc0003f1740, 0x0, 0x0, 0x4719d2)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/annotations/annotations.go:154 +0x774
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/albingress.NewALBIngressFromIngress(0xc000374b00, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/albingress/albingress.go:99 +0x1ec
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/albingress.NewALBIngressesFromIngresses(0xc000969908, 0xc0004d06c0, 0x1, 0x1)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/albingress/albingresses.go:53 +0x2d1
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/controller.(albController).update(0xc0003b6a00)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/controller/alb-controller.go:217 +0x386
github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/controller.(albController).OnUpdate(0xc0003b6a00, 0xc000622ce0, 0x3, 0x3, 0xc0001ea050, 0x1, 0x1, 0x2e63fd8, 0x0, 0x0, ...)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/pkg/controller/alb-controller.go:200 +0x2b
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller.(GenericController).syncIngress(0xc0000e83c0, 0x171d760, 0xc00006fe70, 0xc00006fe70, 0x0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller/controller.go:479 +0x7b8
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller.(GenericController).syncIngress-fm(0x171d760, 0xc00006fe70, 0xa, 0xc0007afe20)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller/controller.go:175 +0x3e
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task.(Queue).worker(0xc0003beae0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task/queue.go:89 +0x115
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task.(Queue).worker-fm()
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task/queue.go:49 +0x2a
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil.func1(0xc0007affa8)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:133 +0x54
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.JitterUntil(0xc000969fa8, 0x3b9aca00, 0x0, 0xc00044da01, 0xc0000844e0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:134 +0xbe
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait.Until(0xc0007affa8, 0x3b9aca00, 0xc0000844e0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88 +0x4d
github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task.(*Queue).Run(0xc0003beae0, 0x3b9aca00, 0xc0000844e0)
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/task/queue.go:49 +0x5d
created by github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller.GenericController.Start
/home/travis/gopath/src/github.com/kubernetes-sigs/aws-alb-ingress-controller/vendor/k8s.io/ingress/core/pkg/ingress/controller/controller.go:1390 +0x4a8
(provision-nKrhB7O9) bash-3.2$
@lemonshow Can you check if you still get that error on 1.0-beta.5? The annotation parsing has changed a lot between .4 and .5.
You are using the wrong format for listen-ports but the error should be handled better. If it still looks bad in the latest code, can you please open up an issue to track that error separately? Thanks!
listen-ports: Defines the ports the ALB will expose. It defaults to [{"HTTP": 80}] unless a certificate ARN is defined, then it is [{"HTTPS": 443}]. Uses a format as follows '[{"HTTP":8080,"HTTPS": 443}]'.
Still see listen port error with beta.5
error: error validating "abc-ingress.yaml": error validating data: ValidationError(Ingress.metadata.annotations.alb.ingress.kubernetes.io/listen-ports): invalid type for io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta.annotations: got "array", expected "string"; if you choose to ignore these errors, turn validation off with --validate=false
alb.ingress.kubernetes.io/listen-ports: [{"HTTP": 9001}]
image: quay.io/coreos/alb-ingress-controller:1.0-beta.5
@lemonshow should it not be wrapped in single quotes (like a normal YAML string)?
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 9001}]'