This repository has been archived by the owner on Jan 11, 2023. It is now read-only.
/
const.go
106 lines (93 loc) · 3.48 KB
/
const.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package vlabs
const (
// APIVersion is the version of this API
APIVersion = "vlabs"
)
// the orchestrators supported by vlabs
const (
// DCOS is the string constant for DCOS orchestrator type and defaults to DCOS188
DCOS string = "DCOS"
// Swarm is the string constant for the Swarm orchestrator type
Swarm string = "Swarm"
// Kubernetes is the string constant for the Kubernetes orchestrator type
Kubernetes string = "Kubernetes"
// SwarmMode is the string constant for the Swarm Mode orchestrator type
SwarmMode string = "SwarmMode"
// OpenShift is the string constant for the OpenShift orchestrator type
OpenShift string = "OpenShift"
)
// the OSTypes supported by vlabs
const (
Windows OSType = "Windows"
Linux OSType = "Linux"
)
// the LinuxDistros supported by vlabs
const (
Ubuntu Distro = "ubuntu"
RHEL Distro = "rhel"
CoreOS Distro = "coreos"
)
// validation values
const (
// MinAgentCount are the minimum number of agents per agent pool
MinAgentCount = 1
// MaxAgentCount are the maximum number of agents per agent pool
MaxAgentCount = 100
// MinPort specifies the minimum tcp port to open
MinPort = 1
// MaxPort specifies the maximum tcp port to open
MaxPort = 65535
// MaxDisks specifies the maximum attached disks to add to the cluster
MaxDisks = 4
// MinDiskSizeGB specifies the minimum attached disk size
MinDiskSizeGB = 1
// MaxDiskSizeGB specifies the maximum attached disk size
MaxDiskSizeGB = 1023
// MinIPAddressCount specifies the minimum number of IP addresses per network interface
MinIPAddressCount = 1
// MaxIPAddressCount specifies the maximum number of IP addresses per network interface
MaxIPAddressCount = 256
)
// Availability profiles
const (
// AvailabilitySet means that the vms are in an availability set
AvailabilitySet = "AvailabilitySet"
// VirtualMachineScaleSets means that the vms are in a virtual machine scaleset
VirtualMachineScaleSets = "VirtualMachineScaleSets"
)
// storage profiles
const (
// StorageAccount means that the nodes use raw storage accounts for their os and attached volumes
StorageAccount = "StorageAccount"
// ManagedDisks means that the nodes use managed disks for their os and attached volumes
ManagedDisks = "ManagedDisks"
)
var (
// NetworkPluginValues holds the valid values for network plugin implementation
NetworkPluginValues = [...]string{"", "kubenet", "azure", "cilium", "flannel"}
// NetworkPolicyValues holds the valid values for a network policy
// "azure" and "none" are there for backwards-compatibility
NetworkPolicyValues = [...]string{"", "calico", "cilium", "azure", "none"}
// ContainerRuntimeValues holds the valid values for container runtimes
ContainerRuntimeValues = [...]string{"", "docker", "clear-containers", "containerd"}
)
// Kubernetes configuration
const (
// KubernetesMinMaxPods is the minimum valid value for MaxPods, necessary for running kube-system pods
KubernetesMinMaxPods = 5
)
// vlabs default configuration
const (
// DefaultNetworkPlugin defines the network plugin to use by default
DefaultNetworkPlugin = "azure"
// DefaultNetworkPluginWindows defines the network plugin to use by default for clusters with Windows agent pools
DefaultNetworkPluginWindows = "azure"
// DefaultNetworkPolicy defines the network policy to use by default
DefaultNetworkPolicy = ""
)
const (
// AgentPoolProfileRoleEmpty is the empty role
AgentPoolProfileRoleEmpty AgentPoolProfileRole = ""
// AgentPoolProfileRoleInfra is the infra role
AgentPoolProfileRoleInfra AgentPoolProfileRole = "infra"
)