-
Notifications
You must be signed in to change notification settings - Fork 85
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add Swift network for RGW to HCI scenario
When Ceph RGW is used, an endpoint for Swift storage is hosted not in a pod on k8s but on an EDPM node. Thus, a service hosted on an EDPM node will need to be accessed by cloud users from a separate network. This patch adds the Swift storage network (swift) with VLAN 25 and range 172.22.0.0/24 in the HCI values example. The Swift network is configured on the HCI EDPM nodes and an NNCP, NAD, L2Advertisement and IPAddressPool are defined so that a pod in k8s can connect to it; such as the tempest pod which will perform object storage tests. In order to make these changes va/hci now keeps its own copy of the nncp and networking directories since they differ (by the new network) from the generic ones in the lib directory. Jira: https://issues.redhat.com/browse/OSPRH-6675 Depends-On: openstack-k8s-operators/ci-framework#2301 Signed-off-by: John Fulton <[email protected]>
- Loading branch information
Showing
17 changed files
with
1,335 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
--- | ||
apiVersion: kustomize.config.k8s.io/v1alpha1 | ||
kind: Component | ||
|
||
components: | ||
- metallb | ||
- nad | ||
- netconfig |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,181 @@ | ||
--- | ||
apiVersion: kustomize.config.k8s.io/v1alpha1 | ||
kind: Component | ||
|
||
resources: | ||
- metallb_l2advertisement.yaml | ||
- ocp_ip_pools.yaml | ||
|
||
patches: | ||
- target: | ||
kind: IPAddressPool | ||
labelSelector: "osp/lb-addresses-type=standard" | ||
path: ocp_ip_pool_template.yaml | ||
|
||
replacements: | ||
# IPAddressPool addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.ctlplane.lb_addresses | ||
targets: | ||
- select: | ||
kind: IPAddressPool | ||
name: ctlplane | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.internalapi.lb_addresses | ||
targets: | ||
- select: | ||
kind: IPAddressPool | ||
name: internalapi | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.storage.lb_addresses | ||
targets: | ||
- select: | ||
kind: IPAddressPool | ||
name: storage | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.tenant.lb_addresses | ||
targets: | ||
- select: | ||
kind: IPAddressPool | ||
name: tenant | ||
fieldPaths: | ||
- spec.addresses | ||
|
||
# Loadbalancer address pools | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.ctlplane.lb_addresses | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: IPAddressPool | ||
name: ctlplane | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.internalapi.lb_addresses | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: IPAddressPool | ||
name: internalapi | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.tenant.lb_addresses | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: IPAddressPool | ||
name: tenant | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.ctlplane.lb_addresses | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: IPAddressPool | ||
name: ctlplane | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.storage.lb_addresses | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: IPAddressPool | ||
name: storage | ||
fieldPaths: | ||
- spec.addresses | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.swift.lb_addresses | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: IPAddressPool | ||
name: swift | ||
fieldPaths: | ||
- spec.addresses | ||
|
||
# Loadbalancer interfaces | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.bridgeName | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: L2Advertisement | ||
name: ctlplane | ||
fieldPaths: | ||
- spec.interfaces.0 | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.tenant.iface | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: L2Advertisement | ||
name: tenant | ||
fieldPaths: | ||
- spec.interfaces.0 | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.storage.iface | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: L2Advertisement | ||
name: storage | ||
fieldPaths: | ||
- spec.interfaces.0 | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.internalapi.iface | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: L2Advertisement | ||
name: internalapi | ||
fieldPaths: | ||
- spec.interfaces.0 | ||
- source: | ||
kind: ConfigMap | ||
name: network-values | ||
fieldPath: data.swift.iface | ||
targets: | ||
- select: | ||
group: metallb.io | ||
kind: L2Advertisement | ||
name: swift | ||
fieldPaths: | ||
- spec.interfaces.0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
# | ||
# Additional advertisements can be added here if needed for other networks | ||
# | ||
|
||
--- | ||
apiVersion: metallb.io/v1beta1 | ||
kind: L2Advertisement | ||
metadata: | ||
name: ctlplane | ||
namespace: metallb-system | ||
spec: | ||
ipAddressPools: | ||
- ctlplane | ||
interfaces: | ||
- _replaced_ | ||
--- | ||
apiVersion: metallb.io/v1beta1 | ||
kind: L2Advertisement | ||
metadata: | ||
name: internalapi | ||
namespace: metallb-system | ||
spec: | ||
ipAddressPools: | ||
- internalapi | ||
interfaces: | ||
- _replaced_ | ||
--- | ||
apiVersion: metallb.io/v1beta1 | ||
kind: L2Advertisement | ||
metadata: | ||
name: storage | ||
namespace: metallb-system | ||
spec: | ||
ipAddressPools: | ||
- storage | ||
interfaces: | ||
- _replaced_ | ||
--- | ||
apiVersion: metallb.io/v1beta1 | ||
kind: L2Advertisement | ||
metadata: | ||
name: tenant | ||
namespace: metallb-system | ||
spec: | ||
ipAddressPools: | ||
- tenant | ||
interfaces: | ||
- _replaced_ | ||
--- | ||
apiVersion: metallb.io/v1beta1 | ||
kind: L2Advertisement | ||
metadata: | ||
name: swift | ||
namespace: metallb-system | ||
spec: | ||
ipAddressPools: | ||
- swift | ||
interfaces: | ||
- _replaced_ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
--- | ||
apiVersion: metallb.io/v1beta1 | ||
kind: IPAddressPool | ||
metadata: | ||
name: _ignored_ | ||
spec: | ||
addresses: [] |
Oops, something went wrong.