Skip to content

OpenNebula/hosted-cloud-ovhcloud

Repository files navigation

OpenNebula-OVHcloud

Deploying OpenNebula as a Hosted Cloud on OVHcloud infrasturcture

This repository contains the needed code and documentation to perform an OpenNebula deployment and configuration on OVHcloud infrasturcture bare-metal resources. It extends the one-deploy-validation repository, which is added as a git submodule.

Requirements

  1. Install hatch

    pip install hatch
  2. Initialize the dependent one-deploy-validation and one-deploy submodule

    git submodule update --init
  3. Install OpenNebula one-deploy dependencies using the submodule's tooling:

    make submodule-requirements
  4. Install one-deploy dependencies, specific to OVHcloud deployment:

    make requirements-ovhcloud

Infrastructure Provisioning

A detailed guide to provision the required reference infrastructure is published in {ADD LINK TO THE GUIDE HERE}. Follow the provisioning steps and extract the requiremed parameters needed to proceed with the OpenNebula deployment.

Required Parameters

Update the inventory values to match the provisioned infrastructure.

Description Variable Names Files/Location
GUI password of oneadmin one_pass inventory/ovhcloud.yml
Frontend/KVM Host IP ansible_host inventory/ovhcloud.yml
Frontend/KVM Host public nics name public_nics.name inventory/ovhcloud.yml
Frontend/KVM Host public nics macaddress public_nics.macaddress inventory/ovhcloud.yml
Frontend/KVM Host private nics name private_nics.name inventory/ovhcloud.yml
Frontend/KVM Host private nics macaddress private_nics.macaddress inventory/ovhcloud.yml
VMs Public IP Range vn.vm_public.template.AR.IP, vn.vm_public.template.AR.SIZE inventory/ovhcloud.yml
VMs Public DNS vn.vm_public.template.DNS inventory/ovhcloud.yml
VMs Public GATEWAY vn.vm_public.template.GATEWAY inventory/ovhcloud.yml
VMs Public NETWORK MASK vn.vm_public.template.NETWORK_MASK inventory/ovhcloud.yml
VMs Private VLAN_ID vn.vm_vlan*.template.VLAN_ID inventory/ovhcloud.yml
VMs Private IP Range vn.vm_vlan*.template.AR.IP, vn.vm_vlan*.template.AR.SIZE inventory/ovhcloud.yml
VMs Private NETWORK MASK vn.vm_vlan*.template.NETWORK_MASK inventory/ovhcloud.yml

Deployment and Validation

Use the provided Makefile commands to automate deployment and testing:

  1. Review the inventory, playbooks and roles directories, following Ansible design guidelines.

  2. Prepare OVHcloud bare metal servers:

    make pre-tasks-ovhcloud

    This step patches ubuntu kernel for security and performance optimization. It also perform networking setup, completing interface bounding leveraging on [OVHcloud Link Aggregation] (https://www.ovhcloud.com/en/bare-metal/ovhcloud-link-aggregation/) technology. If connectivity is lost, use local acces via IPMI to restore the original netplan file dumped during the early step of this ansible run or re install ubuntu on the bare metal. Ansible scripts should finish without any error, and report on the number of changes performed for each hosts. If any error is reported, after the necessary troubleshooting and fixes, the deployment script can be re-executed without further cleanup steps.

  3. Deploy OpenNebula:

    make deployment

    Similarly, this should finish without any errors. After this step the cloud environment is fully functional.

  4. Test the deployment:

    make validation

    Update the inventory/group_vars/all.yaml file to match the installation parameters based on "Required Parameters" section values. If the test fails in any of the steps, after the necessary troubleshooting and fixes, the validation command can be safely re-executed. The final HTML report is only created when all tests have passed. The output of the tests are compiled into a HTML report that can be found in path, printed by the automation script.

For more information about the submodule's tooling, refer to the one-deploy-validation's README.md and for detailed documentation on the deployment automation refer to the one-deploy repo.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •