-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
1,922 additions
and
754 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
327 changes: 327 additions & 0 deletions
327
charts/aiven-operator-crds/templates/aiven.io_cassandras.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,327 @@ | ||
--- | ||
apiVersion: apiextensions.k8s.io/v1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
annotations: | ||
controller-gen.kubebuilder.io/version: v0.9.2 | ||
creationTimestamp: null | ||
name: cassandras.aiven.io | ||
spec: | ||
group: aiven.io | ||
names: | ||
kind: Cassandra | ||
listKind: CassandraList | ||
plural: cassandras | ||
singular: cassandra | ||
scope: Namespaced | ||
versions: | ||
- additionalPrinterColumns: | ||
- jsonPath: .spec.project | ||
name: Project | ||
type: string | ||
- jsonPath: .spec.cloudName | ||
name: Region | ||
type: string | ||
- jsonPath: .spec.plan | ||
name: Plan | ||
type: string | ||
- jsonPath: .status.state | ||
name: State | ||
type: string | ||
name: v1alpha1 | ||
schema: | ||
openAPIV3Schema: | ||
description: Cassandra is the Schema for the cassandras 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: CassandraSpec defines the desired state of Cassandra | ||
properties: | ||
authSecretRef: | ||
description: Authentication reference to Aiven token in a secret | ||
properties: | ||
key: | ||
minLength: 1 | ||
type: string | ||
name: | ||
minLength: 1 | ||
type: string | ||
type: object | ||
cloudName: | ||
description: Cloud the service runs in. | ||
maxLength: 256 | ||
type: string | ||
connInfoSecretTarget: | ||
description: Information regarding secret creation | ||
properties: | ||
name: | ||
description: Name of the Secret resource to be created | ||
type: string | ||
required: | ||
- name | ||
type: object | ||
disk_space: | ||
description: The disk space of the service, possible values depend | ||
on the service type, the cloud provider and the project. Reducing | ||
will result in the service re-balancing. | ||
format: ^[1-9][0-9]*(GiB|G)* | ||
type: string | ||
maintenanceWindowDow: | ||
description: Day of week when maintenance operations should be performed. | ||
One monday, tuesday, wednesday, etc. | ||
enum: | ||
- monday | ||
- tuesday | ||
- wednesday | ||
- thursday | ||
- friday | ||
- saturday | ||
- sunday | ||
type: string | ||
maintenanceWindowTime: | ||
description: Time of day when maintenance operations should be performed. | ||
UTC time in HH:mm:ss format. | ||
maxLength: 8 | ||
type: string | ||
plan: | ||
description: Subscription plan. | ||
maxLength: 128 | ||
type: string | ||
project: | ||
description: Target project. | ||
format: ^[a-zA-Z0-9_-]*$ | ||
maxLength: 63 | ||
type: string | ||
projectVPCRef: | ||
description: ProjectVPCRef reference to ProjectVPC resource to use | ||
its ID as ProjectVPCID automatically | ||
properties: | ||
name: | ||
minLength: 1 | ||
type: string | ||
namespace: | ||
minLength: 1 | ||
type: string | ||
required: | ||
- name | ||
type: object | ||
projectVpcId: | ||
description: Identifier of the VPC the service should be in, if any. | ||
maxLength: 36 | ||
type: string | ||
tags: | ||
additionalProperties: | ||
type: string | ||
description: Tags are key-value pairs that allow you to categorize | ||
services. | ||
type: object | ||
terminationProtection: | ||
description: Prevent service from being deleted. It is recommended | ||
to have this enabled for all services. | ||
type: boolean | ||
userConfig: | ||
description: Cassandra specific user configuration options | ||
properties: | ||
additional_backup_regions: | ||
description: AdditionalBackupRegions Additional Cloud Regions | ||
for Backup Replication | ||
items: | ||
type: string | ||
maxItems: 1 | ||
type: array | ||
cassandra: | ||
description: Cassandra cassandra configuration values | ||
properties: | ||
batch_size_fail_threshold_in_kb: | ||
description: BatchSizeFailThresholdInKb Fail any multiple-partition | ||
batch exceeding this value. 50kb (10x warn threshold) by | ||
default. | ||
maximum: 1000000 | ||
minimum: 1 | ||
type: integer | ||
batch_size_warn_threshold_in_kb: | ||
description: BatchSizeWarnThresholdInKb Log a warning message | ||
on any multiple-partition batch size exceeding this value.5kb | ||
per batch by default.Caution should be taken on increasing | ||
the size of this thresholdas it can lead to node instability. | ||
maximum: 1000000 | ||
minimum: 1 | ||
type: integer | ||
datacenter: | ||
description: Datacenter Name of the datacenter to which nodes | ||
of this service belong. Can be set only when creating the | ||
service. | ||
maxLength: 128 | ||
type: string | ||
type: object | ||
cassandra_version: | ||
description: CassandraVersion Cassandra major version | ||
enum: | ||
- 3 | ||
- 4 | ||
type: string | ||
ip_filter: | ||
description: IpFilter Allow incoming connections from CIDR address | ||
block, e.g. '10.20.0.0/16' | ||
items: | ||
description: IpFilter CIDR address block, either as a string, | ||
or in a dict with an optional description field | ||
properties: | ||
description: | ||
description: Description for IP filter list entry | ||
maxLength: 1024 | ||
type: string | ||
network: | ||
description: Network CIDR address block | ||
maxLength: 43 | ||
type: string | ||
required: | ||
- network | ||
type: object | ||
maxItems: 1024 | ||
type: array | ||
migrate_sstableloader: | ||
description: MigrateSstableloader Sets the service into migration | ||
mode enabling the sstableloader utility to be used to upload | ||
Cassandra data files. Available only on service create. | ||
type: boolean | ||
private_access: | ||
description: PrivateAccess Allow access to selected service ports | ||
from private networks | ||
properties: | ||
prometheus: | ||
description: Prometheus Allow clients to connect to prometheus | ||
with a DNS name that always resolves to the service's private | ||
IP addresses. Only available in certain network locations | ||
type: boolean | ||
type: object | ||
project_to_fork_from: | ||
description: ProjectToForkFrom Name of another project to fork | ||
a service from. This has effect only when a new service is being | ||
created. | ||
maxLength: 63 | ||
type: string | ||
public_access: | ||
description: PublicAccess Allow access to selected service ports | ||
from the public Internet | ||
properties: | ||
prometheus: | ||
description: Prometheus Allow clients to connect to prometheus | ||
from the public internet for service nodes that are in a | ||
project VPC or another type of private network | ||
type: boolean | ||
type: object | ||
service_to_fork_from: | ||
description: ServiceToForkFrom Name of another service to fork | ||
from. This has effect only when a new service is being created. | ||
maxLength: 64 | ||
type: string | ||
service_to_join_with: | ||
description: ServiceToJoinWith When bootstrapping, instead of | ||
creating a new Cassandra cluster try to join an existing one | ||
from another service. Can only be set on service creation. | ||
maxLength: 64 | ||
type: string | ||
static_ips: | ||
description: StaticIps Use static public IP addresses | ||
type: boolean | ||
type: object | ||
required: | ||
- project | ||
type: object | ||
status: | ||
description: ServiceStatus defines the observed state of service | ||
properties: | ||
conditions: | ||
description: Conditions represent the latest available observations | ||
of a service state | ||
items: | ||
description: "Condition contains details for one aspect of the current | ||
state of this API Resource. --- This struct is intended for direct | ||
use as an array at the field path .status.conditions. For example, | ||
type FooStatus struct{ // Represents the observations of a foo's | ||
current state. // Known .status.conditions.type are: \"Available\", | ||
\"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge | ||
// +listType=map // +listMapKey=type Conditions []metav1.Condition | ||
`json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" | ||
protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" | ||
properties: | ||
lastTransitionTime: | ||
description: lastTransitionTime is the last time the condition | ||
transitioned from one status to another. This should be when | ||
the underlying condition changed. If that is not known, then | ||
using the time when the API field changed is acceptable. | ||
format: date-time | ||
type: string | ||
message: | ||
description: message is a human readable message indicating | ||
details about the transition. This may be an empty string. | ||
maxLength: 32768 | ||
type: string | ||
observedGeneration: | ||
description: observedGeneration represents the .metadata.generation | ||
that the condition was set based upon. For instance, if .metadata.generation | ||
is currently 12, but the .status.conditions[x].observedGeneration | ||
is 9, the condition is out of date with respect to the current | ||
state of the instance. | ||
format: int64 | ||
minimum: 0 | ||
type: integer | ||
reason: | ||
description: reason contains a programmatic identifier indicating | ||
the reason for the condition's last transition. Producers | ||
of specific condition types may define expected values and | ||
meanings for this field, and whether the values are considered | ||
a guaranteed API. The value should be a CamelCase string. | ||
This field may not be empty. | ||
maxLength: 1024 | ||
minLength: 1 | ||
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ | ||
type: string | ||
status: | ||
description: status of the condition, one of True, False, Unknown. | ||
enum: | ||
- "True" | ||
- "False" | ||
- Unknown | ||
type: string | ||
type: | ||
description: type of condition in CamelCase or in foo.example.com/CamelCase. | ||
--- Many .condition.type values are consistent across resources | ||
like Available, but because arbitrary conditions can be useful | ||
(see .node.status.conditions), the ability to deconflict is | ||
important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) | ||
maxLength: 316 | ||
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ | ||
type: string | ||
required: | ||
- lastTransitionTime | ||
- message | ||
- reason | ||
- status | ||
- type | ||
type: object | ||
type: array | ||
state: | ||
description: Service state | ||
type: string | ||
required: | ||
- conditions | ||
- state | ||
type: object | ||
type: object | ||
served: true | ||
storage: true | ||
subresources: | ||
status: {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.