# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import copy
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from .. import _utilities

__all__ = ['OptionsArgs', 'Options']

@pulumi.input_type
class OptionsArgs:
    def __init__(__self__, *,
                 bandwidth_limit_clone: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_default: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_migration: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_move: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_restore: Optional[pulumi.Input[int]] = None,
                 console: Optional[pulumi.Input[str]] = None,
                 crs_ha: Optional[pulumi.Input[str]] = None,
                 crs_ha_rebalance_on_start: Optional[pulumi.Input[bool]] = None,
                 description: Optional[pulumi.Input[str]] = None,
                 email_from: Optional[pulumi.Input[str]] = None,
                 ha_shutdown_policy: Optional[pulumi.Input[str]] = None,
                 http_proxy: Optional[pulumi.Input[str]] = None,
                 keyboard: Optional[pulumi.Input[str]] = None,
                 language: Optional[pulumi.Input[str]] = None,
                 mac_prefix: Optional[pulumi.Input[str]] = None,
                 max_workers: Optional[pulumi.Input[int]] = None,
                 migration_cidr: Optional[pulumi.Input[str]] = None,
                 migration_type: Optional[pulumi.Input[str]] = None):
        """
        The set of arguments for constructing a Options resource.
        :param pulumi.Input[int] bandwidth_limit_clone: Clone I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_default: Default I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_migration: Migration I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_move: Move I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_restore: Restore I/O bandwidth limit in KiB/s.
        :param pulumi.Input[str] console: Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        :param pulumi.Input[str] crs_ha: Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        :param pulumi.Input[bool] crs_ha_rebalance_on_start: Cluster resource scheduling setting for HA rebalance on start.
        :param pulumi.Input[str] description: Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        :param pulumi.Input[str] email_from: email address to send notification from (default is root@$hostname).
        :param pulumi.Input[str] ha_shutdown_policy: Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        :param pulumi.Input[str] http_proxy: Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        :param pulumi.Input[str] keyboard: Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        :param pulumi.Input[str] language: Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        :param pulumi.Input[str] mac_prefix: Prefix for autogenerated MAC addresses.
        :param pulumi.Input[int] max_workers: Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        :param pulumi.Input[str] migration_cidr: Cluster wide migration network CIDR.
        :param pulumi.Input[str] migration_type: Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        if bandwidth_limit_clone is not None:
            pulumi.set(__self__, "bandwidth_limit_clone", bandwidth_limit_clone)
        if bandwidth_limit_default is not None:
            pulumi.set(__self__, "bandwidth_limit_default", bandwidth_limit_default)
        if bandwidth_limit_migration is not None:
            pulumi.set(__self__, "bandwidth_limit_migration", bandwidth_limit_migration)
        if bandwidth_limit_move is not None:
            pulumi.set(__self__, "bandwidth_limit_move", bandwidth_limit_move)
        if bandwidth_limit_restore is not None:
            pulumi.set(__self__, "bandwidth_limit_restore", bandwidth_limit_restore)
        if console is not None:
            pulumi.set(__self__, "console", console)
        if crs_ha is not None:
            pulumi.set(__self__, "crs_ha", crs_ha)
        if crs_ha_rebalance_on_start is not None:
            pulumi.set(__self__, "crs_ha_rebalance_on_start", crs_ha_rebalance_on_start)
        if description is not None:
            pulumi.set(__self__, "description", description)
        if email_from is not None:
            pulumi.set(__self__, "email_from", email_from)
        if ha_shutdown_policy is not None:
            pulumi.set(__self__, "ha_shutdown_policy", ha_shutdown_policy)
        if http_proxy is not None:
            pulumi.set(__self__, "http_proxy", http_proxy)
        if keyboard is not None:
            pulumi.set(__self__, "keyboard", keyboard)
        if language is not None:
            pulumi.set(__self__, "language", language)
        if mac_prefix is not None:
            pulumi.set(__self__, "mac_prefix", mac_prefix)
        if max_workers is not None:
            pulumi.set(__self__, "max_workers", max_workers)
        if migration_cidr is not None:
            pulumi.set(__self__, "migration_cidr", migration_cidr)
        if migration_type is not None:
            pulumi.set(__self__, "migration_type", migration_type)

    @property
    @pulumi.getter(name="bandwidthLimitClone")
    def bandwidth_limit_clone(self) -> Optional[pulumi.Input[int]]:
        """
        Clone I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_clone")

    @bandwidth_limit_clone.setter
    def bandwidth_limit_clone(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_clone", value)

    @property
    @pulumi.getter(name="bandwidthLimitDefault")
    def bandwidth_limit_default(self) -> Optional[pulumi.Input[int]]:
        """
        Default I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_default")

    @bandwidth_limit_default.setter
    def bandwidth_limit_default(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_default", value)

    @property
    @pulumi.getter(name="bandwidthLimitMigration")
    def bandwidth_limit_migration(self) -> Optional[pulumi.Input[int]]:
        """
        Migration I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_migration")

    @bandwidth_limit_migration.setter
    def bandwidth_limit_migration(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_migration", value)

    @property
    @pulumi.getter(name="bandwidthLimitMove")
    def bandwidth_limit_move(self) -> Optional[pulumi.Input[int]]:
        """
        Move I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_move")

    @bandwidth_limit_move.setter
    def bandwidth_limit_move(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_move", value)

    @property
    @pulumi.getter(name="bandwidthLimitRestore")
    def bandwidth_limit_restore(self) -> Optional[pulumi.Input[int]]:
        """
        Restore I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_restore")

    @bandwidth_limit_restore.setter
    def bandwidth_limit_restore(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_restore", value)

    @property
    @pulumi.getter
    def console(self) -> Optional[pulumi.Input[str]]:
        """
        Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        """
        return pulumi.get(self, "console")

    @console.setter
    def console(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "console", value)

    @property
    @pulumi.getter(name="crsHa")
    def crs_ha(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        """
        return pulumi.get(self, "crs_ha")

    @crs_ha.setter
    def crs_ha(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "crs_ha", value)

    @property
    @pulumi.getter(name="crsHaRebalanceOnStart")
    def crs_ha_rebalance_on_start(self) -> Optional[pulumi.Input[bool]]:
        """
        Cluster resource scheduling setting for HA rebalance on start.
        """
        return pulumi.get(self, "crs_ha_rebalance_on_start")

    @crs_ha_rebalance_on_start.setter
    def crs_ha_rebalance_on_start(self, value: Optional[pulumi.Input[bool]]):
        pulumi.set(self, "crs_ha_rebalance_on_start", value)

    @property
    @pulumi.getter
    def description(self) -> Optional[pulumi.Input[str]]:
        """
        Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        """
        return pulumi.get(self, "description")

    @description.setter
    def description(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "description", value)

    @property
    @pulumi.getter(name="emailFrom")
    def email_from(self) -> Optional[pulumi.Input[str]]:
        """
        email address to send notification from (default is root@$hostname).
        """
        return pulumi.get(self, "email_from")

    @email_from.setter
    def email_from(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "email_from", value)

    @property
    @pulumi.getter(name="haShutdownPolicy")
    def ha_shutdown_policy(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        """
        return pulumi.get(self, "ha_shutdown_policy")

    @ha_shutdown_policy.setter
    def ha_shutdown_policy(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "ha_shutdown_policy", value)

    @property
    @pulumi.getter(name="httpProxy")
    def http_proxy(self) -> Optional[pulumi.Input[str]]:
        """
        Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        """
        return pulumi.get(self, "http_proxy")

    @http_proxy.setter
    def http_proxy(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "http_proxy", value)

    @property
    @pulumi.getter
    def keyboard(self) -> Optional[pulumi.Input[str]]:
        """
        Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        """
        return pulumi.get(self, "keyboard")

    @keyboard.setter
    def keyboard(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "keyboard", value)

    @property
    @pulumi.getter
    def language(self) -> Optional[pulumi.Input[str]]:
        """
        Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        """
        return pulumi.get(self, "language")

    @language.setter
    def language(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "language", value)

    @property
    @pulumi.getter(name="macPrefix")
    def mac_prefix(self) -> Optional[pulumi.Input[str]]:
        """
        Prefix for autogenerated MAC addresses.
        """
        return pulumi.get(self, "mac_prefix")

    @mac_prefix.setter
    def mac_prefix(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "mac_prefix", value)

    @property
    @pulumi.getter(name="maxWorkers")
    def max_workers(self) -> Optional[pulumi.Input[int]]:
        """
        Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        """
        return pulumi.get(self, "max_workers")

    @max_workers.setter
    def max_workers(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "max_workers", value)

    @property
    @pulumi.getter(name="migrationCidr")
    def migration_cidr(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster wide migration network CIDR.
        """
        return pulumi.get(self, "migration_cidr")

    @migration_cidr.setter
    def migration_cidr(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "migration_cidr", value)

    @property
    @pulumi.getter(name="migrationType")
    def migration_type(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        return pulumi.get(self, "migration_type")

    @migration_type.setter
    def migration_type(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "migration_type", value)


@pulumi.input_type
class _OptionsState:
    def __init__(__self__, *,
                 bandwidth_limit_clone: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_default: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_migration: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_move: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_restore: Optional[pulumi.Input[int]] = None,
                 console: Optional[pulumi.Input[str]] = None,
                 crs_ha: Optional[pulumi.Input[str]] = None,
                 crs_ha_rebalance_on_start: Optional[pulumi.Input[bool]] = None,
                 description: Optional[pulumi.Input[str]] = None,
                 email_from: Optional[pulumi.Input[str]] = None,
                 ha_shutdown_policy: Optional[pulumi.Input[str]] = None,
                 http_proxy: Optional[pulumi.Input[str]] = None,
                 keyboard: Optional[pulumi.Input[str]] = None,
                 language: Optional[pulumi.Input[str]] = None,
                 mac_prefix: Optional[pulumi.Input[str]] = None,
                 max_workers: Optional[pulumi.Input[int]] = None,
                 migration_cidr: Optional[pulumi.Input[str]] = None,
                 migration_type: Optional[pulumi.Input[str]] = None):
        """
        Input properties used for looking up and filtering Options resources.
        :param pulumi.Input[int] bandwidth_limit_clone: Clone I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_default: Default I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_migration: Migration I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_move: Move I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_restore: Restore I/O bandwidth limit in KiB/s.
        :param pulumi.Input[str] console: Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        :param pulumi.Input[str] crs_ha: Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        :param pulumi.Input[bool] crs_ha_rebalance_on_start: Cluster resource scheduling setting for HA rebalance on start.
        :param pulumi.Input[str] description: Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        :param pulumi.Input[str] email_from: email address to send notification from (default is root@$hostname).
        :param pulumi.Input[str] ha_shutdown_policy: Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        :param pulumi.Input[str] http_proxy: Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        :param pulumi.Input[str] keyboard: Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        :param pulumi.Input[str] language: Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        :param pulumi.Input[str] mac_prefix: Prefix for autogenerated MAC addresses.
        :param pulumi.Input[int] max_workers: Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        :param pulumi.Input[str] migration_cidr: Cluster wide migration network CIDR.
        :param pulumi.Input[str] migration_type: Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        if bandwidth_limit_clone is not None:
            pulumi.set(__self__, "bandwidth_limit_clone", bandwidth_limit_clone)
        if bandwidth_limit_default is not None:
            pulumi.set(__self__, "bandwidth_limit_default", bandwidth_limit_default)
        if bandwidth_limit_migration is not None:
            pulumi.set(__self__, "bandwidth_limit_migration", bandwidth_limit_migration)
        if bandwidth_limit_move is not None:
            pulumi.set(__self__, "bandwidth_limit_move", bandwidth_limit_move)
        if bandwidth_limit_restore is not None:
            pulumi.set(__self__, "bandwidth_limit_restore", bandwidth_limit_restore)
        if console is not None:
            pulumi.set(__self__, "console", console)
        if crs_ha is not None:
            pulumi.set(__self__, "crs_ha", crs_ha)
        if crs_ha_rebalance_on_start is not None:
            pulumi.set(__self__, "crs_ha_rebalance_on_start", crs_ha_rebalance_on_start)
        if description is not None:
            pulumi.set(__self__, "description", description)
        if email_from is not None:
            pulumi.set(__self__, "email_from", email_from)
        if ha_shutdown_policy is not None:
            pulumi.set(__self__, "ha_shutdown_policy", ha_shutdown_policy)
        if http_proxy is not None:
            pulumi.set(__self__, "http_proxy", http_proxy)
        if keyboard is not None:
            pulumi.set(__self__, "keyboard", keyboard)
        if language is not None:
            pulumi.set(__self__, "language", language)
        if mac_prefix is not None:
            pulumi.set(__self__, "mac_prefix", mac_prefix)
        if max_workers is not None:
            pulumi.set(__self__, "max_workers", max_workers)
        if migration_cidr is not None:
            pulumi.set(__self__, "migration_cidr", migration_cidr)
        if migration_type is not None:
            pulumi.set(__self__, "migration_type", migration_type)

    @property
    @pulumi.getter(name="bandwidthLimitClone")
    def bandwidth_limit_clone(self) -> Optional[pulumi.Input[int]]:
        """
        Clone I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_clone")

    @bandwidth_limit_clone.setter
    def bandwidth_limit_clone(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_clone", value)

    @property
    @pulumi.getter(name="bandwidthLimitDefault")
    def bandwidth_limit_default(self) -> Optional[pulumi.Input[int]]:
        """
        Default I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_default")

    @bandwidth_limit_default.setter
    def bandwidth_limit_default(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_default", value)

    @property
    @pulumi.getter(name="bandwidthLimitMigration")
    def bandwidth_limit_migration(self) -> Optional[pulumi.Input[int]]:
        """
        Migration I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_migration")

    @bandwidth_limit_migration.setter
    def bandwidth_limit_migration(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_migration", value)

    @property
    @pulumi.getter(name="bandwidthLimitMove")
    def bandwidth_limit_move(self) -> Optional[pulumi.Input[int]]:
        """
        Move I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_move")

    @bandwidth_limit_move.setter
    def bandwidth_limit_move(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_move", value)

    @property
    @pulumi.getter(name="bandwidthLimitRestore")
    def bandwidth_limit_restore(self) -> Optional[pulumi.Input[int]]:
        """
        Restore I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_restore")

    @bandwidth_limit_restore.setter
    def bandwidth_limit_restore(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "bandwidth_limit_restore", value)

    @property
    @pulumi.getter
    def console(self) -> Optional[pulumi.Input[str]]:
        """
        Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        """
        return pulumi.get(self, "console")

    @console.setter
    def console(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "console", value)

    @property
    @pulumi.getter(name="crsHa")
    def crs_ha(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        """
        return pulumi.get(self, "crs_ha")

    @crs_ha.setter
    def crs_ha(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "crs_ha", value)

    @property
    @pulumi.getter(name="crsHaRebalanceOnStart")
    def crs_ha_rebalance_on_start(self) -> Optional[pulumi.Input[bool]]:
        """
        Cluster resource scheduling setting for HA rebalance on start.
        """
        return pulumi.get(self, "crs_ha_rebalance_on_start")

    @crs_ha_rebalance_on_start.setter
    def crs_ha_rebalance_on_start(self, value: Optional[pulumi.Input[bool]]):
        pulumi.set(self, "crs_ha_rebalance_on_start", value)

    @property
    @pulumi.getter
    def description(self) -> Optional[pulumi.Input[str]]:
        """
        Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        """
        return pulumi.get(self, "description")

    @description.setter
    def description(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "description", value)

    @property
    @pulumi.getter(name="emailFrom")
    def email_from(self) -> Optional[pulumi.Input[str]]:
        """
        email address to send notification from (default is root@$hostname).
        """
        return pulumi.get(self, "email_from")

    @email_from.setter
    def email_from(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "email_from", value)

    @property
    @pulumi.getter(name="haShutdownPolicy")
    def ha_shutdown_policy(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        """
        return pulumi.get(self, "ha_shutdown_policy")

    @ha_shutdown_policy.setter
    def ha_shutdown_policy(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "ha_shutdown_policy", value)

    @property
    @pulumi.getter(name="httpProxy")
    def http_proxy(self) -> Optional[pulumi.Input[str]]:
        """
        Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        """
        return pulumi.get(self, "http_proxy")

    @http_proxy.setter
    def http_proxy(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "http_proxy", value)

    @property
    @pulumi.getter
    def keyboard(self) -> Optional[pulumi.Input[str]]:
        """
        Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        """
        return pulumi.get(self, "keyboard")

    @keyboard.setter
    def keyboard(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "keyboard", value)

    @property
    @pulumi.getter
    def language(self) -> Optional[pulumi.Input[str]]:
        """
        Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        """
        return pulumi.get(self, "language")

    @language.setter
    def language(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "language", value)

    @property
    @pulumi.getter(name="macPrefix")
    def mac_prefix(self) -> Optional[pulumi.Input[str]]:
        """
        Prefix for autogenerated MAC addresses.
        """
        return pulumi.get(self, "mac_prefix")

    @mac_prefix.setter
    def mac_prefix(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "mac_prefix", value)

    @property
    @pulumi.getter(name="maxWorkers")
    def max_workers(self) -> Optional[pulumi.Input[int]]:
        """
        Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        """
        return pulumi.get(self, "max_workers")

    @max_workers.setter
    def max_workers(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "max_workers", value)

    @property
    @pulumi.getter(name="migrationCidr")
    def migration_cidr(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster wide migration network CIDR.
        """
        return pulumi.get(self, "migration_cidr")

    @migration_cidr.setter
    def migration_cidr(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "migration_cidr", value)

    @property
    @pulumi.getter(name="migrationType")
    def migration_type(self) -> Optional[pulumi.Input[str]]:
        """
        Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        return pulumi.get(self, "migration_type")

    @migration_type.setter
    def migration_type(self, value: Optional[pulumi.Input[str]]):
        pulumi.set(self, "migration_type", value)


class Options(pulumi.CustomResource):
    @overload
    def __init__(__self__,
                 resource_name: str,
                 opts: Optional[pulumi.ResourceOptions] = None,
                 bandwidth_limit_clone: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_default: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_migration: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_move: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_restore: Optional[pulumi.Input[int]] = None,
                 console: Optional[pulumi.Input[str]] = None,
                 crs_ha: Optional[pulumi.Input[str]] = None,
                 crs_ha_rebalance_on_start: Optional[pulumi.Input[bool]] = None,
                 description: Optional[pulumi.Input[str]] = None,
                 email_from: Optional[pulumi.Input[str]] = None,
                 ha_shutdown_policy: Optional[pulumi.Input[str]] = None,
                 http_proxy: Optional[pulumi.Input[str]] = None,
                 keyboard: Optional[pulumi.Input[str]] = None,
                 language: Optional[pulumi.Input[str]] = None,
                 mac_prefix: Optional[pulumi.Input[str]] = None,
                 max_workers: Optional[pulumi.Input[int]] = None,
                 migration_cidr: Optional[pulumi.Input[str]] = None,
                 migration_type: Optional[pulumi.Input[str]] = None,
                 __props__=None):
        """
        Manages Proxmox VE Cluster Datacenter options.

        ## Example Usage

        <!--Start PulumiCodeChooser -->
        ```python
        import pulumi
        import pulumi_proxmoxve as proxmoxve

        options = proxmoxve.cluster.Options("options",
            bandwidth_limit_default=666666,
            bandwidth_limit_migration=555555,
            email_from="ged@gont.earthsea",
            keyboard="pl",
            language="en",
            max_workers=5,
            migration_cidr="10.0.0.0/8",
            migration_type="secure")
        ```
        <!--End PulumiCodeChooser -->

        ## Import

        #!/usr/bin/env sh

        Cluster options are global and can be imported using e.g.:

        ```sh
        $ pulumi import proxmoxve:Cluster/options:Options options cluster
        ```

        :param str resource_name: The name of the resource.
        :param pulumi.ResourceOptions opts: Options for the resource.
        :param pulumi.Input[int] bandwidth_limit_clone: Clone I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_default: Default I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_migration: Migration I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_move: Move I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_restore: Restore I/O bandwidth limit in KiB/s.
        :param pulumi.Input[str] console: Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        :param pulumi.Input[str] crs_ha: Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        :param pulumi.Input[bool] crs_ha_rebalance_on_start: Cluster resource scheduling setting for HA rebalance on start.
        :param pulumi.Input[str] description: Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        :param pulumi.Input[str] email_from: email address to send notification from (default is root@$hostname).
        :param pulumi.Input[str] ha_shutdown_policy: Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        :param pulumi.Input[str] http_proxy: Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        :param pulumi.Input[str] keyboard: Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        :param pulumi.Input[str] language: Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        :param pulumi.Input[str] mac_prefix: Prefix for autogenerated MAC addresses.
        :param pulumi.Input[int] max_workers: Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        :param pulumi.Input[str] migration_cidr: Cluster wide migration network CIDR.
        :param pulumi.Input[str] migration_type: Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        ...
    @overload
    def __init__(__self__,
                 resource_name: str,
                 args: Optional[OptionsArgs] = None,
                 opts: Optional[pulumi.ResourceOptions] = None):
        """
        Manages Proxmox VE Cluster Datacenter options.

        ## Example Usage

        <!--Start PulumiCodeChooser -->
        ```python
        import pulumi
        import pulumi_proxmoxve as proxmoxve

        options = proxmoxve.cluster.Options("options",
            bandwidth_limit_default=666666,
            bandwidth_limit_migration=555555,
            email_from="ged@gont.earthsea",
            keyboard="pl",
            language="en",
            max_workers=5,
            migration_cidr="10.0.0.0/8",
            migration_type="secure")
        ```
        <!--End PulumiCodeChooser -->

        ## Import

        #!/usr/bin/env sh

        Cluster options are global and can be imported using e.g.:

        ```sh
        $ pulumi import proxmoxve:Cluster/options:Options options cluster
        ```

        :param str resource_name: The name of the resource.
        :param OptionsArgs args: The arguments to use to populate this resource's properties.
        :param pulumi.ResourceOptions opts: Options for the resource.
        """
        ...
    def __init__(__self__, resource_name: str, *args, **kwargs):
        resource_args, opts = _utilities.get_resource_args_opts(OptionsArgs, pulumi.ResourceOptions, *args, **kwargs)
        if resource_args is not None:
            __self__._internal_init(resource_name, opts, **resource_args.__dict__)
        else:
            __self__._internal_init(resource_name, *args, **kwargs)

    def _internal_init(__self__,
                 resource_name: str,
                 opts: Optional[pulumi.ResourceOptions] = None,
                 bandwidth_limit_clone: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_default: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_migration: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_move: Optional[pulumi.Input[int]] = None,
                 bandwidth_limit_restore: Optional[pulumi.Input[int]] = None,
                 console: Optional[pulumi.Input[str]] = None,
                 crs_ha: Optional[pulumi.Input[str]] = None,
                 crs_ha_rebalance_on_start: Optional[pulumi.Input[bool]] = None,
                 description: Optional[pulumi.Input[str]] = None,
                 email_from: Optional[pulumi.Input[str]] = None,
                 ha_shutdown_policy: Optional[pulumi.Input[str]] = None,
                 http_proxy: Optional[pulumi.Input[str]] = None,
                 keyboard: Optional[pulumi.Input[str]] = None,
                 language: Optional[pulumi.Input[str]] = None,
                 mac_prefix: Optional[pulumi.Input[str]] = None,
                 max_workers: Optional[pulumi.Input[int]] = None,
                 migration_cidr: Optional[pulumi.Input[str]] = None,
                 migration_type: Optional[pulumi.Input[str]] = None,
                 __props__=None):
        opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
        if not isinstance(opts, pulumi.ResourceOptions):
            raise TypeError('Expected resource options to be a ResourceOptions instance')
        if opts.id is None:
            if __props__ is not None:
                raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
            __props__ = OptionsArgs.__new__(OptionsArgs)

            __props__.__dict__["bandwidth_limit_clone"] = bandwidth_limit_clone
            __props__.__dict__["bandwidth_limit_default"] = bandwidth_limit_default
            __props__.__dict__["bandwidth_limit_migration"] = bandwidth_limit_migration
            __props__.__dict__["bandwidth_limit_move"] = bandwidth_limit_move
            __props__.__dict__["bandwidth_limit_restore"] = bandwidth_limit_restore
            __props__.__dict__["console"] = console
            __props__.__dict__["crs_ha"] = crs_ha
            __props__.__dict__["crs_ha_rebalance_on_start"] = crs_ha_rebalance_on_start
            __props__.__dict__["description"] = description
            __props__.__dict__["email_from"] = email_from
            __props__.__dict__["ha_shutdown_policy"] = ha_shutdown_policy
            __props__.__dict__["http_proxy"] = http_proxy
            __props__.__dict__["keyboard"] = keyboard
            __props__.__dict__["language"] = language
            __props__.__dict__["mac_prefix"] = mac_prefix
            __props__.__dict__["max_workers"] = max_workers
            __props__.__dict__["migration_cidr"] = migration_cidr
            __props__.__dict__["migration_type"] = migration_type
        super(Options, __self__).__init__(
            'proxmoxve:Cluster/options:Options',
            resource_name,
            __props__,
            opts)

    @staticmethod
    def get(resource_name: str,
            id: pulumi.Input[str],
            opts: Optional[pulumi.ResourceOptions] = None,
            bandwidth_limit_clone: Optional[pulumi.Input[int]] = None,
            bandwidth_limit_default: Optional[pulumi.Input[int]] = None,
            bandwidth_limit_migration: Optional[pulumi.Input[int]] = None,
            bandwidth_limit_move: Optional[pulumi.Input[int]] = None,
            bandwidth_limit_restore: Optional[pulumi.Input[int]] = None,
            console: Optional[pulumi.Input[str]] = None,
            crs_ha: Optional[pulumi.Input[str]] = None,
            crs_ha_rebalance_on_start: Optional[pulumi.Input[bool]] = None,
            description: Optional[pulumi.Input[str]] = None,
            email_from: Optional[pulumi.Input[str]] = None,
            ha_shutdown_policy: Optional[pulumi.Input[str]] = None,
            http_proxy: Optional[pulumi.Input[str]] = None,
            keyboard: Optional[pulumi.Input[str]] = None,
            language: Optional[pulumi.Input[str]] = None,
            mac_prefix: Optional[pulumi.Input[str]] = None,
            max_workers: Optional[pulumi.Input[int]] = None,
            migration_cidr: Optional[pulumi.Input[str]] = None,
            migration_type: Optional[pulumi.Input[str]] = None) -> 'Options':
        """
        Get an existing Options resource's state with the given name, id, and optional extra
        properties used to qualify the lookup.

        :param str resource_name: The unique name of the resulting resource.
        :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
        :param pulumi.ResourceOptions opts: Options for the resource.
        :param pulumi.Input[int] bandwidth_limit_clone: Clone I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_default: Default I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_migration: Migration I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_move: Move I/O bandwidth limit in KiB/s.
        :param pulumi.Input[int] bandwidth_limit_restore: Restore I/O bandwidth limit in KiB/s.
        :param pulumi.Input[str] console: Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        :param pulumi.Input[str] crs_ha: Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        :param pulumi.Input[bool] crs_ha_rebalance_on_start: Cluster resource scheduling setting for HA rebalance on start.
        :param pulumi.Input[str] description: Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        :param pulumi.Input[str] email_from: email address to send notification from (default is root@$hostname).
        :param pulumi.Input[str] ha_shutdown_policy: Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        :param pulumi.Input[str] http_proxy: Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        :param pulumi.Input[str] keyboard: Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        :param pulumi.Input[str] language: Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        :param pulumi.Input[str] mac_prefix: Prefix for autogenerated MAC addresses.
        :param pulumi.Input[int] max_workers: Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        :param pulumi.Input[str] migration_cidr: Cluster wide migration network CIDR.
        :param pulumi.Input[str] migration_type: Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))

        __props__ = _OptionsState.__new__(_OptionsState)

        __props__.__dict__["bandwidth_limit_clone"] = bandwidth_limit_clone
        __props__.__dict__["bandwidth_limit_default"] = bandwidth_limit_default
        __props__.__dict__["bandwidth_limit_migration"] = bandwidth_limit_migration
        __props__.__dict__["bandwidth_limit_move"] = bandwidth_limit_move
        __props__.__dict__["bandwidth_limit_restore"] = bandwidth_limit_restore
        __props__.__dict__["console"] = console
        __props__.__dict__["crs_ha"] = crs_ha
        __props__.__dict__["crs_ha_rebalance_on_start"] = crs_ha_rebalance_on_start
        __props__.__dict__["description"] = description
        __props__.__dict__["email_from"] = email_from
        __props__.__dict__["ha_shutdown_policy"] = ha_shutdown_policy
        __props__.__dict__["http_proxy"] = http_proxy
        __props__.__dict__["keyboard"] = keyboard
        __props__.__dict__["language"] = language
        __props__.__dict__["mac_prefix"] = mac_prefix
        __props__.__dict__["max_workers"] = max_workers
        __props__.__dict__["migration_cidr"] = migration_cidr
        __props__.__dict__["migration_type"] = migration_type
        return Options(resource_name, opts=opts, __props__=__props__)

    @property
    @pulumi.getter(name="bandwidthLimitClone")
    def bandwidth_limit_clone(self) -> pulumi.Output[Optional[int]]:
        """
        Clone I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_clone")

    @property
    @pulumi.getter(name="bandwidthLimitDefault")
    def bandwidth_limit_default(self) -> pulumi.Output[Optional[int]]:
        """
        Default I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_default")

    @property
    @pulumi.getter(name="bandwidthLimitMigration")
    def bandwidth_limit_migration(self) -> pulumi.Output[Optional[int]]:
        """
        Migration I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_migration")

    @property
    @pulumi.getter(name="bandwidthLimitMove")
    def bandwidth_limit_move(self) -> pulumi.Output[Optional[int]]:
        """
        Move I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_move")

    @property
    @pulumi.getter(name="bandwidthLimitRestore")
    def bandwidth_limit_restore(self) -> pulumi.Output[Optional[int]]:
        """
        Restore I/O bandwidth limit in KiB/s.
        """
        return pulumi.get(self, "bandwidth_limit_restore")

    @property
    @pulumi.getter
    def console(self) -> pulumi.Output[Optional[str]]:
        """
        Select the default Console viewer. Must be `applet` | `vv`| `html5` | `xtermjs`. You can either use the builtin java applet (VNC; deprecated and maps to html5), an external virt-viewer compatible application (SPICE), an HTML5 based vnc viewer (noVNC), or an HTML5 based console client (xtermjs). If the selected viewer is not available (e.g. SPICE not activated for the VM), the fallback is noVNC.
        """
        return pulumi.get(self, "console")

    @property
    @pulumi.getter(name="crsHa")
    def crs_ha(self) -> pulumi.Output[str]:
        """
        Cluster resource scheduling setting for HA. Must be `static` | `basic` (default is `basic`).
        """
        return pulumi.get(self, "crs_ha")

    @property
    @pulumi.getter(name="crsHaRebalanceOnStart")
    def crs_ha_rebalance_on_start(self) -> pulumi.Output[Optional[bool]]:
        """
        Cluster resource scheduling setting for HA rebalance on start.
        """
        return pulumi.get(self, "crs_ha_rebalance_on_start")

    @property
    @pulumi.getter
    def description(self) -> pulumi.Output[Optional[str]]:
        """
        Datacenter description. Shown in the web-interface datacenter notes panel. This is saved as comment inside the configuration file.
        """
        return pulumi.get(self, "description")

    @property
    @pulumi.getter(name="emailFrom")
    def email_from(self) -> pulumi.Output[Optional[str]]:
        """
        email address to send notification from (default is root@$hostname).
        """
        return pulumi.get(self, "email_from")

    @property
    @pulumi.getter(name="haShutdownPolicy")
    def ha_shutdown_policy(self) -> pulumi.Output[Optional[str]]:
        """
        Cluster wide HA shutdown policy (). Must be `freeze` | `failover` | `migrate` | `conditional` (default is `conditional`).
        """
        return pulumi.get(self, "ha_shutdown_policy")

    @property
    @pulumi.getter(name="httpProxy")
    def http_proxy(self) -> pulumi.Output[Optional[str]]:
        """
        Specify external http proxy which is used for downloads (example: `http://username:password@host:port/`).
        """
        return pulumi.get(self, "http_proxy")

    @property
    @pulumi.getter
    def keyboard(self) -> pulumi.Output[Optional[str]]:
        """
        Default keyboard layout for vnc server. Must be `de` | `de-ch` | `da` | `en-gb` | `en-us` | `es` | `fi` | `fr` | `fr-be` | `fr-ca` | `fr-ch` | `hu` | `is` | `it` | `ja` | `lt` | `mk` | `nl` | `no` | `pl` | `pt` | `pt-br` | `sv` | `sl` | `tr`.
        """
        return pulumi.get(self, "keyboard")

    @property
    @pulumi.getter
    def language(self) -> pulumi.Output[Optional[str]]:
        """
        Default GUI language. Must be `ca` | `da` | `de` | `en` | `es` | `eu` | `fa` | `fr` | `he` | `it` | `ja` | `nb` | `nn` | `pl` | `pt_BR` | `ru` | `sl` | `sv` | `tr` | `zh_CN` | `zh_TW`.
        """
        return pulumi.get(self, "language")

    @property
    @pulumi.getter(name="macPrefix")
    def mac_prefix(self) -> pulumi.Output[str]:
        """
        Prefix for autogenerated MAC addresses.
        """
        return pulumi.get(self, "mac_prefix")

    @property
    @pulumi.getter(name="maxWorkers")
    def max_workers(self) -> pulumi.Output[Optional[int]]:
        """
        Defines how many workers (per node) are maximal started on actions like 'stopall VMs' or task from the ha-manager.
        """
        return pulumi.get(self, "max_workers")

    @property
    @pulumi.getter(name="migrationCidr")
    def migration_cidr(self) -> pulumi.Output[Optional[str]]:
        """
        Cluster wide migration network CIDR.
        """
        return pulumi.get(self, "migration_cidr")

    @property
    @pulumi.getter(name="migrationType")
    def migration_type(self) -> pulumi.Output[Optional[str]]:
        """
        Cluster wide migration type. Must be `secure` | `unsecure` (default is `secure`).
        """
        return pulumi.get(self, "migration_type")

