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

Support for ESI #135

Open
knikolla opened this issue Jan 19, 2024 · 6 comments · May be fixed by #146
Open

Support for ESI #135

knikolla opened this issue Jan 19, 2024 · 6 comments · May be fixed by #146
Assignees

Comments

@knikolla
Copy link
Collaborator

knikolla commented Jan 19, 2024

CCI-MOC/esi#364

Most things should work out of the box as ESI is OpenStack and there's support for OpenStack via the coldfront cloud plugin

The thing we will need to figure out is quotas for things that are specific to ESI e.g. VLAN IDs and anything else that ESI does outside of OpenStack (if any).

This is the ColdFront side of ensuring that Coldfront can support ESI. The ESI side of ensuring this communiation works can be found here.

@tzumainn
Copy link

We don't actually do anything outside of OpenStack. The VLAN IDs corresponds to neutron networks; is that something that ColdFront currently handles?

@joachimweyl
Copy link

@naved001 see question here.

@QuanMPhm
Copy link
Contributor

QuanMPhm commented Mar 5, 2024

@knikolla I am confused about the purpose of this issue. Could you elaborate on what problem we are trying to solve?

@tzumainn
Copy link

tzumainn commented Mar 5, 2024

For some clarification: Quan was mentioning his difficulties using devstack to deploy Ironic, and I asked him what he needed it for/ He explained it was for ColdFront - but as far as I can tell, we don't want ColdFront to manage Ironic quotas, as ESI itself handles node allocations. The only thing this ticket mentions is vlans (which correspond to Neutron networks), so if that's all that's needed then we really only need devstack with Neutron.

@knikolla
Copy link
Collaborator Author

knikolla commented Mar 5, 2024

@knikolla I am confused about the purpose of this issue. Could you elaborate on what problem we are trying to solve?

@QuanMPhm

The purpose of this issue is making sure that ColdFront supports ESI. Yes, ESI is OpenStack, however it's a different permutation of services and will appear as a different resource type on ColdFront.

This entails

  • Making sure there is an ESI resource type that uses mostly the OpenStack code.
  • Making sure that the code can work with Ironic. If what Mainn is saying above is true and we don't need to make any API calls into Ironic, great we don't need to worry about this.
  • Making sure that the ColdFront code can work with the missing services and doesn't freak out when it sees there isn't a Nova, Swift or other service.

@QuanMPhm QuanMPhm linked a pull request Mar 11, 2024 that will close this issue
@QuanMPhm
Copy link
Contributor

@knikolla @naved001 For my proposed solution, I have linked a draft PR with two commits.

The first commit makes a small change to openstack.py such that Coldfront can modify quotas on Openstack clusters which may be missing certain services (i.e not missing Swift or Cinder).

The second commit adds the management command to add an ESI resource, an ESI.py file that will interact with an Openstack cluster is create the nessecary ESI network quotas. These files are mostly copied from their Openstack equivalence (i.e openstack.py, add_openstack_resource.py).

If we are fine with this solution, then my current draft PR nearly finishes this issue. Also, it seems we have a duplicate issue?

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 a pull request may close this issue.

4 participants