Class: OvirtSDK4::ClusterService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Instance Method Summary collapse
-
#affinity_groups_service ⇒ AffinityGroupsService
A reference to the service that manages affinity groups.
-
#cpu_profiles_service ⇒ AssignedCpuProfilesService
A reference to the service that manages assigned CPU profiles for the cluster.
-
#enabled_features_service ⇒ ClusterEnabledFeaturesService
A reference to the service that manages the collection of enabled features for the cluster.
-
#external_network_providers_service ⇒ ClusterExternalProvidersService
A reference to the service that manages the collection of external network providers.
-
#get(opts = {}) ⇒ Cluster
Gets information about the cluster.
-
#gluster_hooks_service ⇒ GlusterHooksService
A reference to the service that manages the Gluster hooks for the cluster.
-
#gluster_volumes_service ⇒ GlusterVolumesService
A reference to the service that manages Gluster volumes for the cluster.
-
#network_filters_service ⇒ NetworkFiltersService
A sub-collection with all the supported network filters for the cluster.
-
#networks_service ⇒ ClusterNetworksService
A reference to the service that manages assigned networks for the cluster.
-
#permissions_service ⇒ AssignedPermissionsService
A reference to permissions.
-
#refresh_gluster_heal_status(opts = {}) ⇒ Object
Refresh the Gluster heal info for all volumes in cluster.
-
#remove(opts = {}) ⇒ Object
Removes the cluster from the system.
-
#reset_emulated_machine(opts = {}) ⇒ Object
Executes the
reset_emulated_machine
method. -
#service(path) ⇒ Service
Locates the service corresponding to the given path.
-
#sync_all_networks(opts = {}) ⇒ Object
Synchronizes all networks on the cluster.
-
#update(cluster, opts = {}) ⇒ Cluster
Updates information about the cluster.
-
#upgrade(opts = {}) ⇒ Object
Start or finish upgrade process for the cluster based on the action value.
Methods inherited from Service
Instance Method Details
#affinity_groups_service ⇒ AffinityGroupsService
A reference to the service that manages affinity groups.
4923 4924 4925 |
# File 'lib/ovirtsdk4/services.rb', line 4923 def affinity_groups_service @affinity_groups_service ||= AffinityGroupsService.new(self, 'affinitygroups') end |
#cpu_profiles_service ⇒ AssignedCpuProfilesService
A reference to the service that manages assigned CPU profiles for the cluster.
4932 4933 4934 |
# File 'lib/ovirtsdk4/services.rb', line 4932 def cpu_profiles_service @cpu_profiles_service ||= AssignedCpuProfilesService.new(self, 'cpuprofiles') end |
#enabled_features_service ⇒ ClusterEnabledFeaturesService
A reference to the service that manages the collection of enabled features for the cluster.
4941 4942 4943 |
# File 'lib/ovirtsdk4/services.rb', line 4941 def enabled_features_service @enabled_features_service ||= ClusterEnabledFeaturesService.new(self, 'enabledfeatures') end |
#external_network_providers_service ⇒ ClusterExternalProvidersService
A reference to the service that manages the collection of external network providers.
4950 4951 4952 |
# File 'lib/ovirtsdk4/services.rb', line 4950 def external_network_providers_service @external_network_providers_service ||= ClusterExternalProvidersService.new(self, 'externalnetworkproviders') end |
#get(opts = {}) ⇒ Cluster
Gets information about the cluster.
An example of getting a cluster:
GET /ovirt-engine/api/clusters/123
<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>
4694 4695 4696 |
# File 'lib/ovirtsdk4/services.rb', line 4694 def get(opts = {}) internal_get(GET, opts) end |
#gluster_hooks_service ⇒ GlusterHooksService
A reference to the service that manages the Gluster hooks for the cluster.
4959 4960 4961 |
# File 'lib/ovirtsdk4/services.rb', line 4959 def gluster_hooks_service @gluster_hooks_service ||= GlusterHooksService.new(self, 'glusterhooks') end |
#gluster_volumes_service ⇒ GlusterVolumesService
A reference to the service that manages Gluster volumes for the cluster.
4968 4969 4970 |
# File 'lib/ovirtsdk4/services.rb', line 4968 def gluster_volumes_service @gluster_volumes_service ||= GlusterVolumesService.new(self, 'glustervolumes') end |
#network_filters_service ⇒ NetworkFiltersService
A sub-collection with all the supported network filters for the cluster.
4977 4978 4979 |
# File 'lib/ovirtsdk4/services.rb', line 4977 def network_filters_service @network_filters_service ||= NetworkFiltersService.new(self, 'networkfilters') end |
#networks_service ⇒ ClusterNetworksService
A reference to the service that manages assigned networks for the cluster.
4986 4987 4988 |
# File 'lib/ovirtsdk4/services.rb', line 4986 def networks_service @networks_service ||= ClusterNetworksService.new(self, 'networks') end |
#permissions_service ⇒ AssignedPermissionsService
A reference to permissions.
4995 4996 4997 |
# File 'lib/ovirtsdk4/services.rb', line 4995 def @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end |
#refresh_gluster_heal_status(opts = {}) ⇒ Object
Refresh the Gluster heal info for all volumes in cluster.
For example, Cluster 123
, send a request like
this:
POST /ovirt-engine/api/clusters/123/refreshglusterhealstatus
4725 4726 4727 |
# File 'lib/ovirtsdk4/services.rb', line 4725 def refresh_gluster_heal_status(opts = {}) internal_action(:refreshglusterhealstatus, nil, REFRESH_GLUSTER_HEAL_STATUS, opts) end |
#remove(opts = {}) ⇒ Object
Removes the cluster from the system.
DELETE /ovirt-engine/api/clusters/00000000-0000-0000-0000-000000000000
4755 4756 4757 |
# File 'lib/ovirtsdk4/services.rb', line 4755 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#reset_emulated_machine(opts = {}) ⇒ Object
Executes the reset_emulated_machine
method.
4781 4782 4783 |
# File 'lib/ovirtsdk4/services.rb', line 4781 def reset_emulated_machine(opts = {}) internal_action(:resetemulatedmachine, nil, RESET_EMULATED_MACHINE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 |
# 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 end if path.start_with?('permissions/') return .service(path[12..-1]) end raise Error.new("The path \"#{path}\" doesn't correspond to any service") end |
#sync_all_networks(opts = {}) ⇒ Object
Synchronizes all networks on the cluster.
POST /ovirt-engine/api/clusters/123/syncallnetworks
With a request body like this:
<action/>
4819 4820 4821 |
# File 'lib/ovirtsdk4/services.rb', line 4819 def sync_all_networks(opts = {}) internal_action(:syncallnetworks, nil, SYNC_ALL_NETWORKS, opts) end |
#update(cluster, opts = {}) ⇒ Cluster
Updates information about the cluster.
Only the specified fields are updated; others remain unchanged.
For example, to update the cluster’s CPU:
PUT /ovirt-engine/api/clusters/123
With a request body like this:
<cluster>
<cpu>
<type>Intel Haswell-noTSX Family</type>
</cpu>
</cluster>
4868 4869 4870 |
# File 'lib/ovirtsdk4/services.rb', line 4868 def update(cluster, opts = {}) internal_update(cluster, Cluster, UPDATE, opts) end |
#upgrade(opts = {}) ⇒ Object
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.
POST /ovirt-engine/api/clusters/123/upgrade
With a request body like this to mark the cluster for upgrade:
<action>
<upgrade_action>
start
</upgrade_action>
</action>
4914 4915 4916 |
# File 'lib/ovirtsdk4/services.rb', line 4914 def upgrade(opts = {}) internal_action(:upgrade, nil, UPGRADE, opts) end |