Redundant VPC VR goes dual PRIMARY (race condition?)
- 主要語言
- Java
- 星號
- 3.1k
- 分支
- 1.4k
- 平均合併
- 7 天 14 小時
- 30 天內合併 PR
- 31
描述
### problem
When multiple network tiers are brought up in quick succession in a redundant VPC, I can consistently reproduce both VPCs going primary.
This is really bad because the VIP is then owned by both Virtual Routers and it means traffic is getting dropped like crazy, it makes the entire VPC unusable. Restarting the VPC recovers it to a good state.
Please see the comments for debugging information, but in short it appears at least one of the nodes ends up getting munged address information which causes the wrong ips to be programmed on interfaces and the keepalived configs to diverge between nodes which causes the dual primary. The underlying cause of the issue is this munged address information.
### versions
4.21.0
### The steps to reproduce the bug
Use Terraform to create the VPC, network tiers, and VM Instances.
Terraform configuration being used is here: https://github.com/bradh352/terraform-config
### What to do about it?
_No response_
貢獻指南
研究方向
首先,使用 issue 中連結的 Terraform 設定重現雙主狀態,在 CloudStack 4.21.0 上配置 VPC、網路層和 VM 執行個體。閱讀留言中的偵錯資訊,並透過介面程式設計和彼此不同的 keepalived 設定追蹤遭竄改的位址資訊。當快速建立網路層不再產生兩個主要 VPC 或共用 VIP,且復原行為由適當的回歸測試涵蓋時,即表示完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- terraform
- 領域
- cloud, networking
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 活躍
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100