apache / apache/cloudstack-extensions

Network Namespace extension should support untagged public networks

未關閉
#8 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
沒有語言資料
星號
4
分支
4
平均合併
1 小時
30 天內合併 PR
3

描述

## Summary

The current Network Namespace extension code does not support an untagged public network. It treats the public VLAN value as a numeric VLAN ID and attempts to create a VLAN sub-interface. In an environment where the public network is intentionally untagged, this causes the following Marvin tests to fail if the Public network is not tagged (a valid scenario):

- `test_05_isolated_network_full_lifecycle`
- `test_06_vpc_multi_tier_and_restart`
- `test_07_vpc_network_acl`
- `test_09_vpc_source_nat_ip_update`

The later Static NAT and port-forwarding errors appear to be consequences of the initial public-network setup failure, rather than four unrelated test failures.

## Environment

- CloudStack Marvin smoke tests
- Network Namespace extension
- Public network is untagged and uses the existing bridge/uplink path
- No tagged public VLAN is available on this test network

## Observed behavior

The extension attempts to create a VLAN interface using the literal value `untagged`, resulting in an error similar to:

`Error: argument "untagged" is wrong: id is invalid`

The Network Namespace extension script then exits with code 2, and the dependent network operations fail.

## Expected behavior

When the configured public network is untagged, the extension should:

1. Skip creation of an `ethX.` VLAN sub-interface.
2. Use the existing bridge or physical uplink directly.
3. Continue with the required address, route, ARP, and NAT setup.
4. Preserve the current behavior for numeric VLAN configurations.

A public network does not inherently require VLAN tagging; both tagged and untagged deployments are valid. Supporting the explicit `untagged` mode would allow the same tests to run on simple bridge/NAT-based lab networks without requiring an artificial VLAN configuration.

## Validation

Please consider adding coverage for both:

- Numeric VLAN configuration, preserving current tagged behavior.
- Explicit untagged configuration, without creating a VLAN sub-interface.

It would also be helpful if the extension scripts used by a test run could be pinned to a commit or release, rather than fetched from a moving branch at runtime, so that failures remain reproducible.

This issue concerns the Network Namespace extension only; it is not a change to the default CloudStack Virtual Router path.

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

從 Network Namespace extension script 和公共網路設定路徑開始,然後執行列出的 Marvin 測試:test_05_isolated_network_full_lifecycle、test_06_vpc_multi_tier_and_restart、test_07_vpc_network_acl 和 test_09_vpc_source_nat_ip_update。驗證數字 VLAN 設定保留其目前的行為,並驗證明確的 untagged 設定能夠完成位址、路由、ARP 和 NAT 設定,且不會建立 VLAN 子介面。

由索引模型根據 Issue 內容生成。

評估

領域
networking
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
活躍
描述清晰度
基本清楚
新手友好度
55/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。