219b29f1a6
* add documentation for gcp provider (capg) * add manifests for gcp provider (capg) * add cluster templates for control plane and workers * add site definition to use gcp provider (capg) with control plane and workers Zuul Gate Scripts: https://review.opendev.org/#/c/749165/ Change-Id: I3ea07fcafe49fc2698d9d961222550c45b40cd66
237 lines
10 KiB
YAML
237 lines
10 KiB
YAML
|
|
---
|
|
apiVersion: apiextensions.k8s.io/v1
|
|
kind: CustomResourceDefinition
|
|
metadata:
|
|
annotations:
|
|
controller-gen.kubebuilder.io/version: v0.2.6
|
|
creationTimestamp: null
|
|
name: gcpclusters.infrastructure.cluster.x-k8s.io
|
|
spec:
|
|
group: infrastructure.cluster.x-k8s.io
|
|
names:
|
|
categories:
|
|
- cluster-api
|
|
kind: GCPCluster
|
|
listKind: GCPClusterList
|
|
plural: gcpclusters
|
|
singular: gcpcluster
|
|
scope: Namespaced
|
|
versions:
|
|
- additionalPrinterColumns:
|
|
- description: Cluster to which this GCPCluster belongs
|
|
jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name
|
|
name: Cluster
|
|
type: string
|
|
- description: Cluster infrastructure is ready for GCE instances
|
|
jsonPath: .status.ready
|
|
name: Ready
|
|
type: string
|
|
- description: GCP network the cluster is using
|
|
jsonPath: .spec.network.name
|
|
name: Network
|
|
type: string
|
|
- description: API Endpoint
|
|
jsonPath: .status.apiEndpoints[0]
|
|
name: Endpoint
|
|
priority: 1
|
|
type: string
|
|
name: v1alpha3
|
|
schema:
|
|
openAPIV3Schema:
|
|
description: GCPCluster is the Schema for the gcpclusters API
|
|
properties:
|
|
apiVersion:
|
|
description: 'APIVersion defines the versioned schema of this representation
|
|
of an object. Servers should convert recognized schemas to the latest
|
|
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
|
type: string
|
|
kind:
|
|
description: 'Kind is a string value representing the REST resource this
|
|
object represents. Servers may infer this from the endpoint the client
|
|
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
|
type: string
|
|
metadata:
|
|
type: object
|
|
spec:
|
|
description: GCPClusterSpec defines the desired state of GCPCluster
|
|
properties:
|
|
additionalLabels:
|
|
additionalProperties:
|
|
type: string
|
|
description: AdditionalLabels is an optional set of tags to add to
|
|
GCP resources managed by the GCP provider, in addition to the ones
|
|
added by default.
|
|
type: object
|
|
controlPlaneEndpoint:
|
|
description: ControlPlaneEndpoint represents the endpoint used to
|
|
communicate with the control plane.
|
|
properties:
|
|
host:
|
|
description: The hostname on which the API server is serving.
|
|
type: string
|
|
port:
|
|
description: The port on which the API server is serving.
|
|
format: int32
|
|
type: integer
|
|
required:
|
|
- host
|
|
- port
|
|
type: object
|
|
network:
|
|
description: NetworkSpec encapsulates all things related to GCP network.
|
|
properties:
|
|
autoCreateSubnetworks:
|
|
description: "AutoCreateSubnetworks: When set to true, the VPC
|
|
network is created in \"auto\" mode. When set to false, the
|
|
VPC network is created in \"custom\" mode. \n An auto mode VPC
|
|
network starts with one subnet per region. Each subnet has a
|
|
predetermined range as described in Auto mode VPC network IP
|
|
ranges. \n Defaults to true."
|
|
type: boolean
|
|
loadBalancerBackendPort:
|
|
description: Allow for configuration of load balancer backend
|
|
(useful for changing apiserver port)
|
|
format: int32
|
|
type: integer
|
|
name:
|
|
description: Name is the name of the network to be used.
|
|
type: string
|
|
subnets:
|
|
description: Subnets configuration.
|
|
items:
|
|
description: SubnetSpec configures an GCP Subnet.
|
|
properties:
|
|
cidrBlock:
|
|
description: CidrBlock is the range of internal addresses
|
|
that are owned by this subnetwork. Provide this property
|
|
when you create the subnetwork. For example, 10.0.0.0/8
|
|
or 192.168.0.0/16. Ranges must be unique and non-overlapping
|
|
within a network. Only IPv4 is supported. This field can
|
|
be set only at resource creation time.
|
|
type: string
|
|
description:
|
|
description: Description is an optional description associated
|
|
with the resource.
|
|
type: string
|
|
name:
|
|
description: Name defines a unique identifier to reference
|
|
this resource.
|
|
type: string
|
|
privateGoogleAccess:
|
|
description: PrivateGoogleAccess defines whether VMs in
|
|
this subnet can access Google services without assigning
|
|
external IP addresses
|
|
type: boolean
|
|
region:
|
|
description: Region is the name of the region where the
|
|
Subnetwork resides.
|
|
type: string
|
|
routeTableId:
|
|
description: 'EnableFlowLogs: Whether to enable flow logging
|
|
for this subnetwork. If this field is not explicitly set,
|
|
it will not appear in get listings. If not set the default
|
|
behavior is to disable flow logging.'
|
|
type: boolean
|
|
secondaryCidrBlocks:
|
|
additionalProperties:
|
|
type: string
|
|
description: SecondaryCidrBlocks defines secondary CIDR
|
|
ranges, from which secondary IP ranges of a VM may be
|
|
allocated
|
|
type: object
|
|
type: object
|
|
type: array
|
|
type: object
|
|
project:
|
|
description: Project is the name of the project to deploy the cluster
|
|
to.
|
|
type: string
|
|
region:
|
|
description: The GCP Region the cluster lives in.
|
|
type: string
|
|
required:
|
|
- project
|
|
- region
|
|
type: object
|
|
status:
|
|
description: GCPClusterStatus defines the observed state of GCPCluster
|
|
properties:
|
|
failureDomains:
|
|
additionalProperties:
|
|
description: FailureDomainSpec is the Schema for Cluster API failure
|
|
domains. It allows controllers to understand how many failure
|
|
domains a cluster can optionally span across.
|
|
properties:
|
|
attributes:
|
|
additionalProperties:
|
|
type: string
|
|
description: Attributes is a free form map of attributes an
|
|
infrastructure provider might use or require.
|
|
type: object
|
|
controlPlane:
|
|
description: ControlPlane determines if this failure domain
|
|
is suitable for use by control plane machines.
|
|
type: boolean
|
|
type: object
|
|
description: FailureDomains is a slice of FailureDomains.
|
|
type: object
|
|
network:
|
|
description: Network encapsulates GCP networking resources.
|
|
properties:
|
|
apiServerBackendService:
|
|
description: APIServerBackendService is the full reference to
|
|
the backend service created for the API Server.
|
|
type: string
|
|
apiServerForwardingRule:
|
|
description: APIServerForwardingRule is the full reference to
|
|
the forwarding rule created for the API Server.
|
|
type: string
|
|
apiServerHealthCheck:
|
|
description: APIServerHealthCheck is the full reference to the
|
|
health check created for the API Server.
|
|
type: string
|
|
apiServerInstanceGroups:
|
|
additionalProperties:
|
|
type: string
|
|
description: APIServerInstanceGroups is a map from zone to the
|
|
full reference to the instance groups created for the control
|
|
plane nodes created in the same zone.
|
|
type: object
|
|
apiServerIpAddress:
|
|
description: APIServerAddress is the IPV4 global address assigned
|
|
to the load balancer created for the API Server.
|
|
type: string
|
|
apiServerTargetProxy:
|
|
description: APIServerTargetProxy is the full reference to the
|
|
target proxy created for the API Server.
|
|
type: string
|
|
firewallRules:
|
|
additionalProperties:
|
|
type: string
|
|
description: FirewallRules is a map from the name of the rule
|
|
to its full reference.
|
|
type: object
|
|
selfLink:
|
|
description: SelfLink is the link to the Network used for this
|
|
cluster.
|
|
type: string
|
|
type: object
|
|
ready:
|
|
description: Bastion Instance `json:"bastion,omitempty"`
|
|
type: boolean
|
|
required:
|
|
- ready
|
|
type: object
|
|
type: object
|
|
served: true
|
|
storage: true
|
|
subresources:
|
|
status: {}
|
|
status:
|
|
acceptedNames:
|
|
kind: ""
|
|
plural: ""
|
|
conditions: []
|
|
storedVersions: []
|