networking.appvia.io/v2beta1
Package v2beta1 contains API Schema definitions for the networking v2beta1 API group
Exported Resource Types
AssignableNetwork
AssignableNetwork is the definition for an assignable network range
Field | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
apiVersion | networking.appvia.io/v2beta1 | ||||||||
kind | AssignableNetwork | ||||||||
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||
spec AssignableNetworkSpec |
| ||||||||
status AssignableNetworkStatus |
|
ClusterNetwork
ClusterNetwork is the schema for ClusterNetwork
Field | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion | networking.appvia.io/v2beta1 | ||||||||||||||||||||||||||
kind | ClusterNetwork | ||||||||||||||||||||||||||
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||||||||||||||||||||
spec ClusterNetworkSpec |
| ||||||||||||||||||||||||||
status ClusterNetworkStatus |
|
ClusterNetworkPlan
ClusterNetworkPlan is the Schema for the cluster plans API
Field | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
apiVersion | networking.appvia.io/v2beta1 | ||||||||
kind | ClusterNetworkPlan | ||||||||
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||
spec ClusterNetworkPlanSpec |
| ||||||||
status ClusterNetworkPlanStatus |
|
FirewallRules
Field | Description | ||||
---|---|---|---|---|---|
apiVersion | networking.appvia.io/v2beta1 | ||||
kind | FirewallRules | ||||
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||
spec FirewallSpec |
| ||||
status FirewallStatus |
Peering
Peering is tracking resource which is used to create a connection between the source network and an external network
Field | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
apiVersion | networking.appvia.io/v2beta1 | ||||||||
kind | Peering | ||||||||
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||
spec PeeringSpec |
| ||||||||
status PeeringStatus |
|
PeeringRule
PeeringRule providing a policy definition for peering
Field | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
apiVersion | networking.appvia.io/v2beta1 | ||||||||
kind | PeeringRule | ||||||||
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||
spec PeeringRuleSpec |
| ||||||||
status PeeringRuleStatus |
|
Internal Resource Types
- AssignableNetworkRange
- AssignableNetworkSpec
- AssignableNetworkStatus
- AssignableNetworkType
- AzureRoute
- AzureServiceEndpoint
- ClusterNetworkCapacities
- ClusterNetworkCapacity
- ClusterNetworkDetail
- ClusterNetworkDetailSubnet
- ClusterNetworkDetailSubnetAWS
- ClusterNetworkDetailSubnetTypes
- ClusterNetworkDetailsAWS
- ClusterNetworkDetailsAzure
- ClusterNetworkDetailsGCP
- ClusterNetworkGateway
- ClusterNetworkGatewayAssociation
- ClusterNetworkGatewayIPV4
- ClusterNetworkGatewayIPV4Mode
- ClusterNetworkGatewayNATOptions
- ClusterNetworkIPv4
- ClusterNetworkLayout
- ClusterNetworkLayoutMode
- ClusterNetworkPlanClusters
- ClusterNetworkPlanSpec
- ClusterNetworkPlanStatus
- ClusterNetworkPrivateOptions
- ClusterNetworkProviderType
- ClusterNetworkRoute
- ClusterNetworkRouteTarget
- ClusterNetworkSpec
- ClusterNetworkStatus
- ClusterNetworkStatusAWS
- ClusterNetworkStatusAzure
- ClusterNetworkStatusGCP
- ClusterNetworkStatusGCPGateway
- ClusterNetworkSubnet
- ClusterNetworkSubnetIPv4
- ClusterNetworkSubnetType
- ExternalNetworkPeer
- FirewallRule
- FirewallSpec
- FirewallStatus
- GCPSecondarySubnetIPRanges
- GCPSubnetDefaultSubnetName
- IPv4CIDR
- IPv4CIDRBlock
- IPv4CIDRBlocks
- IPv4CIDRs
- NetworkFabric
- NetworkFabricPlan
- PeeringGatewayProviderDetails
- PeeringGatewayProviderDetailsAWS
- PeeringProviderDetails
- PeeringProviderDetailsAzure
- PeeringRuleConnection
- PeeringRuleConnectionType
- PeeringRuleDirect
- PeeringRuleFilters
- PeeringRuleGateway
- PeeringRuleSpec
- PeeringRuleStatus
- PeeringSpec
- PeeringStatus
- PeeringSubnetFilter
- PlanProviderDetails
- PlanProviderDetailsAWS
- Port
- ProviderDetails
- ProviderDetailsAWS
- ProviderDetailsAzure
- ProviderDetailsGCP
- ProviderDetailsSubnetIPv4
- ProviderDetailsSubnetIPv4GCP
AssignableNetworkRange
(Appears on: AssignableNetworkSpec)
AssignableNetworkRange defines a assignable network range
Field | Description |
---|---|
range string | Range is the CIDR range of the network |
type AssignableNetworkType | Type is the network type being defined - i.e. pods, clusters, services or node |
AssignableNetworkSpec
(Appears on: AssignableNetwork)
AssignableNetworkSpec define the definitions for network ranges
Field | Description |
---|---|
provider string | Providers the provider the range is assigned |
stages []string | Stages is deprecated, please use stage instead |
stage string | Stage is the stage this network is assignable to. |
networks []AssignableNetworkRange | Networks is a collection of network assignment for a particular provider |
AssignableNetworkStatus
(Appears on: AssignableNetwork)
AssignableNetworkStatus defines the observed state of status on a policy
Field | Description |
---|---|
CommonStatus CommonStatus | (Members of CommonStatus are embedded into this type.) |
AssignableNetworkType
(string
alias)
(Appears on: AssignableNetworkRange, IPv4CIDRBlock)
AssignableNetworkType represents the network type of an assignable network
Value | Description |
---|---|
"node" | NodeNetwork defines node network - the range provided to the pools |
"pod" | PodsNetwork defines the range for pods |
"service" | ServicesNetwork defines the service / cluster range |
AzureRoute
(Appears on: ClusterNetworkRouteTarget)
Field | Description |
---|---|
nextHopType github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork.RouteNextHopType | NextHopType is the type of Azure networking device that the next hop should target (VirtualAppliance or VirtualNetworkGateway) |
nextHopIP string | NextHopIP is the IP address of the next network hop for addresses in the target range |
AzureServiceEndpoint
(string
alias)
(Appears on: ProviderDetailsAzure)
ClusterNetworkCapacities
([]github.com/appvia/wayfinder/tmpcrdref/pkg/apis/networking/v2beta1.ClusterNetworkCapacity
alias)
(Appears on: ClusterNetworkStatus, ClusterNetworkStatus, ClusterNetworkPlanStatus)
ClusterNetworkCapacity
Field | Description |
---|---|
stage string | Stage is the stage where there is capacity |
hasCapacity bool | HasCapacity is true if there is capacity |
details string | Details will contain details about the capacity if there is no capacity, will include details about why |
ClusterNetworkDetail
(Appears on: ClusterNetworkStatus, ClusterNetworkStatus, ClusterNetworkPlanStatus)
Field | Description |
---|---|
awsVPC ClusterNetworkDetailsAWS | AWSVPC describes the next AWS VPC that would be created from this plan |
azureVirtualNetwork ClusterNetworkDetailsAzure | AzureVirtualNetwork describes the next Azure Virtual Network that would be created from this plan |
gcpVPC ClusterNetworkDetailsGCP | GCPVPC describes the next GCP VPC that would be created from this plan |
ClusterNetworkDetailSubnet
(Appears on: ClusterNetworkDetailSubnetAWS, ClusterNetworkDetailsAzure, ClusterNetworkDetailsGCP)
Field | Description |
---|---|
type ClusterNetworkDetailSubnetTypes | Type is what the cidr block is used for |
cidr IPv4CIDR | CIDR is the cidr range in the A.B.C.D/N format |
ClusterNetworkDetailSubnetAWS
(Appears on: ClusterNetworkDetailsAWS)
Field | Description |
---|---|
ClusterNetworkDetailSubnet ClusterNetworkDetailSubnet | (Members of ClusterNetworkDetailSubnet are embedded into this type.) |
availabilityZone string | AvailabilityZone is an AWS availability zone. - In an example it is just a number but in reality it will be the actual ID |
natGateway bool | NATGateway indicates whether a NAT gateway would be created for this subnet |
ClusterNetworkDetailSubnetTypes
(string
alias)
(Appears on: ClusterNetworkDetailSubnet)
ClusterNetworkDetailSubnetTypes defines how the subnet maps to a provider It describes the subnet and what other fields are required
Value | Description |
---|---|
"EKSPrivate" | DetailSubnetTypeAWSEKSPrivate is the type of subnet used for EKS private subnets |
"EKSPublic" | DetailSubnetTypeAWSEKSPublic is the type of subnet used for EKS public subnets |
"AKSInternalService" | DetailSubnetTypeAzureAKSInternalService represents a subnet that will be used by AKS services It would NOT be built but instead it is a logical, non-routeable network that AKS will create DEPRECATED: This will be removed in a later release (v2.6) |
"SubnetNode" | DetailSubnetTypeAzureSubnetNode represents an Azure subnet (e.g. for nodes) It would be built as an Azure subnet within a Virtual Network |
"SecondarySubnetGKEPod" | DetailSubnetTypeGCPSecondarySubnetGKEPod represents a subnet that will be used by GKE Pods It would be built as a GCP secondary subnet within a GCP VPC |
"SecondarySubnetGKEService" | DetailSubnetTypeGCPSecondarySubnetGKEService represents a subnet that will be used by GKE services It would be built as a GCP secondary subnet within a GCP VPC |
ClusterNetworkDetailsAWS
(Appears on: ClusterNetworkDetail)
ClusterNetworkDetailsAWS describes what can be known about a cluster Network on AWS before creation. This represents a suitable VPC as required for a cluster
Field | Description |
---|---|
cidr IPv4CIDR | CIDR is the cidr range in the A.B.C.D/N format |
subnets []ClusterNetworkDetailSubnetAWS | Subnets are the list of subnets that would be used by EKS |
ClusterNetworkDetailsAzure
(Appears on: ClusterNetworkDetail)
ClusterNetworkDetailsAzure describes what can be known about a cluster Network on Azure before creation This represents a suitable VPC as required for a cluster
Field | Description |
---|---|
cidr IPv4CIDR | CIDR is the cidr range in the A.B.C.D/N format |
subnets []ClusterNetworkDetailSubnet | Subnets are the list of subnets that would be used by AKS Only one subnet specified: - one of type azureSubnetNode, created as an Azure subnet and used by the nodes |
ClusterNetworkDetailsGCP
(Appears on: ClusterNetworkDetail)
ClusterNetworkDetailsGCP describes what can be known about a cluster Network on GCP before creation This represents a GCP VPC as required for a GKE cluster
Field | Description |
---|---|
cidr IPv4CIDR | CIDR is the cidr range in the A.B.C.D/N format |
subnets []ClusterNetworkDetailSubnet | Subnets are the list of subnets that would be used by GKE Only two subnets are specified: - one of type gcpSubnetSecondaryService, created as a GCP secondary subnet in the GCP VPC - one of type gcpSubnetSecondaryPod, created as a GCP secondary subnet in the GCP VPC |
ClusterNetworkGateway
(Appears on: ClusterNetworkPrivateOptions)
ClusterNetworkGateway are cloud agnostic settings for nat gateway
Field | Description |
---|---|
associate ClusterNetworkGatewayAssociation | Associate is the location of the gateway |
ipv4 ClusterNetworkGatewayIPV4 | IPv4 defines the ip allocation options of the gateway |
nat ClusterNetworkGatewayNATOptions | NAT provides cloud agnostic settings for the NAT gateway itself |
ClusterNetworkGatewayAssociation
(Appears on: ClusterNetworkGateway)
ClusterNetworkGatewayAssociation is used to define where the gateway should reside
Field | Description |
---|---|
subnet string | Subnet is reference to the subnet the gateway should reside. Note the subnet must be defined in the subnets sections below. Note, GCP does not require this settings, CloudNAT is associated to a network |
location string | Location defines the regional the gateway should reside in. This is only required for GCP where cloud gateways are regional rather than designated to an availability zone |
ClusterNetworkGatewayIPV4
(Appears on: ClusterNetworkGateway)
ClusterNetworkGatewayIPV4 are the options related to ipv4 settings on a nat gateway
Field | Description |
---|---|
mode ClusterNetworkGatewayIPV4Mode | Mode defines the mode of how to allocate external address or address pools to the NAT gateway |
addresses []string | Addresses provides a collection of external addresses which should be associated to the nat gateway, assuming the mode is static. In AWS is the an EIP which has been allocated in the correct region and account. In GCP you can define multiple external addresses which the CloudNAT will manage |
ClusterNetworkGatewayIPV4Mode
(string
alias)
(Appears on: ClusterNetworkGatewayIPV4)
ClusterNetworkGatewayIPV4Mode defines the mode for ipv4 allocation on the gateway
ClusterNetworkGatewayNATOptions
(Appears on: ClusterNetworkGateway)
ClusterNetworkGatewayNATOptions provides the ability to configure cloud agnostic settings on the gateway
Field | Description |
---|---|
subnets []string | Subnet defines the subnets which should be associated and natted through the nat gateway. These must be defined in the subnets section within the cluster network spec. |
ClusterNetworkIPv4
(Appears on: ClusterNetworkSpec)
ClusterNetworkIPv4 is a collection of network ipv4 ranges
Field | Description |
---|---|
cidrBlocks IPv4CIDRBlocks | CIDRBlocks is a list of CIDR blocks that are associated with the network. Includes useCase so a provider or client can decide what they are used for currently only supported use cases are: - “cluster” - “pods” - “services” [AWS] Multiple IP ranges. AWS only supports a single IP range is supported on creation, but can be updated afterwards to specify additional IP ranges. [GCP] Used as metadata for cluster creation. [Azure] Multiple IP ranges. |
ClusterNetworkLayout
(Appears on: ClusterNetworkSpec)
ClusterNetworkLayout defines the options for wayfinder prescribed network topology
Field | Description |
---|---|
mode ClusterNetworkLayoutMode | Mode dictates whether the layout of the network should be set up manually or automatically. If automatic, no other fields should be specified. If manual, fields should be specified manually by the caller. Currently, only “auto” is supported. In future, “manual” will be implemented as required. |
privateSubnets int | PrivateSubnets is the number of private subnets that should be generated in the network. Mode must be set to “auto” for this field to be valid. |
publicSubnets int | PublicSubnets is the number of public subnets that should be generated in the network. Mode must be set to “auto” for this field to be valid. |
ClusterNetworkLayoutMode
(string
alias)
(Appears on: ClusterNetworkLayout)
ClusterNetworkLayoutMode represents the cluster network layout mode
Value | Description |
---|---|
"auto" | ClusterNetworkLayoutModeAuto is for cluster network layout mode auto |
"manual" | ClusterNetworkLayoutModeManual is for cluster network layout mode manual |
ClusterNetworkPlanClusters
(Appears on: ClusterNetworkPlanStatus)
Field | Description |
---|---|
name string | Name is the name of a cluster |
workspace WorkspaceKey | Workspace is the cluster’s workspace |
ClusterNetworkPlanSpec
(Appears on: ClusterNetworkPlan, NetworkFabricPlan)
ClusterNetworkPlanSpec defines the desired state of Plan
Field | Description |
---|---|
summary string | Summary provides a short title summary for the network plan It should describe a network in terms that are meaningful for developers: e.g. highest availability network expensive but resilient |
planProviderDetails PlanProviderDetails | PlanProviderDetails defines the parameters for cloud specific options specifically for a plan |
assignableNetworks []string | AssignableNetworks provides a list of AssignableNetworks. The plan will use these dynamic IP ranges when this is set. Do not specify any .template.ipv4.cidrBlocks[].cidr fields if this is specified. The size of the network(s) required are taken from .template.ipv4.cidrBlocks[].size. |
template ClusterNetworkSpec | Template are the key+value pairs describing a network configuration |
ClusterNetworkPlanStatus
(Appears on: ClusterNetworkPlan, NetworkFabricPlan)
ClusterNetworkPlanStatus defines the observed state of Plan
Field | Description |
---|---|
CommonStatus CommonStatus | (Members of CommonStatus are embedded into this type.) |
exampleNetwork ClusterNetworkDetail | ExampleNetwork describes a cluster network that will be created from this plan |
capacity ClusterNetworkCapacities | Capacity describes the capacity to build a network from this plan |
clusters []ClusterNetworkPlanClusters | Clusters describes which clusters are currently using the plan |
ClusterNetworkPrivateOptions
(Appears on: ClusterNetworkSpec)
ClusterNetworkPrivateOptions are options related to private networking
Field | Description |
---|---|
enabled bool | Enabled indicates we are expecting the predefined network layout to generate a private network. |
gateways []ClusterNetworkGateway | Gateways provides the options around cloud NAT gateways |
ClusterNetworkProviderType
(string
alias)
(Appears on: ProviderDetails)
ClusterNetworkProviderType represents the concrete type of a cluster network provider
Value | Description |
---|---|
"aws" | ClusterNetworkProviderTypeAWS is for AWS network provider |
"azure" | ClusterNetworkProviderTypeAzure is for Azure network provider |
"gcp" | ClusterNetworkProviderTypeGCP is for GCP network provider |
ClusterNetworkRoute
(Appears on: ClusterNetworkSpec)
ClusterNetworkRoute is a cloud agnostic definition for a route
Field | Description |
---|---|
name string | Name is the name of the route. |
description string | Description is an optional description of the route. |
cidrBlock IPv4CIDR | CIDRBlock represents the range of destination IP addresses that this route applies to. |
target ClusterNetworkRouteTarget | Target is the destination that the traffic bound for IP addresses within CIDRBlock range will be sent to. This target may be a gateway, network interface, or connection through which to send the destination traffic; for example, an internet gateway. |
ClusterNetworkRouteTarget
(Appears on: ClusterNetworkRoute)
ClusterNetworkRouteTarget contains the information necessary to determine the destination that network traffic should be sent to.
Field | Description |
---|---|
azure AzureRoute |
ClusterNetworkSpec
(Appears on: ClusterNetwork, ClusterNetworkPlanSpec, NetworkFabric)
ClusterNetworkSpec defines the desired state of a network
Field | Description |
---|---|
layout ClusterNetworkLayout | Layout refers to the layout of the network. It controls whether the various parts - subnets, routes, etc. - are set up manually (i.e. specified in the spec) or automatically (i.e. generated by the provider). |
cloudAccessConfigRef CloudAccessConfigReference | CloudAccessConfigRef is a reference to the cloud access configuration that should be used to create the network. |
ipv4 ClusterNetworkIPv4 | IPv4 contains the IPv4 configuration associated with the network. |
location string | Location is the region the network should be created in. [AWS] Region [GCP] The Default location for subnets (as GCP actual networks are global) [Azure] Region Required if this is used for a ClusterNetwork, optional on a ClusterNetworkPlan |
cloudResourceName string | CloudResourceName is used to identify the network object in the cloud provider [AWS] Names are not supported, so is a “Name” tag on the VPC [GCP] Name of the Network [Azure] Name of the Virtual Network (VNet) |
plan string | Plan refers to a “flavour” of network that donates the policy. For example, when |
provider string | Provider refers to the cloud provider. |
providerDetails ProviderDetails | ProviderDetails defines cloud-specific network options |
private ClusterNetworkPrivateOptions | Private are options related to private networking |
routes []ClusterNetworkRoute | Routes is the list of routes within the network. Mode must be set to “manual” for this field to be valid. if manual, will be populated from the spec.IPv4.CIDRBlock’s |
stage string | Stage is the name of the stage for the network. Required when used in a cluster network, optional when used in a cluster network plan. |
subnets []ClusterNetworkSubnet | Subnets is the list of subnets within the network. Mode must be set to “manual” for this field to be valid. |
tags map[string]string | Tags is a collection of tags to apply to the resources associated with the network, if applicable. |
ClusterNetworkStatus
(Appears on: ClusterNetwork, ClusterStatus, ClusterStatus, NetworkFabric)
ClusterNetworkStatus defines the observed state of a network
Field | Description |
---|---|
CommonStatus CommonStatus | (Members of CommonStatus are embedded into this type.) |
aws ClusterNetworkStatusAWS | AWS contains the AWS-specific state for the network |
azure ClusterNetworkStatusAzure | Azure contains the Azure-specific state for the network |
gcp ClusterNetworkStatusGCP | GCP contains the GCP-specific state for the network |
ClusterNetworkStatusAWS
(Appears on: ClusterNetworkStatus)
ClusterNetworkStatusAWS contains the AWS-specific attributes of the status block.
Field | Description |
---|---|
accountID string | AccoundID is the aws account id |
availabilityZoneIDs []string | AvailabilityZoneIDs is the list of AZ ids |
availabilityZoneNames []string | AvailabilityZoneIDs is the list of AZ names |
privateIPV4Addresses []string | PrivateIPV4Addresses provides the list of private subnet addresses |
privateSubnetIDs []string | PrivateSubnetIDs is a list of subnet IDs to use for the worker nodes |
publicIPV4Addresses []string | PublicIPV4Addresses provides the list of public subnet addresses |
ipv4EgressAddresses []string | PublicIPV4EgressAddresses provides the source addresses for traffic coming from the cluster |
publicSubnetIDs []string | PublicSubnetIDs is a list of subnet IDs to use for resources that need a public IP (e.g. load balancers) |
securityGroupIDs []string | SecurityGroupIDs is a list of security group IDs to use for a cluster |
vpcID string | VpcID is the identifier of the VPC |
ClusterNetworkStatusAzure
(Appears on: ClusterNetworkStatus)
ClusterNetworkStatusAzure contains the Azure-specific attributes of the status block.
Field | Description |
---|---|
virtualNetworkID string | VirtualNetworkID is the identifier of the Virtual Network |
subnetIDs []string | SubnetIDs are the list of subnet IDs in the Virtual Network |
ClusterNetworkStatusGCP
(Appears on: ClusterNetworkStatus)
ClusterNetworkStatusGCP contains the GCP-specific attributes of the status block.
Field | Description |
---|---|
name string | Name is the name of the network in GCP |
networkRef string | NetworkRef is the cloud provider reference |
gateways []ClusterNetworkStatusGCPGateway | Gateways provides a status on the gateways and any external addresses |
ClusterNetworkStatusGCPGateway
(Appears on: ClusterNetworkStatusGCP)
ClusterNetworkStatusGCPGateway defines the status on the gateway
Field | Description |
---|---|
name string | Name is name of the gateway |
location string | Location is location of where it resides |
addresses []string | Addresses is the external IP or self links references associated to the gateway |
ClusterNetworkSubnet
(Appears on: ClusterNetworkSpec)
ClusterNetworkSubnet defines the options for a virtual subnet
Field | Description |
---|---|
name string | Name is the name of the subnet. |
description string | Description is an optional description of the subnet. |
location string | Location is the zone or region associated with the subnet. [AWS] Zone [GCP] Region [Azure] Region (same as the Virtual Network) |
ipv4 ClusterNetworkSubnetIPv4 | IPv4 is the Internet Protocol (version 4) configuration for the subnet. |
ClusterNetworkSubnetIPv4
(Appears on: ClusterNetworkSubnet)
ClusterNetworkSubnetIPv4 defines the options for the subnet range
Field | Description |
---|---|
cidrBlock IPv4CIDR | CIDRBlock is the IP address range for the subnet. |
ipVersion uint16 | IPVersion is the Internet Protocol version of the subnet. |
type ClusterNetworkSubnetType | Type determines whether VMs launched into this subnet should have public or private IP address. If |
providerDetails ProviderDetailsSubnetIPv4 | ProviderDetails is is the cloud specific configuration for the subnet. |
ClusterNetworkSubnetType
(string
alias)
(Appears on: ClusterNetworkSubnetIPv4)
ClusterNetworkSubnetType represents the cluster network subnet type
Value | Description |
---|---|
"private" | ClusterNetworkSubnetTypePrivate is for network subnet type private |
"public" | ClusterNetworkSubnetTypePublic is for network subnet type public |
ExternalNetworkPeer
(Appears on: PeeringRuleDirect)
ExternalNetworkPeer defines the definition when attached to the network to an external network
Field | Description |
---|---|
account string | Account is a cloud agnostic name of the account, subscription or project where the network we are peering to exists |
location string | Location is the region where the network exists. For AWS this might be eu-west-2, for GCP europe-west2 and so forth |
identifier string | Identifier is the full resource identity of the virtual network which we are peering to. This AWS and GCP this would be the virtual network name. For Azure this would be the resource group plus the virtual network name. |
routes IPv4CIDRs | Routes is a collection of network ranges which we want to expose to the peered networks. The route tables of the source networks are automatically amended to push these subnets down the peered connection |
routeTableSelectors map[string]string | RouteTableSelectors is required when enableAutoApproval is enabled. The field provides a collection of cloud tags which is used to filter on which routing tables in the external network need updating to include the source network routes. Note, this field is not required for GCP or Azure as the route propagation is performed automatically for you. |
FirewallRule
(Appears on: FirewallSpec)
FirewallRule represents the various options associated with a firewall rule. Depending on the cloud, a single FirewallRule might be expanded to multiple individual firewall rules.
Field | Description |
---|---|
name string | Name is the name of the firewall rule. |
description string | Description is an optional description of the firewall rule. |
action string | Action dictates whether to allow or deny matching traffic. |
cidrBlocks []IPv4CIDR | CIDRBlocks is the list of IP address ranges that this rule applies to. |
direction string | Direction dictates whether this rule applies to inbound or outbound traffic. |
ipVersion uint16 | IPVersion is the version of the Internet Protocol for the firewall rule. |
protocols []string | Ports is a list of protocols that this firewall rule applies to. |
ports []Port | Ports is a list of port numbers that this firewall rule applies to. If omitted, the rule applies to all ports. |
priority uint16 | Priority dictates the precedences of the firewall rule. Lower values indicate higher priorities. |
FirewallSpec
(Appears on: FirewallRules)
FirewallSpec defines the desired state of a firewall
Field | Description |
---|---|
networkRef Ownership | NetworkRef is a reference to the network associated with the firewall. |
rules []FirewallRule | Rules is a list of firewall rules. |
FirewallStatus
(Appears on: FirewallRules)
FirewallStatus defines the observed state of a firewall
GCPSecondarySubnetIPRanges
(Appears on: ProviderDetailsSubnetIPv4GCP)
GCPSecondarySubnetIPRanges represents the secondary subnet ranges for GCP when running in private cluster mode
Field | Description |
---|---|
cidrBlock IPv4CIDR | CIDRBlock is the IP address range for the subnet. |
type GCPSubnetDefaultSubnetName | Type determines what type of secondary range ip address this is. |
GCPSubnetDefaultSubnetName
(string
alias)
(Appears on: GCPSecondarySubnetIPRanges)
GCPSubnetDefaultSubnetName represents the default subnets names for GKE private clusters
Value | Description |
---|---|
"pods" | GCPSubnetDefaultSubnetNamePods represents the default subnet name for GCP pods networks |
"services" | GCPSubnetDefaultSubnetNameServices represents the default subnet name for GCP services networks |
IPv4CIDR
(string
alias)
(Appears on: ClusterNetworkDetailSubnet, ClusterNetworkDetailsAWS, ClusterNetworkDetailsAzure, ClusterNetworkDetailsGCP, ClusterNetworkRoute, ClusterNetworkSubnetIPv4, FirewallRule, GCPSecondarySubnetIPRanges, IPv4CIDRBlock)
IPv4CIDR represents an IP range in the A.B.C.D/N format
IPv4CIDRBlock
CidrBlock represents an IPv4Cidr block and its use case
Field | Description |
---|---|
type AssignableNetworkType | Type is what the cidr block is used for |
cidr IPv4CIDR | CIDR is the cidr range in the A.B.C.D/N format |
size int | Size is the size of the CIDR range to be allocated if not specified |
IPv4CIDRBlocks
([]github.com/appvia/wayfinder/tmpcrdref/pkg/apis/networking/v2beta1.IPv4CIDRBlock
alias)
(Appears on: ClusterNetworkIPv4)
IPv4CIDRBlocks is a list of IPv4 addresses with a type
IPv4CIDRs
([]github.com/appvia/wayfinder/tmpcrdref/pkg/apis/networking/v2beta1.IPv4CIDR
alias)
(Appears on: ExternalNetworkPeer, PeeringRuleGateway)
IPv4CIDRs is a list of IPv4 addresses
NetworkFabric
NetworkFabric is deprecated, use ClusterNetwork instead
Field | Description | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||||||||||||||||||||
spec ClusterNetworkSpec |
| ||||||||||||||||||||||||||
status ClusterNetworkStatus |
|
NetworkFabricPlan
NetworkFabricPlan is deprecated use ClusterNetworkPlan instead
Field | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
metadata Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the metadata field. | ||||||||
spec ClusterNetworkPlanSpec |
| ||||||||
status ClusterNetworkPlanStatus |
|
PeeringGatewayProviderDetails
(Appears on: PeeringRuleGateway)
PeeringGatewayProviderDetails provides a means configure cloud specific options around gateway attachments
Field | Description |
---|---|
aws PeeringGatewayProviderDetailsAWS | AWS defines the cloud specifics for gateway options |
PeeringGatewayProviderDetailsAWS
(Appears on: PeeringGatewayProviderDetails)
PeeringGatewayProviderDetailsAWS are cloud specific options for AWS
Field | Description |
---|---|
enableDNS bool | EnableDNS indicates we should enable or disable dns support via the gateway. Note this defaults to true unless defined. |
transitAssociations string | TransitAssociations is an optional transit gateway routing table which attachments provisioned by this rule should be associated with. |
transitPropagations []string | TransitPropagations is a collection of transit gateway route tables which this attachment should be propagated into. Note, for this feature to work, the cloudaccessconfig MUST be enabled, permissions associated and the enableAutoApproval must be set to true. The map here contains the tags which are used to filter the transit gateway route table/s within the account the cloudaccessconfig is associated with. |
PeeringProviderDetails
(Appears on: PeeringRuleDirect)
PeeringProviderDetails provides a means configure cloud specific options around gateway attachments
Field | Description |
---|---|
azure PeeringProviderDetailsAzure | Azure defines the cloud specifics for gateway options |
PeeringProviderDetailsAzure
(Appears on: PeeringProviderDetails)
PeeringProviderDetailsAzure are cloud specific options for Azure
Field | Description |
---|---|
enableUseRemoteGateway bool | EnableUseRemoteGateway indicates if cluster peering should use remote gateway. If set to true, local gateway will not be deployed and remote one configured to be used |
PeeringRuleConnection
(Appears on: PeeringRuleSpec, PeeringSpec)
PeeringRuleConnection provides the definitions for the connection details related to peering
Field | Description |
---|---|
type PeeringRuleConnectionType | Type is the type of peering we are configuring |
gateway PeeringRuleGateway | Gateway provides the configuration for working with gateways and peering connections via a network backbone such as Transit Gateway. |
peering PeeringRuleDirect | Peering provides the configuration for direct peering between two networks. By default the peering assumes the management network, though this can be overridden if required |
PeeringRuleConnectionType
(string
alias)
(Appears on: PeeringRuleConnection)
PeeringRuleConnectionType represents the concrete type for configuration
PeeringRuleDirect
(Appears on: PeeringRuleConnection)
PeeringRuleDirect defines the options around direct peering
Field | Description |
---|---|
enableAutoApproval bool | EnableAutoApproval indicates we should always accept the peering connection on the other end of the peer. This requires the user provides a cloud access config which the correct permissions to do so. |
network ExternalNetworkPeer | Network sets the network which the peering is created on. |
subnets PeeringSubnetFilter | Subnets provides a means to filter which on the subnets you want to push down the peering. By default we assume all the subnets attached to the virtual network should be routed down the peer |
providerDetails PeeringProviderDetails | ProviderDetails provides the cloud specific options when performing a gateway attachment |
PeeringRuleFilters
(Appears on: PeeringRuleSpec)
PeeringRuleFilters is used to filter down whom the policy should apply
Field | Description |
---|---|
allocation ResourceAllocation | Allocation offers the ability to filter the peering policy down to a collection of workspaces only |
selectors Kubernetes meta/v1.LabelSelector | Selectors offers the option to filter down which networks the peering policy is applied based on the labels on the cluster network resource. |
PeeringRuleGateway
(Appears on: PeeringRuleConnection)
PeeringRuleGateway defines the options for gateway attachments and peering.
Field | Description |
---|---|
identifier string | Identifier is the cloud specific identifier for the gateway - this could be a transit gateway id in AWS. |
enableAutoApproval bool | EnableAutoApproval indicates we should always accept the peering connection on the other end of the peer. This requires the user provides a cloud access config which the correct permissions to do so. |
location string | Location is the cloud region which where the transit gateway resides |
routes IPv4CIDRs | Routes is a collection of cidr blocks which we need to push down the transit gateway. |
routeTableSelectors map[string]string | RouteTableSelectors is required when enableAutoApproval is enabled. The field provides a collection of cloud tags which is used to filter on transit gateway route table the attachment should be propagated into. Note, this performs an a propagation only. Transit gateway associations must be handled outside of |
providerDetails PeeringGatewayProviderDetails | ProviderDetails provides the cloud specific options when performing a gateway attachment |
PeeringRuleSpec
(Appears on: PeeringRule)
PeeringRuleSpec provides the definition for a peering rule. These are matched against one of more ClusterNetwork CRD and used to provision a Peer CRD which is used to connect up networks
Field | Description |
---|---|
cloudAccessConfigRef CloudAccessConfigReference | CloudAccessConfigRef provides an optional reference to a cloudaccount which has the permission to carry out the tasks required to fulfil peering or gateway attachments |
connection PeeringRuleConnection | Connection provides the policy details around how the peering should be achieved |
filters PeeringRuleFilters | Filters provides the ability to apply a collection of filters to whom the peering policy should apply to |
provider string | Provider refers to the cloud provider. |
PeeringRuleStatus
(Appears on: PeeringRule)
PeeringRuleStatus defines the observed state of a peering setup
Field | Description |
---|---|
CommonStatus CommonStatus | (Members of CommonStatus are embedded into this type.) |
connectionID string | ConnectionID is the ID of the peering or gateway attachment which has been created |
PeeringSpec
(Appears on: Peering)
PeeringSpec defines the definition for the peering connection resource
Field | Description |
---|---|
cloudAccessConfigRef CloudAccessConfigReference | CloudAccessConfigRef provides an optional reference to a cloud access config which details the permission to carry out the tasks required to fulfil peering or gateway attachments |
connection PeeringRuleConnection | Connection provides the policy details around how the peering should be achieved |
networkRef Ownership | NetworkRef is the network which we are creating a connection from |
provider string | Provider refers to the cloud provider. |
PeeringStatus
(Appears on: Peering)
PeeringStatus defines the observed state of a peering setup
Field | Description |
---|---|
CommonStatus CommonStatus | (Members of CommonStatus are embedded into this type.) |
peeringID string | PeeringID is the cloud agnostic peering identifier |
PeeringSubnetFilter
(map[string]string
alias)
(Appears on: PeeringRuleDirect)
PeeringSubnetFilter provides a means to filter down which subnets in the virtual network we are about to attach should be pushed down the peer. One example would be to only push internal subnets.
PlanProviderDetails
(Appears on: ClusterNetworkPlanSpec)
PlanProviderDetails defines the parameters for cloud specific options specifically for a plan
Field | Description |
---|---|
aws PlanProviderDetailsAWS | AWS is the provider specification for AWS networks |
PlanProviderDetailsAWS
(Appears on: PlanProviderDetails)
PlanProviderDetailsAWS defines the AWS-specific ClusterNetwork plan only configuration
Field | Description |
---|---|
availabilityZoneIDsByRegion map[string][]string | AvailabilityZoneIDsByRegion is a map of region to availability zone IDs. Allows specifying which zones should be used across accounts when networks are created. |
Port
(uint16
alias)
(Appears on: FirewallRule)
Port is a network port.
ProviderDetails
(Appears on: ClusterNetworkSpec)
ProviderDetails defines the parameters for cloud specific options - i.e options which cannot be consolidated as they are too specific to the chosen cloud vendor
Field | Description |
---|---|
type ClusterNetworkProviderType | Type represents the cloud the ClusterNetwork belongs to |
aws ProviderDetailsAWS | AWS is the provider specification for AWS networks |
azure ProviderDetailsAzure | Azure is the provider specification for Azure networks |
gcp ProviderDetailsGCP | GCP is the provider specification for GCP networks |
ProviderDetailsAWS
(Appears on: ProviderDetails)
ProviderDetailsAWS defines the AWS-specific ClusterNetwork configuration
Field | Description |
---|---|
availabilityZoneIDs []string | AvailabilityZoneIDs is a list of availability zone ids to use for subnets, and NAT gateways this allows specific availability zones to be specified and matched across any accounts will be populated by the AvailabilityZoneIDsByRegion if not specified directly on the plan A single region must be specified when AvailabilityZoneIDs is used. |
availabilityZones int | AvailabilityZones is the number of availability zones used for the network. Must be 2 or 3 or not specified. If specified, must equal the number of privateSubnets. Each subnet (public or private) will be created in a different availability zone. |
natGateways int | NATGateways is the number of NAT gateways to create. Must be 1 or 2 or not specified. If specified, must equal the number of privateSubnets. |
ProviderDetailsAzure
(Appears on: ProviderDetails)
ProviderDetailsAzure defines the Azure-specific ClusterNetwork configuration
Field | Description |
---|---|
resourceGroup string | ResourceGroup is the Azure resource group |
dnsResolverIPAddresses []string | DNSResolverIPAddresses is a list of IPs to use for DNS resolution on the vNet it creates |
serviceEndpoints []AzureServiceEndpoint | ServiceEndpoints is a list of Azure private service endpoints to make available in the cluster subnet. Entries must be valid, supported service endpoints as defined by Azure - see https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-service-endpoints-overview |
ProviderDetailsGCP
(Appears on: ProviderDetails)
ProviderDetailsGCP defines the GCP-specific ClusterNetwork configuration
ProviderDetailsSubnetIPv4
(Appears on: ClusterNetworkSubnetIPv4)
ProviderDetailsSubnetIPv4 provides cloud provider specifics for the subnet
Field | Description |
---|---|
gcp ProviderDetailsSubnetIPv4GCP | GCP is the provider specification for GCP subnets |
ProviderDetailsSubnetIPv4GCP
(Appears on: ProviderDetailsSubnetIPv4)
ProviderDetailsSubnetIPv4GCP provides secondary ranges for gcp
Field | Description |
---|---|
secondaryIpRanges []GCPSecondarySubnetIPRanges |