Is this a bug report or a feature request?:
Bug Report
What happened:
After succesfully connecting BGP to my pfSense router and activating the first LoadBalancer service the Speaker pod crashed.
What you expected to happen:
An activated LoadBalancer IP, and a working pod with the attached IP.
How to reproduce it (as minimally and precisely as possible):
ConfigMap
config:
----
peers:
- peer-address: 10.0.24.1
peer-asn: 64512
my-asn: 64512
address-pools:
- name: default
protocol: bgp
addresses:
- 10.2.2.0/24
Anything else we need to know?:
The BGP status was active before the crash (without setting a service type to LoadBalancer).
My router was activly communicationg via BGP with the Speaker and all was running well.
After adding the LoadBalancer type to my service, the Speaker crashed, and the bgp connection went down.
BGP neighbor is 10.0.24.41, remote AS 65512
Description: k8s-master-001
BGP version 4, remote router-id 10.0.24.41
BGP state = Idle
Last read 00:02:53, holdtime 240s, keepalive interval 80s
Message statistics:
Sent Received
Opens 2120 2120
Notifications 2120 0
Updates 0 0
Keepalives 0 0
Route Refresh 0 0
Total 4240 2120
Update statistics:
Sent Received
Updates 0 0
Withdraws 0 0
End-of-Rib 0 0
Last error: AS unacceptable
After inspecting the container in docker, I saw the following crash:
"caller":"bgp.go:62","event":"sessionUp","localASN":64512,"msg":"BGP session established","peer":"10.0.24.1:179","peerASN":64512,"ts":"2018-04-24T11:29:15.761696909Z"}
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x52b8d6]
goroutine 27 [running]:
bytes.(*Buffer).WriteTo(0xc420290230, 0x0, 0x0, 0x7fb6a6f72e78, 0xc420290230, 0xc42050db01)
/usr/local/go/src/bytes/buffer.go:242 +0x96
io.copyBuffer(0x0, 0x0, 0x18fbd40, 0xc420290230, 0x0, 0x0, 0x0, 0x0, 0xc42000e870, 0xc42050dcd0)
/usr/local/go/src/io/io.go:382 +0x30a
io.Copy(0x0, 0x0, 0x18fbd40, 0xc420290230, 0x4, 0xc420311800, 0x0)
/usr/local/go/src/io/io.go:362 +0x68
go.universe.tf/metallb/internal/bgp.sendUpdate(0x0, 0x0, 0x0, 0xc42040a408, 0x4, 0x4, 0xc420311800, 0xc420302380, 0x581ce2)
/go/src/go.universe.tf/metallb/internal/bgp/messages.go:307 +0x273
go.universe.tf/metallb/internal/bgp.(*Session).sendUpdates(0xc4205905b0, 0xc4201ae600)
/go/src/go.universe.tf/metallb/internal/bgp/bgp.go:88 +0x247
go.universe.tf/metallb/internal/bgp.(*Session).run(0xc4205905b0)
/go/src/go.universe.tf/metallb/internal/bgp/bgp.go:64 +0x4a7
created by go.universe.tf/metallb/internal/bgp.New
/go/src/go.universe.tf/metallb/internal/bgp/bgp.go:305 +0x408
Environment:
- MetalLB version: 0.6.1
- Kubernetes version: 1.10.1
- BGP router type/version: pfSense 2.4.1
- OS (e.g. from /etc/os-release): CentOS 7.4 fully patched (as per 24-02-2018)
- Kernel (e.g.
uname -a): 3.10.0-693.21.1
Is this a bug report or a feature request?:
Bug Report
What happened:
After succesfully connecting BGP to my pfSense router and activating the first LoadBalancer service the Speaker pod crashed.
What you expected to happen:
An activated LoadBalancer IP, and a working pod with the attached IP.
How to reproduce it (as minimally and precisely as possible):
ConfigMap
Anything else we need to know?:
The BGP status was active before the crash (without setting a service type to LoadBalancer).
My router was activly communicationg via BGP with the Speaker and all was running well.
After adding the LoadBalancer type to my service, the Speaker crashed, and the bgp connection went down.
After inspecting the container in docker, I saw the following crash:
Environment:
uname -a): 3.10.0-693.21.1