Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev-in-a-box with baremetal+tenks #281

Closed
wants to merge 12 commits into from
Closed

Conversation

msherman64
Copy link
Contributor

This PR documents dev-in-a-box more fully, and provides a pre-configured defaults.yml file suitable to set up a development instance on top of KVM.

In particular, it uses 3 sets of veth pairs to create dummy interfaces for the external api, internal api, and neutron physnet, so that we don't depend on actual interface naming.

@msherman64
Copy link
Contributor Author

some assumptions for this to work:

a separate veth pair is created for each of:

  • external_api
  • internal_api
  • physnet for public
  • physnet for sharednet
  • physnet for ironic-provisoning

the playbook attaches ironic-provisioning to the "first" tenks bridge/iface
and sharednet1 to the "second" bridge/iface.

Finally, you need to add the gateway IP for the ironic-provisioning network (whatever's configured in the subnet), to the brtenks0 bridge, so that nodes can route to the internal_api endpoint.

When you run the commands to "start up" tenks, it will create 3 libvirt domains, a virtualbmc listener for each, and a network interface for each VM attached to the provisioning and sharednet physnets.
Then, it will enroll them into ironic (but not blazar or Doni) for you.

to test things out, try commands like:
openstack baremetal node inspect tk0 or openstack server create --flavor my_rc --image CC-Ubuntu20.04 --network sharednet1 test01

to watch the serial console, execute e.g. virsh console tk0, which you can exit by pressing ctrl+a, ]

note some remaining chi-in-a-box tech debt: it's still a bit clunky to import the cc-ubuntu images. Also, these fake nodes need something like 4GB of ram, mostly to unpack our centos8-based ironic initramfs. This could be minimized by using tinyipa instead.

@msherman64 msherman64 marked this pull request as ready for review April 11, 2024 18:52
@msherman64 msherman64 requested a review from codyhammock as a code owner April 11, 2024 18:52
Copy link
Member

@codyhammock codyhammock left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏻

@msherman64 msherman64 removed the request for review from AnishReddyRavula April 19, 2024 21:47
@msherman64 msherman64 changed the title use veths for simple dev-in-a-box setup dev-in-a-box with baremetal+tenks Jun 4, 2024
@msherman64
Copy link
Contributor Author

closed in favor of #295
which has ovs+vlan support

@msherman64 msherman64 closed this Jul 11, 2024
@msherman64 msherman64 deleted the fixup/dev-in-a-box branch July 11, 2024 22:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants