-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add CAPI+CAPM3 wf to multi-conductor experiment
- Loading branch information
Showing
37 changed files
with
1,478 additions
and
95 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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,3 +9,6 @@ macaddrs | |
uuids | ||
sushy-tools-conf/* | ||
bmc-*.yaml | ||
ironic.env | ||
ironic_logs/* | ||
track.csv |
31 changes: 31 additions & 0 deletions
31
Support/Multitenancy/Multiple-Ironic-conductors/Init-environment-v3.sh
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,31 @@ | ||
#!/bin/bash | ||
set -e | ||
trap 'trap - SIGTERM && kill -- -'$$'' SIGINT SIGTERM EXIT | ||
__dir__=$(realpath "$(dirname "$0")") | ||
# shellcheck disable=SC1091 | ||
. ./config.sh | ||
# This is temporarily required since https://review.opendev.org/c/openstack/sushy-tools/+/875366 has not been merged. | ||
sudo ./vm-setup.sh | ||
./install-tools.sh | ||
./configure-minikube.sh | ||
sudo ./handle-images.sh | ||
./build-sushy-tools-image.sh | ||
./generate_unique_nodes.sh | ||
./start_containers.sh | ||
./start-minikube.sh | ||
./build-api-server-container-image.sh | ||
|
||
./install-ironic.sh | ||
./install-bmo.sh | ||
|
||
python create_nodes_v3.py | ||
|
||
export CLUSTER_TOPOLOGY=true | ||
clusterctl init --infrastructure=metal3 | ||
# kubectl apply -f capim-modified.yaml | ||
yq ".spec.replicas = ${N_APISERVER_PODS}" apiserver-deployments.yaml | kubectl apply -f - | ||
./generate-certificates.sh | ||
# Wait for apiserver pod to exists | ||
sleep 120 | ||
|
||
./create-clusters.sh |
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
28 changes: 28 additions & 0 deletions
28
Support/Multitenancy/Multiple-Ironic-conductors/apiserver-deployments.yaml
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,28 @@ | ||
--- | ||
apiVersion: apps/v1 | ||
kind: Deployment | ||
metadata: | ||
name: capim-deployment | ||
namespace: default | ||
spec: | ||
replicas: 2 | ||
selector: | ||
matchLabels: | ||
app: capim | ||
strategy: | ||
type: Recreate | ||
template: | ||
metadata: | ||
labels: | ||
app: capim | ||
spec: | ||
containers: | ||
- image: 172.22.0.1:5000/localimages/capim | ||
imagePullPolicy: Always | ||
name: capim | ||
env: | ||
- name: POD_IP | ||
valueFrom: | ||
fieldRef: | ||
fieldPath: status.podIP | ||
name: apiserver |
1 change: 1 addition & 0 deletions
1
Support/Multitenancy/Multiple-Ironic-conductors/bmo-config/ironic-password
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 @@ | ||
RmqyZqmzgsMF |
1 change: 1 addition & 0 deletions
1
Support/Multitenancy/Multiple-Ironic-conductors/bmo-config/ironic-username
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 @@ | ||
J252UuINJJGn |
40 changes: 40 additions & 0 deletions
40
Support/Multitenancy/Multiple-Ironic-conductors/bmo-config/kustomization.yaml
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,40 @@ | ||
apiVersion: kustomize.config.k8s.io/v1beta1 | ||
kind: Kustomization | ||
namespace: baremetal-operator-system | ||
resources: | ||
- https://github.com/metal3-io/baremetal-operator/config/overlays/basic-auth_tls?ref=release-0.5 | ||
|
||
configMapGenerator: | ||
- name: ironic | ||
behavior: create | ||
envs: | ||
- ironic.env | ||
|
||
patches: | ||
- patch: | | ||
# Don't try to pull again the pre-loaded image | ||
- op: replace | ||
path: /spec/template/spec/containers/0/imagePullPolicy | ||
value: IfNotPresent | ||
target: | ||
kind: Deployment | ||
name: controller-manager | ||
|
||
images: | ||
- name: quay.io/metal3-io/baremetal-operator | ||
newTag: release-0.5 | ||
|
||
# We cannot use suffix hashes since the kustomizations we build on | ||
# cannot be aware of what suffixes we add. | ||
generatorOptions: | ||
disableNameSuffixHash: true | ||
|
||
secretGenerator: | ||
- name: ironic-credentials | ||
files: | ||
- username=ironic-username | ||
- password=ironic-password | ||
- name: ironic-inspector-credentials | ||
files: | ||
- username=ironic-username | ||
- password=ironic-password |
30 changes: 30 additions & 0 deletions
30
Support/Multitenancy/Multiple-Ironic-conductors/build-api-server-container-image.sh
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,30 @@ | ||
#!/bin/bash | ||
# | ||
__dir__=$(realpath $(dirname $0)) | ||
IMAGE_NAME="172.22.0.1:5000/localimages/capim" | ||
|
||
if [[ ${1:-""} == "-f" ]]; then | ||
sudo podman rmi "${IMAGE_NAME}" | ||
kubectl delete -f capim-modified.yaml | ||
fi | ||
|
||
if [[ $(sudo podman images | grep ${IMAGE_NAME}) != "" ]]; then | ||
sudo podman push --tls-verify=false "${IMAGE_NAME}" | ||
exit 0 | ||
fi | ||
CAPI_DIR="/tmp/cluster-api" | ||
if [[ ! -d "${CAPI_DIR}" ]]; then | ||
git clone https://github.com/kubernetes-sigs/cluster-api.git "${CAPI_DIR}" | ||
fi | ||
|
||
cd "${CAPI_DIR}" | ||
|
||
INMEMORY_DIR="${CAPI_DIR}/test/infrastructure/inmemory" | ||
|
||
cp "${__dir__}/main.go" "${INMEMORY_DIR}/main.go" | ||
|
||
cd "${INMEMORY_DIR}" || exit | ||
|
||
sudo podman build --build-arg=builder_image=docker.io/library/golang:1.20.8 --build-arg=goproxy=https://proxy.golang.org,direct --build-arg=ARCH=amd64 --build-arg=ldflags="-X 'sigs.k8s.io/cluster-api/version.buildDate=2023-10-10T11:47:30Z' -X 'sigs.k8s.io/cluster-api/version.gitCommit=8ba3f47b053da8bbf63cf407c930a2ee10bfd754' -X 'sigs.k8s.io/cluster-api/version.gitTreeState=dirty' -X 'sigs.k8s.io/cluster-api/version.gitMajor=1' -X 'sigs.k8s.io/cluster-api/version.gitMinor=0' -X 'sigs.k8s.io/cluster-api/version.gitVersion=v1.0.0-4041-8ba3f47b053da8-dirty' -X 'sigs.k8s.io/cluster-api/version.gitReleaseCommit=e09ed61cc9ba8bd37b0760291c833b4da744a985'" ../../.. -t "${IMAGE_NAME}" --file Dockerfile | ||
|
||
sudo podman push --tls-verify=false "${IMAGE_NAME}" |
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
17 changes: 17 additions & 0 deletions
17
Support/Multitenancy/Multiple-Ironic-conductors/capim-modified.yaml
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,17 @@ | ||
apiVersion: v1 | ||
kind: Pod | ||
metadata: | ||
name: apiserver | ||
labels: | ||
app: manager | ||
spec: | ||
containers: | ||
- image: 172.22.0.1:5000/localimages/capim | ||
imagePullPolicy: Always | ||
name: capim | ||
env: | ||
- name: POD_IP | ||
valueFrom: | ||
fieldRef: | ||
fieldPath: status.podIP | ||
restartPolicy: Always |
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 |
---|---|---|
@@ -1,6 +1,19 @@ | ||
#!/bin/bash | ||
# | ||
export N_NODES=1000 | ||
export N_SUSHY=30 | ||
# Put the endpoints of different ironics, separated by spaces | ||
export IRONIC_ENDPOINTS="172.22.0.2 172.22.0.3 172.22.0.4 172.22.0.5" | ||
export N_SUSHY=120 | ||
export N_FAKE_IPA=12 | ||
export N_IRONICS=15 | ||
export N_APISERVER_PODS=15 | ||
# export N_NODES=50 | ||
# export N_SUSHY=2 | ||
# export N_FAKE_IPA=2 | ||
# export N_IRONICS=3 | ||
|
||
# Translating N_IRONICS to IRONIC_ENDPOINTS. Don't change this part | ||
IRONIC_ENDPOINTS="172.22.0.2" | ||
for i in $(seq 2 $N_IRONICS); do | ||
IRONIC_ENDPOINTS="${IRONIC_ENDPOINTS} 172.22.0.$(( i + 1 ))" | ||
done | ||
export IRONIC_ENDPOINTS | ||
|
4 changes: 2 additions & 2 deletions
4
Support/Multitenancy/Multiple-Ironic-conductors/configure-minikube.sh
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
Oops, something went wrong.