Redundant VPC VR goes dual PRIMARY (race condition?)
- 主要言語
- Java
- スター
- 3.1k
- フォーク
- 1.4k
- 平均マージ
- 6日 19時間
- マージ済み PR(30日)
- 32
説明
### 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 設定を使い、VPC、ネットワーク層、VM インスタンスを CloudStack 4.21.0 上に配置して、dual-primary 状態を再現します。コメント内のデバッグ情報を読み、インターフェースプログラミングと互いに異なる keepalived 設定を通じて、改変されたアドレス情報を追跡します。ネットワーク層の高速な作成によって 2 つのプライマリ VPC や共有 VIP が生成されなくなり、リカバリ動作が適切な回帰テストでカバーされれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- terraform
- 領域
- cloud, networking
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 活発
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 45/100