class OvirtSDK4::ClusterService

Constants

GET
REMOVE
RESET_EMULATED_MACHINE
SYNC_ALL_NETWORKS
UPDATE
UPGRADE

Public Instance Methods

affinity_groups_service() click to toggle source

A reference to the service that manages affinity groups.

@return [AffinityGroupsService] A reference to `affinity_groups` service.

# File lib/ovirtsdk4/services.rb, line 4693
def affinity_groups_service
  @affinity_groups_service ||= AffinityGroupsService.new(self, 'affinitygroups')
end
cpu_profiles_service() click to toggle source

A reference to the service that manages assigned CPU profiles for the cluster.

@return [AssignedCpuProfilesService] A reference to `cpu_profiles` service.

# File lib/ovirtsdk4/services.rb, line 4702
def cpu_profiles_service
  @cpu_profiles_service ||= AssignedCpuProfilesService.new(self, 'cpuprofiles')
end
enabled_features_service() click to toggle source

A reference to the service that manages the collection of enabled features for the cluster.

@return [ClusterEnabledFeaturesService] A reference to `enabled_features` service.

# File lib/ovirtsdk4/services.rb, line 4711
def enabled_features_service
  @enabled_features_service ||= ClusterEnabledFeaturesService.new(self, 'enabledfeatures')
end
external_network_providers_service() click to toggle source

A reference to the service that manages the collection of external network providers.

@return [ClusterExternalProvidersService] A reference to `external_network_providers` service.

# File lib/ovirtsdk4/services.rb, line 4720
def external_network_providers_service
  @external_network_providers_service ||= ClusterExternalProvidersService.new(self, 'externalnetworkproviders')
end
get(opts = {}) click to toggle source

Gets information about the cluster.

An example of getting a cluster:

source

GET /ovirt-engine/api/clusters/123


source,xml

<cluster href=“/ovirt-engine/api/clusters/123” id=“123”>

<actions>
  <link href="/ovirt-engine/api/clusters/123/resetemulatedmachine" rel="resetemulatedmachine"/>
</actions>
<name>Default</name>
<description>The default server cluster</description>
<link href="/ovirt-engine/api/clusters/123/networks" rel="networks"/>
<link href="/ovirt-engine/api/clusters/123/permissions" rel="permissions"/>
<link href="/ovirt-engine/api/clusters/123/glustervolumes" rel="glustervolumes"/>
<link href="/ovirt-engine/api/clusters/123/glusterhooks" rel="glusterhooks"/>
<link href="/ovirt-engine/api/clusters/123/affinitygroups" rel="affinitygroups"/>
<link href="/ovirt-engine/api/clusters/123/cpuprofiles" rel="cpuprofiles"/>
<ballooning_enabled>false</ballooning_enabled>
<cpu>
  <architecture>x86_64</architecture>
  <type>Intel Nehalem Family</type>
</cpu>
<error_handling>
  <on_error>migrate</on_error>
</error_handling>
<fencing_policy>
  <enabled>true</enabled>
  <skip_if_connectivity_broken>
    <enabled>false</enabled>
    <threshold>50</threshold>
  </skip_if_connectivity_broken>
  <skip_if_sd_active>
    <enabled>false</enabled>
  </skip_if_sd_active>
</fencing_policy>
<gluster_service>false</gluster_service>
<ha_reservation>false</ha_reservation>
<ksm>
  <enabled>true</enabled>
  <merge_across_nodes>true</merge_across_nodes>
</ksm>
<memory_policy>
  <over_commit>
    <percent>100</percent>
  </over_commit>
  <transparent_hugepages>
    <enabled>true</enabled>
  </transparent_hugepages>
</memory_policy>
<migration>
  <auto_converge>inherit</auto_converge>
  <bandwidth>
    <assignment_method>auto</assignment_method>
  </bandwidth>
  <compressed>inherit</compressed>
</migration>
<required_rng_sources>
  <required_rng_source>random</required_rng_source>
</required_rng_sources>
<scheduling_policy href="/ovirt-engine/api/schedulingpolicies/456" id="456"/>
<threads_as_cores>false</threads_as_cores>
<trusted_service>false</trusted_service>
<tunnel_migration>false</tunnel_migration>
<version>
  <major>4</major>
  <minor>0</minor>
</version>
<virt_service>true</virt_service>
<data_center href="/ovirt-engine/api/datacenters/111" id="111"/>

</cluster>


@param opts [Hash] Additional options.

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

@option opts [String] :follow Indicates which inner links should be followed. The objects referenced by these links will be fetched as part

of the current request. See <<documents/003_common_concepts/follow, here>> for details.

@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 [Cluster]

# File lib/ovirtsdk4/services.rb, line 4495
def get(opts = {})
  internal_get(GET, opts)
end
gluster_hooks_service() click to toggle source

A reference to the service that manages the Gluster hooks for the cluster.

@return [GlusterHooksService] A reference to `gluster_hooks` service.

# File lib/ovirtsdk4/services.rb, line 4729
def gluster_hooks_service
  @gluster_hooks_service ||= GlusterHooksService.new(self, 'glusterhooks')
end
gluster_volumes_service() click to toggle source

A reference to the service that manages Gluster volumes for the cluster.

@return [GlusterVolumesService] A reference to `gluster_volumes` service.

# File lib/ovirtsdk4/services.rb, line 4738
def gluster_volumes_service
  @gluster_volumes_service ||= GlusterVolumesService.new(self, 'glustervolumes')
