MCPcopy Index your code
hub / github.com/OpenNebula/one

github.com/OpenNebula/one @release-7.2.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release release-7.2.0 ↗ · + Follow
22,060 symbols 64,322 edges 3,064 files 5,753 documented · 26%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

OpenNebula Logo

Description

OpenNebula is an open source platform delivering a simple but feature-rich and flexible solution to build and manage enterprise clouds for virtualized services, containerized applications and serverless computing.

OpenNebula Architecture

To start using OpenNebula

OpenNebula Intro

Contributing to OpenNebula

Taking OpenNebula for a Test Drive

You can quickly and easily try out OpenNebula’s functionality by installing miniONE. Then, you can follow tutorials to quickly install an OpenNebula cloud.

Installation

For information on installing OpenNebula, please see this documentation section.

It is very useful to learn where log files of the main OpenNebula components are placed. Also check the reference about the main OpenNebula daemon configuration file.

Front-end Installation

The Front-end is the central part of an OpenNebula installation. This is the machine where the server software is installed and where you connect to manage your cloud. It can be a physical node or a virtual instance.

Please visit the official documentation for more details and a step-by-step guide. Using the packages provided on our site is the recommended method, to ensure the installation of the latest version and to avoid possible package divergences with different distributions. There are two alternatives here: you can add our package repositories to your system, or visit the software menu to download the latest package for your Linux distribution.

If there are no packages for your distribution, please check the build dependencies for OpenNebula and head to the Building from Source Code guide.

Node Installation

After the OpenNebula Front-end is correctly set up, the next step is preparing the hosts where the VMs are going to run. For details please refer to the installation guides for KVM Nodes and LXC Nodes.

Contact

License

Copyright 2002-2026, OpenNebula Project, OpenNebula Systems (formerly C12G Labs)

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Acknowledgements

Some of the software features included in this repository have been made possible through the funding of the following innovation projects: ONEnextgen, ONEedge5G, and SovereignEdge.Cognit.

Extension points exported contracts — how you extend this code

RPCCaller (Interface)
RPCCaller is the interface to satisfy in order to be usable by the controller [2 implementers]
src/oca/go/src/goca/controller.go
Element (Interface)
Element is an interface that must implement the String function [2 implementers]
src/oca/go/src/goca/dynamic/dyntemplate.go
HTTPCaller (Interface)
HTTPCaller is the analogous to RPCCaller but for http endpoints [1 implementers]
src/oca/go/src/goca/controller.go

Core symbols most depended-on inside this repo

get
called by 1546
src/schedm/PlanPool.cc
map
called by 1041
src/schedm_mad/remotes/one_drs/lib/mapper/mapper.py
empty
called by 1019
include/Template.h
text
called by 920
src/oca/ruby/opennebula/xml_element.rb
vector_value
called by 811
src/common/Attribute.cc
root
called by 771
src/oca/ruby/opennebula/flow/grammar.rb
each
called by 614
src/monitor/include/RPCPool.h
run
called by 565
src/datastore_mad/remotes/lvm.rb

Shape

Method 15,743
Function 3,190
Class 2,357
Struct 530
TypeAlias 98
Enum 72
Interface 69
Route 1

Languages

Go32%
C++30%
Ruby21%
TypeScript10%
Python4%
Java3%

Modules by API surface

src/oca/go/src/goca/api/vm/vm.pb.go478 symbols
src/oca/go/src/goca/controller.go309 symbols
src/oca/go/src/goca/client.go304 symbols
src/oca/go/src/goca/grpc_client.go297 symbols
src/oca/go/src/goca/api/vm/vm_grpc.pb.go255 symbols
src/oca/go/src/goca/api/image/image.pb.go180 symbols
src/oca/go/src/goca/api/vn/vn.pb.go177 symbols
src/oca/go/src/goca/api/zone/zone.pb.go168 symbols
src/oca/go/src/goca/api/backupjob/backupjob.pb.go163 symbols
src/oca/go/src/goca/api/vdc/vdc.pb.go153 symbols
src/oca/go/src/goca/vm.go150 symbols
src/im_mad/remotes/lib/python/pyoneai/tests/unit/test_core/test_tsnumpy.py144 symbols

For agents

$ claude mcp add one \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact