Class: OvirtSDK4::HostService
- Inherits:
-
MeasurableService
- Object
- Service
- MeasurableService
- OvirtSDK4::HostService
- Defined in:
- lib/ovirtsdk4/services.rb,
lib/ovirtsdk4/services.rb
Instance Method Summary collapse
-
#activate(opts = {}) ⇒ Object
Activates the host for use, for example to run virtual machines.
-
#affinity_labels_service ⇒ AssignedAffinityLabelsService
List of scheduling labels assigned to this host.
-
#approve(opts = {}) ⇒ Object
Approve a pre-installed Hypervisor host for usage in the virtualization environment.
-
#approve_using_root_password(opts = {}) ⇒ Object
Approve the specified host to be added to the engine by using the root password (deprecated verb).
-
#approve_using_ssh(opts = {}) ⇒ Object
Approve the specified host to be added to the engine by using ssh authentication.
-
#commit_net_config(opts = {}) ⇒ Object
Marks the network configuration as good and persists it inside the host.
-
#deactivate(opts = {}) ⇒ Object
Deactivates the host to perform maintenance tasks.
-
#devices_service ⇒ HostDevicesService
A reference to the host devices service.
-
#enroll_certificate(opts = {}) ⇒ Object
Enrolls the certificate of the host.
-
#external_network_provider_configurations_service ⇒ ExternalNetworkProviderConfigurationsService
External network providers provisioned by the system on the host.
-
#fence(opts = {}) ⇒ Object
Controls the host’s power management device.
-
#fence_agents_service ⇒ FenceAgentsService
A reference to the fence agents service.
-
#force_select_spm(opts = {}) ⇒ Object
To manually set a host as the storage pool manager (SPM).
-
#get(opts = {}) ⇒ Host
Gets the host details.
-
#hooks_service ⇒ HostHooksService
A reference to the host hooks service.
-
#install(opts = {}) ⇒ Object
Installs the latest version of VDSM and related software on the host.
-
#install_using_root_password(opts = {}) ⇒ Object
Install VDSM and other packages required to get the host ready to be used in the engine providing the root password.
-
#install_using_ssh(opts = {}) ⇒ Object
Install VDSM and other packages required to get the host ready to be used in the engine providing the SSH password.
-
#iscsi_discover(opts = {}) ⇒ Object
Discovers iSCSI targets on the host, using the initiator details.
-
#iscsi_login(opts = {}) ⇒ Object
Login to iSCSI targets on the host, using the target details.
-
#katello_errata_service ⇒ KatelloErrataService
A reference to the service that can show the applicable errata available on the host.
-
#network_attachments_service ⇒ NetworkAttachmentsService
A reference to the network attachments service.
-
#nics_service ⇒ HostNicsService
A reference to the service that manages the network interface devices on the host.
-
#numa_nodes_service ⇒ HostNumaNodesService
A reference to the service that manage NUMA nodes for the host.
-
#permissions_service ⇒ AssignedPermissionsService
A reference to the host permission service.
-
#refresh(opts = {}) ⇒ Object
Refresh the host devices and capabilities.
-
#remove(opts = {}) ⇒ Object
Remove the host from the system.
-
#service(path) ⇒ Service
Locates the service corresponding to the given path.
-
#setup_networks(opts = {}) ⇒ Object
This method is used to change the configuration of the network interfaces of a host.
-
#statistics_service ⇒ StatisticsService
Locates the
statistics
service. -
#storage_connection_extensions_service ⇒ StorageServerConnectionExtensionsService
A reference to storage connection extensions.
-
#storage_service ⇒ HostStorageService
A reference to the service that manages the host’s storage.
-
#sync_all_networks(opts = {}) ⇒ Object
To synchronize all networks on the host, send a request like this:.
-
#tags_service ⇒ AssignedTagsService
A reference to the host tags service.
-
#unmanaged_networks_service ⇒ UnmanagedNetworksService
A reference to unmanaged networks.
-
#unregistered_storage_domains_discover(opts = {}) ⇒ Object
Discovers the block Storage Domains which are candidates to be imported to the setup.
-
#update(host, opts = {}) ⇒ Host
Update the host properties.
-
#update_using_root_password(host, opts = {}) ⇒ Host
Update the specified host in the system.
-
#update_using_ssh(host, opts = {}) ⇒ Host
Updates the specified host in the system.
-
#upgrade(opts = {}) ⇒ Object
Upgrades VDSM and selected software on the host.
-
#upgrade_check(opts = {}) ⇒ Object
Check if there are upgrades available for the host.
Methods inherited from Service
Instance Method Details
#activate(opts = {}) ⇒ Object
Activates the host for use, for example to run virtual machines.
35130 35131 35132 |
# File 'lib/ovirtsdk4/services.rb', line 35130 def activate(opts = {}) internal_action(:activate, nil, ACTIVATE, opts) end |
#affinity_labels_service ⇒ AssignedAffinityLabelsService
List of scheduling labels assigned to this host.
36310 36311 36312 |
# File 'lib/ovirtsdk4/services.rb', line 36310 def affinity_labels_service @affinity_labels_service ||= AssignedAffinityLabelsService.new(self, 'affinitylabels') end |
#approve(opts = {}) ⇒ Object
Approve a pre-installed Hypervisor host for usage in the virtualization environment.
This action also accepts an optional cluster element to define the target cluster for this host.
35164 35165 35166 |
# File 'lib/ovirtsdk4/services.rb', line 35164 def approve(opts = {}) internal_action(:approve, nil, APPROVE, opts) end |
#approve_using_root_password(opts = {}) ⇒ Object
Approve the specified host to be added to the engine by using the root password (deprecated verb). This occurs when the host registers itself with the engine.
36110 36111 36112 |
# File 'lib/ovirtsdk4/services.rb', line 36110 def approve_using_root_password(opts = {}) internal_action(:approve, nil, APPROVE_USING_ROOT_PASSWORD, opts) end |
#approve_using_ssh(opts = {}) ⇒ Object
Approve the specified host to be added to the engine by using ssh authentication. This occurs when the host registers itself with the engine.
36222 36223 36224 |
# File 'lib/ovirtsdk4/services.rb', line 36222 def approve_using_ssh(opts = {}) internal_action(:approve, nil, APPROVE_USING_SSH, opts) end |
#commit_net_config(opts = {}) ⇒ Object
Marks the network configuration as good and persists it inside the host.
An API user commits the network configuration to persist a host network interface attachment or detachment, or persist the creation and deletion of a bonded interface.
Important
|
Networking configuration is only committed after the engine has established that host connectivity is not lost as a result of the configuration changes. If host connectivity is lost, the host requires a reboot and automatically reverts to the previous networking configuration. |
For example, to commit the network configuration of host with id 123
send a request like this:
POST /ovirt-engine/api/hosts/123/commitnetconfig
With a request body like this:
<action/>
35211 35212 35213 |
# File 'lib/ovirtsdk4/services.rb', line 35211 def commit_net_config(opts = {}) internal_action(:commitnetconfig, nil, COMMIT_NET_CONFIG, opts) end |
#deactivate(opts = {}) ⇒ Object
Deactivates the host to perform maintenance tasks.
35244 35245 35246 |
# File 'lib/ovirtsdk4/services.rb', line 35244 def deactivate(opts = {}) internal_action(:deactivate, nil, DEACTIVATE, opts) end |
#devices_service ⇒ HostDevicesService
A reference to the host devices service. Use this service to view the devices of the host object.
36319 36320 36321 |
# File 'lib/ovirtsdk4/services.rb', line 36319 def devices_service @devices_service ||= HostDevicesService.new(self, 'devices') end |
#enroll_certificate(opts = {}) ⇒ Object
Enrolls the certificate of the host. Useful in case you get a warning that it is about to expire or has already expired.
35271 35272 35273 |
# File 'lib/ovirtsdk4/services.rb', line 35271 def enroll_certificate(opts = {}) internal_action(:enrollcertificate, nil, ENROLL_CERTIFICATE, opts) end |
#external_network_provider_configurations_service ⇒ ExternalNetworkProviderConfigurationsService
External network providers provisioned by the system on the host.
36328 36329 36330 |
# File 'lib/ovirtsdk4/services.rb', line 36328 def external_network_provider_configurations_service @external_network_provider_configurations_service ||= ExternalNetworkProviderConfigurationsService.new(self, 'externalnetworkproviderconfigurations') end |
#fence(opts = {}) ⇒ Object
Controls the host’s power management device.
For example, to start the host. This can be done via:
#!/bin/sh -ex
url="https://engine.example.com/ovirt-engine/api"
user="admin@internal"
password="..."
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--user "${user}:${password}" \
--request POST \
--header "Version: 4" \
--header "Content-Type: application/xml" \
--header "Accept: application/xml" \
--data '
<action>
<fence_type>start</fence_type>
</action>
' \
"${url}/hosts/123/fence"
35328 35329 35330 |
# File 'lib/ovirtsdk4/services.rb', line 35328 def fence(opts = {}) internal_action(:fence, :power_management, FENCE, opts) end |
#fence_agents_service ⇒ FenceAgentsService
A reference to the fence agents service. Use this service to manage fence and power management agents on the host object.
36338 36339 36340 |
# File 'lib/ovirtsdk4/services.rb', line 36338 def fence_agents_service @fence_agents_service ||= FenceAgentsService.new(self, 'fenceagents') end |
#force_select_spm(opts = {}) ⇒ Object
To manually set a host as the storage pool manager (SPM).
POST /ovirt-engine/api/hosts/123/forceselectspm
With a request body like this:
<action/>
35366 35367 35368 |
# File 'lib/ovirtsdk4/services.rb', line 35366 def force_select_spm(opts = {}) internal_action(:forceselectspm, nil, FORCE_SELECT_SPM, opts) end |
#get(opts = {}) ⇒ Host
Gets the host details.
GET /ovirt-engine/api/hosts/123
35420 35421 35422 |
# File 'lib/ovirtsdk4/services.rb', line 35420 def get(opts = {}) internal_get(GET, opts) end |
#hooks_service ⇒ HostHooksService
A reference to the host hooks service. Use this service to view the hooks available in the host object.
36347 36348 36349 |
# File 'lib/ovirtsdk4/services.rb', line 36347 def hooks_service @hooks_service ||= HostHooksService.new(self, 'hooks') end |
#install(opts = {}) ⇒ Object
Installs the latest version of VDSM and related software on the host.
The action also performs every configuration steps on the host which is done during adding host to the engine: kdump configuration, hosted-engine deploy, kernel options changes, etc.
The host type defines additional parameters for the action.
Example of installing a host, using curl
and JSON, plain:
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--request PUT \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Version: 4" \
--user "admin@internal:..." \
--data '
{
"root_password": "myrootpassword"
}
' \
"https://engine.example.com/ovirt-engine/api/hosts/123"
Example of installing a host, using curl
and JSON, with hosted engine components:
curl \
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--request PUT \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Version: 4" \
--user "admin@internal:..." \
--data '
{
"root_password": "myrootpassword"
}
' \
"https://engine.example.com/ovirt-engine/api/hosts/123?deploy_hosted_engine=true"
Important
|
Since version 4.1.2 of the engine when a host is reinstalled we override the host firewall definitions by default. |
35518 35519 35520 |
# File 'lib/ovirtsdk4/services.rb', line 35518 def install(opts = {}) internal_action(:install, nil, INSTALL, opts) end |
#install_using_root_password(opts = {}) ⇒ Object
Install VDSM and other packages required to get the host ready to be used in the engine providing the root password. This has been deprecated.
36160 36161 36162 |
# File 'lib/ovirtsdk4/services.rb', line 36160 def install_using_root_password(opts = {}) internal_action(:install, nil, INSTALL_USING_ROOT_PASSWORD, opts) end |
#install_using_ssh(opts = {}) ⇒ Object
Install VDSM and other packages required to get the host ready to be used in the engine providing the SSH password.
36272 36273 36274 |
# File 'lib/ovirtsdk4/services.rb', line 36272 def install_using_ssh(opts = {}) internal_action(:install, nil, INSTALL_USING_SSH, opts) end |
#iscsi_discover(opts = {}) ⇒ Object
Discovers iSCSI targets on the host, using the initiator details.
For example, to discover iSCSI targets available in myiscsi.example.com
,
from host 123
, send a request like this:
POST /ovirt-engine/api/hosts/123/iscsidiscover
With a request body like this:
<action>
<iscsi>
<address>myiscsi.example.com</address>
</iscsi>
</action>
The result will be like this:
<discovered_targets>
<iscsi_details>
<address>10.35.1.72</address>
<port>3260</port>
<portal>10.35.1.72:3260,1</portal>
<target>iqn.2015-08.com.tgt:444</target>
</iscsi_details>
</discovered_targets>
35587 35588 35589 |
# File 'lib/ovirtsdk4/services.rb', line 35587 def iscsi_discover(opts = {}) internal_action(:iscsidiscover, :iscsi_targets, ISCSI_DISCOVER, opts) end |
#iscsi_login(opts = {}) ⇒ Object
Login to iSCSI targets on the host, using the target details.
35616 35617 35618 |
# File 'lib/ovirtsdk4/services.rb', line 35616 def iscsi_login(opts = {}) internal_action(:iscsilogin, nil, ISCSI_LOGIN, opts) end |
#katello_errata_service ⇒ KatelloErrataService
A reference to the service that can show the applicable errata available on the host. This information is taken from Katello.
36357 36358 36359 |
# File 'lib/ovirtsdk4/services.rb', line 36357 def katello_errata_service @katello_errata_service ||= KatelloErrataService.new(self, 'katelloerrata') end |
#network_attachments_service ⇒ NetworkAttachmentsService
A reference to the network attachments service. You can use this service to attach Logical networks to host interfaces.
36367 36368 36369 |
# File 'lib/ovirtsdk4/services.rb', line 36367 def @network_attachments_service ||= NetworkAttachmentsService.new(self, 'networkattachments') end |
#nics_service ⇒ HostNicsService
A reference to the service that manages the network interface devices on the host.
36376 36377 36378 |
# File 'lib/ovirtsdk4/services.rb', line 36376 def nics_service @nics_service ||= HostNicsService.new(self, 'nics') end |
#numa_nodes_service ⇒ HostNumaNodesService
A reference to the service that manage NUMA nodes for the host.
36385 36386 36387 |
# File 'lib/ovirtsdk4/services.rb', line 36385 def numa_nodes_service @numa_nodes_service ||= HostNumaNodesService.new(self, 'numanodes') end |
#permissions_service ⇒ AssignedPermissionsService
A reference to the host permission service. Use this service to manage permissions on the host object.
36395 36396 36397 |
# File 'lib/ovirtsdk4/services.rb', line 36395 def @permissions_service ||= AssignedPermissionsService.new(self, 'permissions') end |
#refresh(opts = {}) ⇒ Object
Refresh the host devices and capabilities.
35642 35643 35644 |
# File 'lib/ovirtsdk4/services.rb', line 35642 def refresh(opts = {}) internal_action(:refresh, nil, REFRESH, opts) end |
#remove(opts = {}) ⇒ Object
Remove the host from the system.
#!/bin/sh -ex
url="https://engine.example.com/ovirt-engine/api"
user="admin@internal"
password="..."
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--user "${user}:${password}" \
--request DELETE \
--header "Version: 4" \
"${url}/hosts/1ff7a191-2f3b-4eff-812b-9f91a30c3acc"
35684 35685 35686 |
# File 'lib/ovirtsdk4/services.rb', line 35684 def remove(opts = {}) internal_remove(REMOVE, opts) end |
#service(path) ⇒ Service
Locates the service corresponding to the given path.
36451 36452 36453 36454 36455 36456 36457 36458 36459 36460 36461 36462 36463 36464 36465 36466 36467 36468 36469 36470 36471 36472 36473 36474 36475 36476 36477 36478 36479 36480 36481 36482 36483 36484 36485 36486 36487 36488 36489 36490 36491 36492 36493 36494 36495 36496 36497 36498 36499 36500 36501 36502 36503 36504 36505 36506 36507 36508 36509 36510 36511 36512 36513 36514 36515 36516 36517 36518 36519 36520 36521 36522 36523 36524 36525 36526 36527 36528 36529 36530 36531 36532 36533 36534 36535 36536 36537 36538 36539 36540 36541 36542 36543 36544 36545 36546 |
# File 'lib/ovirtsdk4/services.rb', line 36451 def service(path) if path.nil? || path == '' return self end if path == 'affinitylabels' return affinity_labels_service end if path.start_with?('affinitylabels/') return affinity_labels_service.service(path[15..-1]) end if path == 'devices' return devices_service end if path.start_with?('devices/') return devices_service.service(path[8..-1]) end if path == 'externalnetworkproviderconfigurations' return external_network_provider_configurations_service end if path.start_with?('externalnetworkproviderconfigurations/') return external_network_provider_configurations_service.service(path[38..-1]) end if path == 'fenceagents' return fence_agents_service end if path.start_with?('fenceagents/') return fence_agents_service.service(path[12..-1]) end if path == 'hooks' return hooks_service end if path.start_with?('hooks/') return hooks_service.service(path[6..-1]) end if path == 'katelloerrata' return katello_errata_service end if path.start_with?('katelloerrata/') return katello_errata_service.service(path[14..-1]) end if path == 'networkattachments' return end if path.start_with?('networkattachments/') return .service(path[19..-1]) end if path == 'nics' return nics_service end if path.start_with?('nics/') return nics_service.service(path[5..-1]) end if path == 'numanodes' return numa_nodes_service end if path.start_with?('numanodes/') return numa_nodes_service.service(path[10..-1]) end if path == 'permissions' return end if path.start_with?('permissions/') return .service(path[12..-1]) end if path == 'statistics' return statistics_service end if path.start_with?('statistics/') return statistics_service.service(path[11..-1]) end if path == 'storage' return storage_service end if path.start_with?('storage/') return storage_service.service(path[8..-1]) end if path == 'storageconnectionextensions' return storage_connection_extensions_service end if path.start_with?('storageconnectionextensions/') return storage_connection_extensions_service.service(path[28..-1]) end if path == 'tags' return end if path.start_with?('tags/') return .service(path[5..-1]) end if path == 'unmanagednetworks' return unmanaged_networks_service end if path.start_with?('unmanagednetworks/') return unmanaged_networks_service.service(path[18..-1]) end raise Error.new("The path \"#{path}\" doesn't correspond to any service") end |
#setup_networks(opts = {}) ⇒ Object
This method is used to change the configuration of the network interfaces of a host.
For example, if you have a host with three network interfaces eth0
, eth1
and eth2
and you want to configure
a new bond using eth0
and eth1
, and put a VLAN on top of it. Using a simple shell script and the curl
command line HTTP client that can be done as follows:
#!/bin/sh -ex
url="https://engine.example.com/ovirt-engine/api"
user="admin@internal"
password="..."
curl \
--verbose \
--cacert /etc/pki/ovirt-engine/ca.pem \
--user "${user}:${password}" \
--request POST \
--header "Version: 4" \
--header "Content-Type: application/xml" \
--header "Accept: application/xml" \
--data '
<action>
<modified_bonds>
<host_nic>
<name>bond0</name>
<bonding>
<options>
<option>
<name>mode</name>
<value>4</value>
</option>
<option>
<name>miimon</name>
<value>100</value>
</option>
</options>
<slaves>
<host_nic>
<name>eth1</name>
</host_nic>
<host_nic>
<name>eth2</name>
</host_nic>
</slaves>
</bonding>
</host_nic>
</modified_bonds>
<modified_network_attachments>
<network_attachment>
<network>
<name>myvlan</name>
</network>
<host_nic>
<name>bond0</name>
</host_nic>
<ip_address_assignments>
<assignment_method>static</assignment_method>
<ip_address_assignment>
<ip>
<address>192.168.122.10</address>
<netmask>255.255.255.0</netmask>
</ip>
</ip_address_assignment>
</ip_address_assignments>
<dns_resolver_configuration>
<name_servers>
<name_server>1.1.1.1</name_server>
<name_server>2.2.2.2</name_server>
</name_servers>
</dns_resolver_configuration>
</network_attachment>
</modified_network_attachments>
</action>
' \
"${url}/hosts/1ff7a191-2f3b-4eff-812b-9f91a30c3acc/setupnetworks"
Note
|
This is valid for version 4 of the API. In previous versions some elements were represented as XML
attributes instead of XML elements. In particular the options and ip elements were represented as follows:
|
<options name="mode" value="4"/>
<options name="miimon" value="100"/>
<ip address="192.168.122.10" netmask="255.255.255.0"/>
Using the Python SDK the same can be done with the following code:
# Find the service that manages the collection of hosts:
hosts_service = connection.system_service().hosts_service()
# Find the host:
host = hosts_service.list(search='name=myhost')[0]
# Find the service that manages the host:
host_service = hosts_service.host_service(host.id)
# Configure the network adding a bond with two slaves and attaching it to a
# network with an static IP address:
host_service.setup_networks(
modified_bonds=[
types.HostNic(
name='bond0',
bonding=types.Bonding(
options=[
types.Option(
name='mode',
value='4',
),
types.Option(
name='miimon',
value='100',
),
],
slaves=[
types.HostNic(
name='eth1',
),
types.HostNic(
name='eth2',
),
],
),
),
],
modified_network_attachments=[
types.NetworkAttachment(
network=types.Network(
name='myvlan',
),
host_nic=types.HostNic(
name='bond0',
),
ip_address_assignments=[
types.IpAddressAssignment(
assignment_method=types.BootProtocol.STATIC,
ip=types.Ip(
address='192.168.122.10',
netmask='255.255.255.0',
),
),
],
dns_resolver_configuration=types.DnsResolverConfiguration(
name_servers=[
'1.1.1.1',
'2.2.2.2',
],
),
),
],
)
# After modifying the network configuration it is very important to make it
# persistent:
host_service.commit_net_config()
Important
|
To make sure that the network configuration has been saved in the host, and that it will be applied when the host is rebooted, remember to call commitnetconfig. |
35900 35901 35902 |
# File 'lib/ovirtsdk4/services.rb', line 35900 def setup_networks(opts = {}) internal_action(:setupnetworks, nil, SETUP_NETWORKS, opts) end |
#statistics_service ⇒ StatisticsService
Locates the statistics
service.
36404 36405 36406 |
# File 'lib/ovirtsdk4/services.rb', line 36404 def statistics_service @statistics_service ||= StatisticsService.new(self, 'statistics') end |
#storage_connection_extensions_service ⇒ StorageServerConnectionExtensionsService
A reference to storage connection extensions.
36422 36423 36424 |
# File 'lib/ovirtsdk4/services.rb', line 36422 def storage_connection_extensions_service @storage_connection_extensions_service ||= StorageServerConnectionExtensionsService.new(self, 'storageconnectionextensions') end |
#storage_service ⇒ HostStorageService
A reference to the service that manages the host’s storage.
36413 36414 36415 |
# File 'lib/ovirtsdk4/services.rb', line 36413 def storage_service @storage_service ||= HostStorageService.new(self, 'storage') end |
#sync_all_networks(opts = {}) ⇒ Object
To synchronize all networks on the host, send a request like this:
POST /ovirt-engine/api/hosts/123/syncallnetworks
With a request body like this:
<action/>
35938 35939 35940 |
# File 'lib/ovirtsdk4/services.rb', line 35938 def sync_all_networks(opts = {}) internal_action(:syncallnetworks, nil, SYNC_ALL_NETWORKS, opts) end |
#tags_service ⇒ AssignedTagsService
A reference to the host tags service. Use this service to manage tags on the host object.
36431 36432 36433 |
# File 'lib/ovirtsdk4/services.rb', line 36431 def @tags_service ||= AssignedTagsService.new(self, 'tags') end |
#unmanaged_networks_service ⇒ UnmanagedNetworksService
A reference to unmanaged networks.
36440 36441 36442 |
# File 'lib/ovirtsdk4/services.rb', line 36440 def unmanaged_networks_service @unmanaged_networks_service ||= UnmanagedNetworksService.new(self, 'unmanagednetworks') end |
#unregistered_storage_domains_discover(opts = {}) ⇒ Object
Discovers the block Storage Domains which are candidates to be imported to the setup. For FCP no arguments are required.
35970 35971 35972 |
# File 'lib/ovirtsdk4/services.rb', line 35970 def unregistered_storage_domains_discover(opts = {}) internal_action(:unregisteredstoragedomainsdiscover, :storage_domains, UNREGISTERED_STORAGE_DOMAINS_DISCOVER, opts) end |
#update(host, opts = {}) ⇒ Host
Update the host properties.
For example, to update a the kernel command line of a host send a request like this:
PUT /ovirt-engine/api/hosts/123
With request body like this:
<host>
<os>
<custom_kernel_cmdline>vfio_iommu_type1.allow_unsafe_interrupts=1</custom_kernel_cmdline>
</os>
</host>
36017 36018 36019 |
# File 'lib/ovirtsdk4/services.rb', line 36017 def update(host, opts = {}) internal_update(host, Host, UPDATE, opts) end |
#update_using_root_password(host, opts = {}) ⇒ Host
Update the specified host in the system. This is deprecated and is provided only for backwards compatibility.
36189 36190 36191 |
# File 'lib/ovirtsdk4/services.rb', line 36189 def update_using_root_password(host, opts = {}) internal_update(host, Host, UPDATE_USING_ROOT_PASSWORD, opts) end |
#update_using_ssh(host, opts = {}) ⇒ Host
Updates the specified host in the system.
36301 36302 36303 |
# File 'lib/ovirtsdk4/services.rb', line 36301 def update_using_ssh(host, opts = {}) internal_update(host, Host, UPDATE_USING_SSH, opts) end |
#upgrade(opts = {}) ⇒ Object
Upgrades VDSM and selected software on the host.
36051 36052 36053 |
# File 'lib/ovirtsdk4/services.rb', line 36051 def upgrade(opts = {}) internal_action(:upgrade, nil, UPGRADE, opts) end |
#upgrade_check(opts = {}) ⇒ Object
Check if there are upgrades available for the host. If there are upgrades available an icon will be displayed next to host status icon in the Administration Portal. Audit log messages are also added to indicate the availability of upgrades. The upgrade can be started from the webadmin or by using the upgrade host action.
36077 36078 36079 |
# File 'lib/ovirtsdk4/services.rb', line 36077 def upgrade_check(opts = {}) internal_action(:upgradecheck, nil, UPGRADE_CHECK, opts) end |