class OvirtSDK4::ClusterService
Constants
- GET
- REFRESH_GLUSTER_HEAL_STATUS
- REMOVE
- RESET_EMULATED_MACHINE
- SYNC_ALL_NETWORKS
- UPDATE
- UPGRADE
Public Instance Methods
A reference to the service that manages affinity groups.
@return [AffinityGroupsService] A reference to `affinity_groups` service.
# File lib/ovirtsdk4/services.rb, line 4923 def affinity_groups_service @affinity_groups_service ||= AffinityGroupsService.new(self, 'affinitygroups') end
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 4932 def cpu_profiles_service @cpu_profiles_service ||= AssignedCpuProfilesService.new(self, 'cpuprofiles') end
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 4941 def enabled_features_service @enabled_features_service ||= ClusterEnabledFeaturesService.new(self, 'enabledfeatures') end
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 4950 def external_network_providers_service @external_network_providers_service ||= ClusterExternalProvidersService.new(self, 'externalnetworkproviders') end
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 4694 def get(opts = {}) internal_get(GET, opts) end
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 4959 def gluster_hooks_service @gluster_hooks_service ||= GlusterHooksService.new(self, 'glusterhooks') end
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 4968 def gluster_volumes_service @gluster_volumes_service ||= GlusterVolumesService.new(self, 'glustervolumes') end
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 4977 def network_filters_service @network_filters_service ||= NetworkFiltersService.new(self, 'networkfilters') end
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 4986 def networks_service @networks_service ||= ClusterNetworksService.new(self, 'networks') end
A reference to permissions.
@return [AssignedPermissionsService] A reference to `permissions` service.
# File lib/ovirtsdk4/services.rb, line 4995 def permissions_service @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end
Refresh the Gluster heal info for all volumes in cluster.
For example, Cluster
`123`, send a request like this:
- source
POST /ovirt-engine/api/clusters/123/refreshglusterhealstatus
@param opts [Hash] Additional options.
@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 4725 def refresh_gluster_heal_status(opts = {}) internal_action(:refreshglusterhealstatus, nil, REFRESH_GLUSTER_HEAL_STATUS, opts) end
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 4755 def remove(opts = {}) internal_remove(REMOVE, opts) end
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 4781 def reset_emulated_machine(opts = {}) internal_action(:resetemulatedmachine, nil, RESET_EMULATED_MACHINE, opts) end
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 5006 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
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 4819 def sync_all_networks(opts = {}) internal_action(:syncallnetworks, nil, SYNC_ALL_NETWORKS, opts) end
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 4868 def update(cluster, opts = {}) internal_update(cluster, Cluster, UPDATE, opts) end
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 4914 def upgrade(opts = {}) internal_action(:upgrade, nil, UPGRADE, opts) end