end
network_filters_service() click to toggle source

A sub-collection with all the supported network filters for the cluster.

@return [NetworkFiltersService] A reference to `network_filters` service.

# File lib/ovirtsdk4/services.rb, line 4747
def network_filters_service
  @network_filters_service ||= NetworkFiltersService.new(self, 'networkfilters')
end
networks_service() click to toggle source

A reference to the service that manages assigned networks for the cluster.

@return [ClusterNetworksService] A reference to `networks` service.

# File lib/ovirtsdk4/services.rb, line 4756
def networks_service
  @networks_service ||= ClusterNetworksService.new(self, 'networks')
end
permissions_service() click to toggle source

A reference to permissions.

@return [AssignedPermissionsService] A reference to `permissions` service.

# File lib/ovirtsdk4/services.rb, line 4765
def permissions_service
  @permissions_service ||= AssignedPermissionsService.new(self, 'permissions')
end
remove(opts = {}) click to toggle source

Removes the cluster from the system.

source

DELETE /ovirt-engine/api/clusters/00000000-0000-0000-0000-000000000000


@param opts [Hash] Additional options.

@option opts [Boolean] :async Indicates if the remove should be performed asynchronously. @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.

# File lib/ovirtsdk4/services.rb, line 4525
def remove(opts = {})
  internal_remove(REMOVE, opts)
end
reset_emulated_machine(opts = {}) click to toggle source

Executes the `reset_emulated_machine` method.

@param opts [Hash] Additional options.

@option opts [Boolean] :async Indicates if the reset should be performed asynchronously.

@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.

# File lib/ovirtsdk4/services.rb, line 4551
def reset_emulated_machine(opts = {})
  internal_action(:resetemulatedmachine, nil, RESET_EMULATED_MACHINE, 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 4776
def service(path)
  if path.nil? || path == ''
    return self
  end
  if path == 'affinitygroups'
    return affinity_groups_service
  end
  if path.start_with?('affinitygroups/')
    return affinity_groups_service.service(path[15..-1])
  end
  if path == 'cpuprofiles'
    return cpu_profiles_service
  end
  if path.start_with?('cpuprofiles/')
    return cpu_profiles_service.service(path[12..-1])
  end
  if path == 'enabledfeatures'
    return enabled_features_service
  end
  if path.start_with?('enabledfeatures/')
    return enabled_features_service.service(path[16..-1])
  end
  if path == 'externalnetworkproviders'
    return external_network_providers_service
  end
  if path.start_with?('externalnetworkproviders/')
    return external_network_providers_service.service(path[25..-1])
  end
  if path == 'glusterhooks'
    return gluster_hooks_service
  end
  if path.start_with?('glusterhooks/')
    return gluster_hooks_service.service(path[13..-1])
  end
  if path == 'glustervolumes'
    return gluster_volumes_service
  end
  if path.start_with?('glustervolumes/')
    return gluster_volumes_service.service(path[15..-1])
  end
  if path == 'networkfilters'
    return network_filters_service
  end
  if path.start_with?('networkfilters/')
    return network_filters_service.service(path[15..-1])
  end
  if path == 'networks'
    return networks_service
  end
  if path.start_with?('networks/')
    return networks_service.service(path[9..-1])
  end
  if path == 'permissions'
    return permissions_service
  end
  if path.start_with?('permissions/')
    return permissions_service.service(path[12..-1])
  end
  raise Error.new("The path \"#{path}\" doesn't correspond to any service")
end
sync_all_networks(opts = {}) click to toggle source

Synchronizes all networks on the cluster.

source

POST /ovirt-engine/api/clusters/123/syncallnetworks


With a request body like this:

source,xml

<action/>


@param opts [Hash] Additional options.

@option opts [Boolean] :async Indicates if the action should be performed asynchronously.

@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.

# File lib/ovirtsdk4/services.rb, line 4589
def sync_all_networks(opts = {})
  internal_action(:syncallnetworks, nil, SYNC_ALL_NETWORKS, opts)
end
update(cluster, opts = {}) click to toggle source

Updates information about the cluster.

Only the specified fields are updated; others remain unchanged.

For example, to update the cluster's CPU:

source

PUT /ovirt-engine/api/clusters/123


With a request body like this:

source,xml

<cluster>

<cpu>
  <type>Intel Haswell-noTSX Family</type>
</cpu>

</cluster>


@param cluster [Cluster] The `cluster` to update. @param opts [Hash] Additional options.

@option opts [Boolean] :async Indicates if the update should be performed asynchronously.

@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 [Cluster]

# File lib/ovirtsdk4/services.rb, line 4638
def update(cluster, opts = {})
  internal_update(cluster, Cluster, UPDATE, opts)
end
upgrade(opts = {}) click to toggle source

Start or finish upgrade process for the cluster based on the action value. This action marks the cluster for upgrade or clears the upgrade running flag on the cluster based on the action value which takes values of start or stop.

source

POST /ovirt-engine/api/clusters/123/upgrade


With a request body like this to mark the cluster for upgrade:

source,xml

<action>

<upgrade_action>
    start
</upgrade_action>

</action>


@param opts [Hash] Additional options.

@option opts [Boolean] :async Indicates if the action should be performed asynchronously.

@option opts [ClusterUpgradeAction] :upgrade_action The action to be performed.

@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.

# File lib/ovirtsdk4/services.rb, line 4684
def upgrade(opts = {})
  internal_action(:upgrade, nil, UPGRADE, opts)
end