-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Add baremetal IPI platform #1873
Add baremetal IPI platform #1873
Conversation
Builds for other platforms will fail until openshift-metal3/kni-installer#115 is in, go-lint is addressed in openshift-metal3/kni-installer#113. |
Please reduce the bash and python magic, and make sure there is a lot of documentation. It's not acceptable to point to docs in a different repo, I would expect that commits have the detailed documentation. |
ec082ae
to
e4d82ab
Compare
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: abhinavdahiya, eparis, stbenjam The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/retest |
@stbenjam: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
For platforms without a DNS as a Service available, there is a chicken/egg scenario. This is because we cannot setup our own DNS solution on the nodes before they are booted via ignition. Instead, we get the ignition config via a virtual IP that is conifgured and maintained by keepalived. The setup of keepalived will be done via machine-config-operator, so it is not part of this patch. This patch only sets up the plumbing so that we can merge the keepalived work while keeping CI green. Then we can put up a patch that will switch to actually using this functionality. This patch also adds an interface for other platforms that need this functionality to work from. Specifically, these PRs can be rebased on this work: openshift#1873 openshift#1948
Most of our docs were bumped in befde3c (pkg/types/installconfig: Bump v1beta4 to v1, 2019-04-10, openshift#1589), but these v1beta4 references snuck in with 0ec07d0 (docs: vSphere installation docs, 2019-04-07, openshift#1545) and 0055065 (baremetal: add baremetal IPI platform, 2019-07-16, openshift#1873).
…m provider() We've had the argument since the package landed in 0055065 (baremetal: add baremetal IPI platformo, 2019-07-16, openshift#1873), but it has never been used. Drop it to simplify the function calls, and to make it easier to use grep to answer questions like "does metal actually care about machineCIDR?" (apparently not).
…m provider() We've had the argument since the package landed in 0055065 (baremetal: add baremetal IPI platformo, 2019-07-16, openshift#1873), but it has never been used. Drop it to simplify the function calls, and to make it easier to use grep to answer questions like "does metal actually care about machineCIDR?" (apparently not).
Most of our docs were bumped in befde3c (pkg/types/installconfig: Bump v1beta4 to v1, 2019-04-10, openshift#1589), but these v1beta4 references snuck in with 0ec07d0 (docs: vSphere installation docs, 2019-04-07, openshift#1545) and 0055065 (baremetal: add baremetal IPI platform, 2019-07-16, openshift#1873).
…m provider() We've had the argument since the package landed in 0055065 (baremetal: add baremetal IPI platformo, 2019-07-16, openshift#1873), but it has never been used. Drop it to simplify the function calls, and to make it easier to use grep to answer questions like "does metal actually care about machineCIDR?" (apparently not).
Hi all 👋
This adds experimental support for the baremetal IPI platform. Details about how to use it are in the docs/ directory. We have a prerequisite that there is an existing Ironic infrastructure, and that can be deployed with openshift-metal3/dev-scripts. We are working on moving that to the bootstrap VM, to avoid the dependency on another repository, but we are blocked until RHCOS has an updated version of libpod.
Other known issues that we are working on are tracked here.
This PR since it's initial opening has been broken up into some smaller PR's in addition to this one.