Class HostingOptions
Specifies the cloud or co-location/on-premise hosting settings.
Namespace: Neon.Kube.ClusterDef
Assembly: Neon.Kube.dll
Syntax
public class HostingOptions
Constructors
HostingOptions()
Default constructor.
Declaration
public HostingOptions()
Properties
Aws
Specifies the Amazon Web Services hosting settings.
Declaration
[JsonProperty(PropertyName = "Aws", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "aws", ApplyNamingConventions = false)]
public AwsHostingOptions Aws { get; set; }
Property Value
Type | Description |
---|---|
AwsHostingOptions |
Azure
Specifies the Microsoft Azure hosting settings.
Declaration
[JsonProperty(PropertyName = "Azure", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "azure", ApplyNamingConventions = false)]
public AzureHostingOptions Azure { get; set; }
Property Value
Type | Description |
---|---|
AzureHostingOptions |
BareMetal
Specifies the hosting settings when hosting directly on bare metal or virtual machines.
Declaration
[JsonProperty(PropertyName = "BareMetal", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "bareMetal", ApplyNamingConventions = false)]
public BareMetalHostingOptions BareMetal { get; set; }
Property Value
Type | Description |
---|---|
BareMetalHostingOptions |
Cloud
Specifies cloud related options for clusters to be deployed to one of the public cloud providers.
Declaration
[JsonProperty(PropertyName = "Cloud", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "cloud", ApplyNamingConventions = false)]
public CloudOptions Cloud { get; set; }
Property Value
Type | Description |
---|---|
CloudOptions |
Environment
Identifies the cloud or other hosting platform. This defaults to Unknown.
Declaration
[JsonProperty(PropertyName = "Environment", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "environment", ApplyNamingConventions = false)]
public HostingEnvironment Environment { get; set; }
Property Value
Type | Description |
---|---|
HostingEnvironment |
Specifies the Google Cloud Platform hosting settings.
Declaration
[JsonProperty(PropertyName = "Google", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "google", ApplyNamingConventions = false)]
public GoogleHostingOptions Google { get; set; }
Property Value
Type | Description |
---|---|
GoogleHostingOptions |
HyperV
Specifies the Hyper-V settings.
Declaration
[JsonProperty(PropertyName = "Hyperv", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "hyperv", ApplyNamingConventions = false)]
public HyperVHostingOptions HyperV { get; set; }
Property Value
Type | Description |
---|---|
HyperVHostingOptions |
Hypervisor
Specifies common hosting settings for on-premise hypervisor environments like Hyper-V and XenServer.
Declaration
[JsonProperty(PropertyName = "Hypervisor", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "hypervisor", ApplyNamingConventions = false)]
public HypervisorHostingOptions Hypervisor { get; set; }
Property Value
Type | Description |
---|---|
HypervisorHostingOptions |
IsCloudProvider
Returns true
if the cluster will be hosted by a cloud provider like AWS, Azure or Google.
Declaration
[JsonIgnore]
[YamlIgnore]
public bool IsCloudProvider { get; }
Property Value
Type | Description |
---|---|
bool |
IsHostedHypervisor
Returns true
if the cluster will be hosted on non-cloud hypervisors
like XenServer or Hyper-V.
Declaration
[JsonIgnore]
[YamlIgnore]
public bool IsHostedHypervisor { get; }
Property Value
Type | Description |
---|---|
bool |
IsOnPremiseProvider
Returns true
if the cluster will be hosted by an on-premise (non-cloud) provider.
Declaration
[JsonIgnore]
[YamlIgnore]
public bool IsOnPremiseProvider { get; }
Property Value
Type | Description |
---|---|
bool |
XenServer
Specifies the hosting settings when hosting on Citrix XenServer or the XCP-ng hypervisors.
Declaration
[JsonProperty(PropertyName = "XenServer", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "xenServer", ApplyNamingConventions = false)]
public XenServerHostingOptions XenServer { get; set; }
Property Value
Type | Description |
---|---|
XenServerHostingOptions |
Methods
ClearSecrets(ClusterDefinition)
Clears all hosting related secrets.
Declaration
public void ClearSecrets(ClusterDefinition clusterDefinition)
Parameters
Type | Name | Description |
---|---|---|
ClusterDefinition | clusterDefinition | The cluster definition. |
Validate(ClusterDefinition)
Validates the options and also ensures that all null
properties are
initialized to their default values.
Declaration
public void Validate(ClusterDefinition clusterDefinition)
Parameters
Type | Name | Description |
---|---|---|
ClusterDefinition | clusterDefinition | The cluster definition. |
Exceptions
Type | Condition |
---|---|
ClusterDefinitionException | Thrown if the definition is not valid. |