class OvirtSDK4::HostsService

Constants

ADD
LIST

Public Instance Methods

add(host, opts = {}) click to toggle source

Creates a new host.

The host is created based on the attributes of the `host` parameter. The `name`, `address` and `root_password` properties are required.

For example, to add a host send the following request:

source

POST /ovirt-engine/api/hosts


With the following request body:

source,xml

<host>

<name>myhost</name>
<address>myhost.example.com</address>
<root_password>myrootpassword</root_password>

</host>


NOTE: The `root_password` element is only included in the client-provided initial representation and is not exposed in the representations returned from subsequent requests.

IMPORTANT: Since version 4.1.2 of the engine when a host is newly added we override the host firewall definitions by default.

To add a hosted engine host, use the optional `deploy_hosted_engine` parameter:

source

POST /ovirt-engine/api/hosts?deploy_hosted_engine=true


If the cluster has a default external network provider which is supported for automatic deployment, the external network provider is deployed when adding the host. Only external network providers for OVN are supported for the automatic deployment. To deploy an external network provider that differs to what is defined in the clusters, overwrite the external network provider when adding hosts by sending a request like this:

source

POST /ovirt-engine/api/hosts


With a request body that contains a reference to the desired provider in the `external_network_provider_configuration`:

source,xml

<host>

<name>myhost</name>
<address>myhost.example.com</address>
<root_password>123456</root_password>
<external_network_provider_configurations>
  <external_network_provider_configuration>
    <external_network_provider id="123"/>
  </external_network_provider_configuration>
</external_network_provider_configurations>

</host>


@param host [Host] The host definition from which to create the new host is passed as parameter, and the newly created host

is returned.

@param opts [Hash] Additional options.

@option opts [Boolean] :deploy_hosted_engine When set to `true` it means this host should deploy also hosted engine components. Missing value is treated

as `true` i.e deploy. Omitting this parameter means `false` and will perform no operation in hosted engine
area.

@option opts [Boolean] :undeploy_hosted_engine When set to `true` it means this host should un-deploy hosted engine components and this host will not

function as part of the High Availability cluster. Missing value is treated as `true` i.e un-deploy.
Omitting this parameter means `false` and will perform no operation in hosted engine area.

@option opts [Hash] :headers ({}) Additional HTTP headers.

@option opts [Hash] :query ({}) Additional URL query parameters.

@option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly

given then the timeout set globally for the connection will be used.

@option opts [Boolean] :wait (true) If `true` wait for the response.

@return [Host]

# File lib/ovirtsdk4/services.rb, line 11594
def add(host, opts = {})
  internal_add(host, Host, ADD, opts)
end
host_service(id) click to toggle source

A Reference to service managing a specific host.

@param id [String] The identifier of the `host`.

@return [HostService] A reference to the `host` service.

# File lib/ovirtsdk4/services.rb, line 11685
def host_service(id)
  HostService.new(self, id)
end
list(opts = {}) click to toggle source

Get a list of all available hosts.

For example, to list the hosts send the following request:

.… GET /ovirt-engine/api/hosts .…

The response body will be something like this:

source,xml

<hosts>

<host href="/ovirt-engine/api/hosts/123" id="123">
  ...
</host>
<host href="/ovirt-engine/api/hosts/456" id="456">
  ...
</host>
...

</host>


The order of the returned list of hosts is guaranteed only if the `sortby` clause is included in the `search` parameter.

@param opts [Hash] Additional options.

@option opts [Boolean] :all_content Indicates if all of the attributes of the hosts should be included in the response.

By default the following host attributes are excluded:

- %xhosted_engine`

For example, to retrieve the complete representation of the hosts:

....
GET /ovirt-engine/api/hosts?all_content=true
....

NOTE: These attributes are not included by default because retrieving them impacts performance. They are
seldom used and require additional queries to the database. Use this parameter with caution and only when
specifically required.

@option opts [Boolean] :case_sensitive Indicates if the search performed using the `search` parameter should be performed taking case into

account. The default value is `true`, which means that case is taken into account. If you want to search
ignoring case set it to `false`.

@option opts [Boolean] :filter Indicates if the results should be filtered according to the permissions of the user.

@option opts [Integer] :max Sets the maximum number of hosts to return. If not specified all the hosts are returned.

@option opts [String] :search A query string used to restrict the returned hosts.

@option opts [Hash] :headers ({}) Additional HTTP headers.

@option opts [Hash] :query ({}) Additional URL query parameters.

@option opts [Integer] :timeout (nil) The timeout for this request, in seconds. If no value is explicitly

given then the timeout set globally for the connection will be used.

@option opts [Boolean] :wait (true) If `true` wait for the response.

@return [Array<Host>]

# File lib/ovirtsdk4/services.rb, line 11674
def list(opts = {})
  internal_get(LIST, opts)
end
service(path) click to toggle source

Locates the service corresponding to the given path.

@param path [String] The path of the service.

@return [Service] A reference to the service.

# File lib/ovirtsdk4/services.rb, line 11696
def service(path)
  if path.nil? || path == ''
    return self
  end
  index = path.index('/')
  if index.nil?
    return host_service(path)
  end
  return host_service(path[0..(index - 1)]).service(path[(index +1)..-1])
end
to_s() click to toggle source

Returns an string representation of this service.

@return [String]

# File lib/ovirtsdk4/services.rb, line 11712
def to_s
  "#<#{HostsService}:#{absolute_path}>"
end