Documentation ¶
Index ¶
- Constants
- Variables
- type AWSArchival
- type AWSConnectorSettings
- type AWSEndpointServicePrincipal
- type AWSSetting
- type AWSVPCPeering
- type ActiveCluster
- type ActiveClusters
- type AddonBundle
- type AdvancedVisibility
- type AppVersions
- type AzureConnectorSettings
- type AzureSetting
- type BackupDataCentre
- type BackupEvent
- type BackupNode
- type Bundle
- type BundleOptions
- type CadenceCluster
- type CadenceClusterAPIUpdate
- type CadenceDataCentre
- type CadenceSharedProvisioning
- type CadenceStandardProvisioning
- type CassandraCluster
- type CassandraClusterAPIUpdate
- type CassandraDataCentre
- type Certificate
- type CertificateRequest
- type CloudProviderSettings
- type ClusterBackup
- type ClusterConfigurations
- type ClusterManagerNodes
- type ClusterModifyRequest
- type ClusterProviderV1
- type ClusterSettings
- type ClusterStatus
- type ConfigurationProperties
- type Credentials
- type CustomConnectors
- type DataCentre
- type DataCentreResizeOperations
- type DataCentreStatus
- type DataCentreV1
- type Debezium
- type DedicatedZookeeper
- type DedicatedZookeeperUpdate
- type ExternalCluster
- type FirewallRule
- type GCPConnectorSettings
- type GCPSetting
- type InstaOpenSearchUser
- type InstaUser
- type KafkaCluster
- type KafkaConnectAPIUpdate
- type KafkaConnectCluster
- type KafkaConnectDataCentre
- type KafkaDataCentre
- type KafkaInstAPIUpdateRequest
- type KafkaUser
- type KarapaceRestProxy
- type KarapaceSchemaRegistry
- type Kraft
- type ManagedCluster
- type Node
- type NodeReloadStatus
- type NodeStatusV1
- type OpenSearchCluster
- type OpenSearchDashboards
- type OpenSearchDataCentre
- type OpenSearchDataNodes
- type OpenSearchIngestNodes
- type OpenSearchInstAPIUpdateRequest
- type Options
- type PGBouncer
- type PGCluster
- type PGClusterUpdate
- type PGConfigs
- type PGDataCentre
- type PGExtension
- type PGInterDCReplication
- type PGIntraDCReplication
- type PrivateLink
- type PrivateLinkV1
- type RackAllocationV1
- type RedisCluster
- type RedisDataCentre
- type RedisDataCentreUpdate
- type RedisUser
- type RedisUserUpdate
- type ResizeRequest
- type ResizeSettings
- type RestProxy
- type RuleType
- type SchemaRegistry
- type Tag
- type TargetCadence
- type TargetCassandra
- type TargetCluster
- type TargetKafka
- type TargetOpenSearch
- type TopicConfigs
- type TopicStatus
- type TwoFactorDelete
- type TwoFactorDeleteV1
- type UpdateTopicConfigs
- type ZookeeperCluster
- type ZookeeperDataCentre
Constants ¶
View Source
const ( NoOperation = "NO_OPERATION" OperationInProgress = "OPERATION_IN_PROGRESS" CreatedStatus = "CREATED" DeletedStatus = "DELETED" DefaultAccountName = "INSTACLUSTR" AWSVPC = "AWS_VPC" GCP = "GCP" AZUREAZ = "AZURE_AZ" )
View Source
const ( AWSAccessKeyID = "awsAccessKeyId" AWSSecretAccessKey = "awsSecretAccessKey" PackagedProvisioningType = "PACKAGED" StandardProvisioningType = "STANDARD" )
View Source
const ( ONPREMISES = "ONPREMISES" CLIENTDC = "CLIENT_DC" KubeVirt = "kubevirt" VirtualMachineKind = "VirtualMachine" DVKind = "DataVolume" ServiceKind = "Service" KubevirtV1APIVersion = "kubevirt.io/v1" CDIKubevirtV1beta1APIVersion = "cdi.kubevirt.io/v1beta1" KubevirtSubdomain = "kubevirt" KubevirtDomainLabel = "kubevirt.io/domain" NodeIDLabel = "nodeID" NodeRackLabel = "nodeRack" NodeLabel = "node" NodeOSDVPrefix = "node-os-data-volume-pvc" NodeDVPrefix = "node-data-volume-pvc" NodeVMPrefix = "node-vm" NodeSvcPrefix = "node-service" WorkerNode = "worker-node" GatewayDVPrefix = "gateway-data-volume-pvc" GatewayVMPrefix = "gateway-vm" GatewaySvcPrefix = "gateway-service" GatewayRack = "ssh-gateway-rack" IgnitionScriptSecretPrefix = "ignition-script-secret" DataDisk = "data-disk" Boot = "boot" Storage = "storage" CPU = "cpu" Memory = "memory" Virtio = "virtio" Native = "native" None = "none" Script = "script" IgnitionDisk = "ignition" Default = "default" CloudInit = "cloud-init" DataDiskSerial = "DATADISK" IgnitionSerial = "IGNITION" SSH = "ssh" Port22 = 22 CassandraInterNode = "cassandra-inter-node" CassandraSSL = "cassandra-ssl" CassandraCQL = "cassandra-cql" CassandraJMX = "cassandra-jmx" Port7000 = 7000 Port7001 = 7001 Port7199 = 7199 Port9042 = 9042 KafkaClient = "kafka-client" KafkaControlPlane = "kafka-control-plane" KafkaBroker = "kafka-broker" Port9092 = 9092 Port9093 = 9093 Port9094 = 9094 KafkaConnectAPI = "kafka-connect-API" Port8083 = 8083 CadenceTChannel = "cadence-tchannel" CadenceGRPC = "cadence-grpc" CadenceWeb = "cadence-web" CadenceHHTPAPI = "cadence-http-api" Port7933 = 7933 Port7833 = 7833 Port8088 = 8088 Port443 = 433 PostgreSQLDB = "postgresql-db" Port5432 = 5432 RedisDB = "redis-db" RedisBus = "redis-bus" Port6379 = 6379 Port16379 = 16379 )
View Source
const ( ResourceStateAnnotation = "instaclustr.com/resourceState" ClusterDeletionAnnotation = "instaclustr.com/clusterDeletion" ExternalChangesAnnotation = "instaclustr.com/externalChanges" DeletionFinalizer = "instaclustr.com/deletionFinalizer" StartTimestampAnnotation = "instaclustr.com/startTimestamp" UpdateQueuedAnnotation = "instaclustr.com/updateQueued" DefaultSecretLabel = "instaclustr.com/defaultSecret" ControlledByLabel = "instaclustr.com/controlledBy" ClusterIDLabel = "instaclustr.com/clusterID" ClusterNameLabel = "instaclustr.com/clusterName" ClustersV1beta1APIVersion = "clusters.instaclustr.com/v1beta1" ClusterresourcesV1beta1APIVersion = "clusterresources.instaclustr.com/v1beta1" RedisUserNamespaceLabel = "instaclustr.com/redisUserNamespace" PostgreSQLUserNamespaceLabel = "instaclustr.com/postgresqlUserNamespace" OpenSearchUserNamespaceLabel = "instaclustr.com/openSearchUserNamespace" CassandraKind = "Cassandra" CassandraChildPrefix = "cassandra-" CassandraChildDCName = "cassandra-cadence-dc" KafkaKind = "Kafka" KafkaChildPrefix = "kafka-" KafkaChildDCName = "kafka-cadence-dc" OpenSearchKind = "OpenSearch" OpenSearchChildPrefix = "opensearch-" OpenSearchChildDCName = "opensearch-cadence-dc" K8sAPIVersionV1 = "v1" VPCPeered = "VPC_PEERED" True = "true" False = "false" Triggered = "triggered" ClusterBackupKind = "ClusterBackup" PgClusterKind = "PostgreSQL" RedisClusterKind = "Redis" OsClusterKind = "OpenSearch" CadenceClusterKind = "Cadence" KafkaConnectClusterKind = "KafkaConnect" CassandraClusterKind = "Cassandra" ZookeeperClusterKind = "Zookeeper" ClusterNetworkFirewallRuleKind = "ClusterNetworkFirewallRule" SecretKind = "Secret" PgBackupEventType = "postgresql-backup" SnapshotUploadEventType = "snapshot-upload" PgBackupPrefix = "postgresql-backup-" SnapshotUploadPrefix = "snapshot-upload-" ClusterNetworkFirewallRulePrefix = "firewall-rule" DefaultUserSecretPrefix = "default-user-password" DefaultUserSecretNameTemplate = "%s-%s" ExposeServiceNameTemplate = "%s-service" PgRestoreValue = "postgres" CassandraConnectionPort = 9042 CadenceConnectionPort = 7933 KafkaConnectionPort = 9092 KafkaConnectConnectionPort = 8083 OpenSearchConnectionPort = 9200 PgConnectionPort = 5432 RedisConnectionPort = 6379 ZookeeperConnectionPort = 2181 KafkaConnectAppKind = "kafka-connect" CadenceAppKind = "cadence" CassandraAppKind = "cassandra" KafkaAppKind = "kafka" OpenSearchAppKind = "opensearch" PgAppKind = "postgresql" RedisAppKind = "redis" ZookeeperAppKind = "zookeeper" KafkaAppType = "KAFKA" RedisAppType = "REDIS" CadenceAppType = "CADENCE" ZookeeperAppType = "APACHE_ZOOKEEPER" OpenSearchAppType = "OPENSEARCH" PgAppType = "POSTGRESQL" KafkaConnectAppType = "KAFKA_CONNECT" CassandraAppType = "APACHE_CASSANDRA" DefaultPgUsernameValue = "icpostgresql" DefaultPgDbNameValue = "postgres" DefaultPgDbPortValue = 5432 )
View Source
const ( CreatingEvent = "creating" CreatedEvent = "created" UpdatingEvent = "updating" UpdatedEvent = "updated" DeletingEvent = "deleting" DeletedEvent = "deleted" GenericEvent = "generic" SecretEvent = "secret" ClusterDeletingEvent = "cluster deleting" )
View Source
const ( Normal = "Normal" Warning = "Warning" Created = "Created" PatchFailed = "PatchFailed" NotFound = "NotFound" CreationFailed = "CreationFailed" FetchFailed = "FetchFailed" ConversionFailed = "ConversionFailed" ValidationFailed = "ValidationFailed" UpdateFailed = "UpdateFailed" ExternalChanges = "ExternalChanges" DeletionStarted = "DeletionStarted" DeletionFailed = "DeletionFailed" Deleted = "Deleted" ExternalDeleted = "ExternalDeleted" )
View Source
const ( ReplaceOperation = "replace" AnnotationsPath = "/metadata/annotations" FinalizersPath = "/metadata/finalizers" Username = "username" Password = "password" )
View Source
const ( InProgressME = "in-progress" PastME = "past" UpcomingME = "upcoming" )
View Source
const ( CertificateRequestType = "CERTIFICATE REQUEST" RSAPrivateKeyType = "RSA PRIVATE KEY" SignedCertificateSecretKey = "signedCertificate" CSRSecretKey = "csr" PrivateKeySecretKey = "privateKey" )
View Source
const ( ExternalChangesBaseMessage = "There are external changes on the Instaclustr console. Please reconcile the specification manually." SpecPath = "path" )
View Source
const (
AWSVPCPeeringStatusCodeDeleted = "deleted"
)
View Source
const Requeue60 = time.Second * 60
View Source
const (
RunningStatus = "RUNNING"
)
Variables ¶
View Source
var ( ErrZeroDataCentres = errors.New("cluster spec doesn't have data centres") ErrMoreThanOneKraft = errors.New("cluster spec does not support more than one kraft") ErrMoreThanThreeControllerNodeCount = errors.New("kraft does not support more than three controller nodes") ErrNetworkOverlaps = errors.New("cluster network overlaps") ErrImmutableTwoFactorDelete = errors.New("twoFactorDelete field is immutable") ErrImmutableCloudProviderSettings = errors.New("cloudProviderSettings are immutable") ErrImmutableIntraDataCentreReplication = errors.New("intraDataCentreReplication fields are immutable") ErrImmutableInterDataCentreReplication = errors.New("interDataCentreReplication fields are immutable") ErrImmutableDataCentresNumber = errors.New("data centres number is immutable") ErrImmutableAWSSecurityGroupFirewallRule = errors.New("awsSecurityGroupFirewallRule is immutable") ErrImmutableTags = errors.New("tags field is immutable") ErrTypeAssertion = errors.New("unable to assert type") ErrImmutableSchemaRegistry = errors.New("schema registry is immutable") ErrImmutableRestProxy = errors.New("rest proxy is immutable") ErrImmutableKraft = errors.New("kraft is immutable") ErrImmutableKarapaceSchemaRegistry = errors.New("karapace schema registry is immutable") ErrImmutableKarapaceRestProxy = errors.New("karapace rest proxy is immutable") ErrImmutableDedicatedZookeeper = errors.New("dedicated zookeeper nodes cannot be changed") ErrDecreasedDataCentresNumber = errors.New("data centres number cannot be decreased") ErrImmutableTargetCluster = errors.New("TargetCluster field is immutable") ErrImmutableExternalCluster = errors.New("ExternalCluster field is immutable") ErrImmutableManagedCluster = errors.New("ManagedCluster field is immutable") ErrIncorrectDayOfWeek = errors.New("dayOfWeek field is invalid") ErrImmutableAWSArchival = errors.New("AWSArchival array is immutable") ErrImmutableStandardProvisioning = errors.New("StandardProvisioning array is immutable") ErrImmutablePackagedProvisioning = errors.New("PackagedProvisioning array is immutable") ErrImmutableAdvancedVisibility = errors.New("AdvancedVisibility array is immutable") ErrImmutablePrivateLink = errors.New("PrivateLink array is immutable") ErrImmutableNodesNumber = errors.New("nodes number is immutable") ErrImmutableSecretRef = errors.New("secret reference is immutable") ErrEmptySecretRef = errors.New("secretRef.name and secretRef.namespace should not be empty") ErrMissingSecretKeys = errors.New("the secret is missing the correct keys for the user") ErrUserStillExist = errors.New("the user is still attached to the cluster. If you want to delete the user, remove the user from the cluster specification first") ErrOnlyOneEntityTwoFactorDelete = errors.New("currently only one entity of two factor delete can be filled") ErrPrivateLinkOnlyWithPrivateNetworkCluster = errors.New("private link is available only for private network clusters") ErrPrivateLinkSupportedOnlyForSingleDC = errors.New("private link is only supported for a single data centre") ErrPrivateLinkSupportedOnlyForAWS = errors.New("private link is supported only for an AWS cloud provider") ErrImmutableSpec = errors.New("resource specification is immutable") ErrUnsupportedBackupClusterKind = errors.New("backups for provided cluster kind are not supported") ErrUnsupportedClusterKind = errors.New("provided cluster kind is not supported") ErrExposeServiceNotCreatedYet = errors.New("expose service is not created yet") ErrExposeServiceEndpointsNotCreatedYet = errors.New("expose service endpoints is not created yet") ErrOnlySingleConcurrentResizeAvailable = errors.New("only single concurrent resize is allowed") ErrBundledUseOnlyResourceUpdateIsNotSupported = errors.New("updating of bundled use resource is not supported") ErrDebeziumImmutable = errors.New("debezium array is immutable") ErrEmptyNamespace = errors.New("namespace field is empty") ErrEmptyName = errors.New("name field is empty") ErrCreateClusterWithMultiDC = errors.New("multiple data center is still not supported. Please create a cluster with one data centre and add a second one when the cluster is in the running state") ErrOnPremicesWithMultiDC = errors.New("on-premises cluster can be provisioned with only one data centre") ErrUnsupportedDeletingDC = errors.New("deleting data centre is not supported") ErrClusterIsNotReadyToUpdate = errors.New("cluster is not ready to update") ErrKubeVirtAddonNotFound = errors.New("cannot create KubeVirt based resources automatially without KubeVirt operator installed. Please install KubeVirt add-on") )
View Source
var ( ReconcileRequeue = reconcile.Result{RequeueAfter: Requeue60} ImmediatelyRequeue = reconcile.Result{RequeueAfter: 1} ExitReconcile = reconcile.Result{} )
View Source
var ( PGBouncerVersions = []string{"1.17.0"} KafkaConnectVPCTypes = []string{"KAFKA_VPC", "VPC_PEERED", "SEPARATE_VPC"} PoolModes = []string{"TRANSACTION", "SESSION", "STATEMENT"} ReplicationModes = []string{"ASYNCHRONOUS", "SYNCHRONOUS"} CloudProviders = []string{"AWS_VPC", "GCP", "AZURE_AZ"} SLATiers = []string{"PRODUCTION", "NON_PRODUCTION"} ClusterNameRegExp = "^[a-zA-Z0-9][a-zA-Z0-9_-]{2,31}$" BundleTypes = []string{"APACHE_ZOOKEEPER", "CADENCE", "CADENCE_GRPC", "CADENCE_WEB", "CASSANDRA", "CASSANDRA_CQL", "ELASTICSEARCH", "KAFKA", "KAFKA_CONNECT", "KAFKA_ENCRYPTION", "KAFKA_MTLS", "KAFKA_NO_ENCRYPTION", "KAFKA_REST_PROXY", "KAFKA_SCHEMA_REGISTRY", "KARAPACE_REST_PROXY", "KARAPACE_SCHEMA_REGISTRY", "OPENSEARCH", "OPENSEARCH_DASHBOARDS", "PGBOUNCER", "POSTGRESQL", "REDIS", "SEARCH_DASHBOARDS", "SECURE_APACHE_ZOOKEEPER", "SPARK", "SPARK_JOBSERVER", "SHOTOVER_PROXY"} PeerAWSAccountIDRegExp = "^[0-9]{12}$" PeerVPCIDRegExp = "^vpc-[0-9a-f]{8}$" PeerSubnetsRegExp = "" /* 171-byte string literal not displayed */ UUIDStringRegExp = "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$" AWSRegions = []string{"AF_SOUTH_1", "AP_EAST_1", "AP_NORTHEAST_1", "AP_NORTHEAST_2", "AP_SOUTHEAST_1", "AP_SOUTHEAST_2", "AP_SOUTH_1", "CA_CENTRAL_1", "CN_NORTHWEST_1", "CN_NORTH_1", "EU_CENTRAL_1", "EU_NORTH_1", "EU_SOUTH_1", "EU_WEST_1", "EU_WEST_2", "EU_WEST_3", "ME_SOUTH_1", "SA_EAST_1", "US_EAST_1", "US_EAST_2", "US_WEST_1", "US_WEST_2"} AzureRegions = []string{"AUSTRALIA_EAST", "CANADA_CENTRAL", "CENTRAL_US", "EAST_US", "EAST_US_2", "NORTH_EUROPE", "SOUTHEAST_ASIA", "SOUTH_CENTRAL_US", "WEST_EUROPE", "WEST_US_2"} GCPRegions = []string{"asia-east1", "asia-northeast1", "asia-south1", "asia-southeast1", "australia-southeast1", "europe-north1", "europe-west1", "europe-west2", "europe-west3", "europe-west4", "europe-west6", "northamerica-northeast1", "southamerica-east1", "us-central1", "us-east1", "us-east4", "us-west1", "us-west2"} DaysOfWeek = []string{"MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"} ISODateFormatRegExp = "" /* 258-byte string literal not displayed */ ACLPermissionType = []string{"ALLOW", "DENY"} ACLPatternType = []string{"LITERAL", "PREFIXED"} ACLOperation = []string{"ALL", "READ", "WRITE", "CREATE", "DELETE", "ALTER", "DESCRIBE", "CLUSTER_ACTION", "DESCRIBE_CONFIGS", "ALTER_CONFIGS", "IDEMPOTENT_WRITE"} ACLResourceType = []string{"CLUSTER", "TOPIC", "GROUP", "DELEGATION_TOKEN", "TRANSACTIONAL_ID"} ACLUserPrefix = "User:" ACLPrincipalRegExp = "^User:.*$" S3URIRegExp = "^s3:\\/\\/[a-zA-Z0-9_-]+[^\\/]$" DependencyVPCs = []string{"TARGET_VPC", "VPC_PEERED", "SEPARATE_VPC"} EncryptionKeyAliasRegExp = "^[a-zA-Z0-9_-]{1}[a-zA-Z0-9 _-]*$" OpenSearchBindingIDPattern = "[\\w-]+" MemoryRegExp = "^\\d+(Ei|Pi|Ti|Gi|Mi|Ki)?$" StorageRegExp = "^\\d+(Gi|Ti|Pi|Ei)?$" CassandraReplicationFactors = []int{2, 3, 5} KafkaReplicationFactors = []int{3, 5} KafkaConnectReplicationFactors = []int{3} OpenSearchReplicationFactors = []int{3} )
View Source
var ClusterKindsMap = map[string]string{"PostgreSQL": "postgres", "Redis": "redis", "OpenSearch": "opensearch", "Cassandra": "cassandra"}
Functions ¶
This section is empty.
Types ¶
type AWSArchival ¶
type AWSConnectorSettings ¶ added in v0.0.2
type AWSEndpointServicePrincipal ¶ added in v0.1.3
type AWSSetting ¶ added in v0.0.2
type AWSVPCPeering ¶ added in v0.1.3
type AWSVPCPeering struct { ID string `json:"id"` CDCID string `json:"cdcId"` DataCentreVPCID string `json:"dataCentreVpcId"` PeerAWSAccountID string `json:"peerAwsAccountId"` PeerRegion string `json:"peerRegion"` PeerSubnets []string `json:"peerSubnets"` PeerVpcID string `json:"peerVpcId"` StatusCode string `json:"statusCode"` }
type ActiveCluster ¶ added in v0.0.2
type ActiveClusters ¶ added in v0.0.2
type ActiveClusters struct { AccountID string `json:"accountId,omitempty"` Clusters []*ActiveCluster `json:"clusters,omitempty"` }
type AddonBundle ¶
type AddonBundle struct { Bundle string `json:"bundle"` Version string `json:"version"` Options *BundleOptions `json:"options"` }
type AdvancedVisibility ¶
type AdvancedVisibility struct { TargetKafka *TargetKafka `json:"targetKafka"` TargetOpenSearch *TargetOpenSearch `json:"targetOpenSearch"` }
type AppVersions ¶ added in v0.0.5
type AzureConnectorSettings ¶ added in v0.0.2
type AzureSetting ¶ added in v0.0.2
type AzureSetting struct {
ResourceGroup string `json:"resourceGroup,omitempty"`
}
type BackupDataCentre ¶
type BackupDataCentre struct { Nodes []*BackupNode `json:"nodes"` Name string `json:"name"` ID string `json:"id"` }
type BackupEvent ¶
type BackupNode ¶
type BackupNode struct { Events []*BackupEvent `json:"events"` PrivateAddress string `json:"privateAddress,omitempty"` PublicAddress string `json:"publicAddress"` ID string `json:"id"` }
type BundleOptions ¶
type BundleOptions struct { DataNodeSize string `json:"dataNodeSize,omitempty"` MasterNodeSize string `json:"masterNodeSize,omitempty"` OpenSearchDashboardsNodeSize string `json:"openSearchDashboardsNodeSize,omitempty"` IndexManagementPlugin bool `json:"indexManagementPlugin,omitempty"` AlertingPlugin bool `json:"alertingPlugin,omitempty"` ICUPlugin bool `json:"icuPlugin,omitempty"` KNNPlugin bool `json:"knnPlugin,omitempty"` NotificationsPlugin bool `json:"notificationsPlugin,omitempty"` ReportsPlugin bool `json:"reportsPlugin,omitempty"` DedicatedMasterNodes bool `json:"dedicatedMasterNodes,omitempty"` }
type CadenceCluster ¶ added in v0.0.2
type CadenceCluster struct { ClusterStatus `json:",inline"` Name string `json:"name"` CadenceVersion string `json:"cadenceVersion"` DataCentres []*CadenceDataCentre `json:"dataCentres"` StandardProvisioning []*CadenceStandardProvisioning `json:"standardProvisioning,omitempty"` PCIComplianceMode bool `json:"pciComplianceMode"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` UseCadenceWebAuth bool `json:"useCadenceWebAuth"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` SLATier string `json:"slaTier"` AWSArchival []*AWSArchival `json:"awsArchival,omitempty"` TargetPrimaryCadence []*TargetCadence `json:"targetPrimaryCadence,omitempty"` TargetSecondaryCadence []*TargetCadence `json:"targetSecondaryCadence,omitempty"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` Description string `json:"description,omitempty"` UseHTTPAPI bool `json:"useHttpApi,omitempty"` }
type CadenceClusterAPIUpdate ¶ added in v0.0.2
type CadenceClusterAPIUpdate struct {
DataCentres []*CadenceDataCentre `json:"dataCentres"`
}
type CadenceDataCentre ¶
type CadenceDataCentre struct { DataCentre `json:",inline"` ClientToClusterEncryption bool `json:"clientToClusterEncryption"` PrivateLink []*PrivateLink `json:"privateLink,omitempty"` }
type CadenceSharedProvisioning ¶
type CadenceSharedProvisioning struct {
}type CadenceStandardProvisioning ¶
type CadenceStandardProvisioning struct { AdvancedVisibility []*AdvancedVisibility `json:"advancedVisibility,omitempty"` TargetCassandra *TargetCassandra `json:"targetCassandra"` }
type CassandraCluster ¶ added in v0.0.2
type CassandraCluster struct { ClusterStatus CassandraVersion string `json:"cassandraVersion"` LuceneEnabled bool `json:"luceneEnabled"` PasswordAndUserAuth bool `json:"passwordAndUserAuth"` DataCentres []*CassandraDataCentre `json:"dataCentres"` Name string `json:"name"` SLATier string `json:"slaTier"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` PCIComplianceMode bool `json:"pciComplianceMode"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` BundledUseOnly bool `json:"bundledUseOnly,omitempty"` ResizeSettings []*ResizeSettings `json:"resizeSettings"` Description string `json:"description,omitempty"` }
type CassandraClusterAPIUpdate ¶ added in v0.0.2
type CassandraClusterAPIUpdate struct { DataCentres []*CassandraDataCentre `json:"dataCentres"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` }
type CassandraDataCentre ¶ added in v0.0.2
type CassandraDataCentre struct { DataCentre `json:",inline"` ReplicationFactor int `json:"replicationFactor"` ContinuousBackup bool `json:"continuousBackup"` PrivateIPBroadcastForDiscovery bool `json:"privateIpBroadcastForDiscovery"` ClientToClusterEncryption bool `json:"clientToClusterEncryption"` Debezium []*Debezium `json:"debezium,omitempty"` }
type Certificate ¶ added in v0.1.4
type CertificateRequest ¶ added in v0.1.2
type CloudProviderSettings ¶ added in v0.0.2
type CloudProviderSettings struct { AWSSettings []*AWSSetting `json:"awsSettings,omitempty"` GCPSettings []*GCPSetting `json:"gcpSettings,omitempty"` AzureSettings []*AzureSetting `json:"azureSettings,omitempty"` }
type ClusterBackup ¶
type ClusterBackup struct {
ClusterDataCentres []*BackupDataCentre `json:"clusterDataCentres"`
}
func (*ClusterBackup) GetBackupEvents ¶
func (cb *ClusterBackup) GetBackupEvents(clusterKind string) map[int]*BackupEvent
type ClusterConfigurations ¶
type ClusterManagerNodes ¶ added in v0.0.6
type ClusterModifyRequest ¶
type ClusterModifyRequest struct { TwoFactorDelete *TwoFactorDeleteV1 `json:"twoFactorDelete,omitempty"` Description string `json:"description,omitempty"` }
type ClusterProviderV1 ¶ added in v0.0.2
type ClusterProviderV1 struct { Name string `json:"name"` AccountName string `json:"accountName,omitempty"` CustomVirtualNetworkID string `json:"customVirtualNetworkId,omitempty"` Tags map[string]string `json:"tags,omitempty"` ResourceGroup string `json:"resourceGroup,omitempty"` DiskEncryptionKey string `json:"diskEncryptionKey,omitempty"` ResourceName string `json:"resourceName,omitempty"` }
type ClusterSettings ¶ added in v0.1.2
type ClusterSettings struct { Description string `json:"description"` TwoFactorDelete *TwoFactorDelete `json:"twoFactorDelete,omitempty"` }
type ClusterStatus ¶
type ConfigurationProperties ¶
type Credentials ¶ added in v0.1.3
type CustomConnectors ¶ added in v0.0.2
type CustomConnectors struct { AzureConnectorSettings []*AzureConnectorSettings `json:"azureConnectorSettings,omitempty"` AWSConnectorSettings []*AWSConnectorSettings `json:"awsConnectorSettings,omitempty"` GCPConnectorSettings []*GCPConnectorSettings `json:"gcpConnectorSettings,omitempty"` }
type DataCentre ¶
type DataCentre struct { DataCentreStatus `json:",inline"` Name string `json:"name"` Network string `json:"network"` NodeSize string `json:"nodeSize,omitempty"` NumberOfNodes int `json:"numberOfNodes,omitempty"` AWSSettings []*AWSSetting `json:"awsSettings,omitempty"` GCPSettings []*GCPSetting `json:"gcpSettings,omitempty"` AzureSettings []*AzureSetting `json:"azureSettings,omitempty"` Tags []*Tag `json:"tags,omitempty"` CloudProvider string `json:"cloudProvider"` Region string `json:"region"` ProviderAccountName string `json:"providerAccountName,omitempty"` }
type DataCentreStatus ¶
type DataCentreV1 ¶ added in v0.0.2
type DataCentreV1 struct { ID string `json:"id,omitempty"` Name string `json:"name"` CDCName string `json:"cdcName"` Provider string `json:"provider"` CDCNetwork string `json:"cdcNetwork"` ClientEncryption bool `json:"clientEncryption"` PasswordAuthentication bool `json:"passwordAuthentication"` UserAuthorization bool `json:"userAuthorization"` UsePrivateBroadcastRPCAddress bool `json:"usePrivateBroadcastRPCAddress"` PrivateIPOnly bool `json:"privateIPOnly"` EncryptionKeyID string `json:"encryptionKeyId,omitempty"` NodeCount int `json:"nodeCount,omitempty"` Nodes []*NodeStatusV1 `json:"nodes"` PrivateLink *PrivateLinkV1 `json:"privateLink,omitempty"` CDCStatus string `json:"cdcStatus,omitempty"` }
type DedicatedZookeeper ¶ added in v0.0.2
type DedicatedZookeeperUpdate ¶ added in v0.0.2
type DedicatedZookeeperUpdate struct {
ZookeeperNodeSize string `json:"zookeeperNodeSize"`
}
type ExternalCluster ¶ added in v0.0.2
type ExternalCluster struct { SecurityProtocol string `json:"securityProtocol,omitempty"` SSLTruststorePassword string `json:"sslTruststorePassword,omitempty"` BootstrapServers string `json:"bootstrapServers,omitempty"` SASLJAASConfig string `json:"saslJaasConfig,omitempty"` SASLMechanism string `json:"saslMechanism,omitempty"` SSLProtocol string `json:"sslProtocol,omitempty"` SSLEnabledProtocols string `json:"sslEnabledProtocols,omitempty"` Truststore string `json:"truststore,omitempty"` }
type FirewallRule ¶
type GCPConnectorSettings ¶ added in v0.0.2
type GCPSetting ¶ added in v0.0.2
type GCPSetting struct {
CustomVirtualNetworkID string `json:"customVirtualNetworkId,omitempty"`
}
type InstaOpenSearchUser ¶ added in v0.0.6
type KafkaCluster ¶ added in v0.0.2
type KafkaCluster struct { ClusterStatus `json:",inline"` Name string `json:"name"` KafkaVersion string `json:"kafkaVersion"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` SLATier string `json:"slaTier"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete"` AllowDeleteTopics bool `json:"allowDeleteTopics"` AutoCreateTopics bool `json:"autoCreateTopics"` BundledUseOnly bool `json:"bundledUseOnly"` ClientBrokerAuthWithMtls bool `json:"clientBrokerAuthWithMtls"` ClientToClusterEncryption bool `json:"clientToClusterEncryption"` DataCentres []*KafkaDataCentre `json:"dataCentres"` DedicatedZookeeper []*DedicatedZookeeper `json:"dedicatedZookeeper"` DefaultNumberOfPartitions int `json:"defaultNumberOfPartitions"` DefaultReplicationFactor int `json:"defaultReplicationFactor"` Kraft []*Kraft `json:"kraft,omitempty"` KarapaceRestProxy []*KarapaceRestProxy `json:"karapaceRestProxy"` KarapaceSchemaRegistry []*KarapaceSchemaRegistry `json:"karapaceSchemaRegistry"` PCIComplianceMode bool `json:"pciComplianceMode"` RestProxy []*RestProxy `json:"restProxy"` SchemaRegistry []*SchemaRegistry `json:"schemaRegistry"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` Description string `json:"description,omitempty"` }
type KafkaConnectAPIUpdate ¶ added in v0.0.2
type KafkaConnectAPIUpdate struct { DataCentres []*KafkaConnectDataCentre `json:"dataCentres,omitempty"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` }
type KafkaConnectCluster ¶ added in v0.0.2
type KafkaConnectCluster struct { ClusterStatus `json:",inline"` Name string `json:"name,omitempty"` KafkaConnectVersion string `json:"kafkaConnectVersion,omitempty"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` SLATier string `json:"slaTier,omitempty"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` CustomConnectors []*CustomConnectors `json:"customConnectors,omitempty"` TargetCluster []*TargetCluster `json:"targetCluster,omitempty"` DataCentres []*KafkaConnectDataCentre `json:"dataCentres,omitempty"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` Description string `json:"description,omitempty"` }
type KafkaConnectDataCentre ¶ added in v0.0.2
type KafkaConnectDataCentre struct { DataCentre `json:",inline"` ReplicationFactor int `json:"replicationFactor"` }
type KafkaDataCentre ¶ added in v0.0.2
type KafkaDataCentre struct { DataCentre `json:",inline"` PrivateLink []*PrivateLink `json:"privateLink,omitempty"` }
type KafkaInstAPIUpdateRequest ¶ added in v0.0.2
type KafkaInstAPIUpdateRequest struct { DataCentre []*KafkaDataCentre `json:"dataCentres"` DedicatedZookeeper []*DedicatedZookeeperUpdate `json:"dedicatedZookeeper,omitempty"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` }
type KafkaUser ¶ added in v0.0.2
type KafkaUser struct { Password string `json:"password,omitempty"` OverrideExistingUser bool `json:"overrideExistingUser,omitempty"` SASLSCRAMMechanism string `json:"saslScramMechanism,omitempty"` AuthMechanism string `json:"authMechanism"` ClusterID string `json:"clusterId"` InitialPermissions string `json:"initialPermissions"` Username string `json:"username"` }
type KarapaceRestProxy ¶ added in v0.0.2
type KarapaceSchemaRegistry ¶ added in v0.0.2
type KarapaceSchemaRegistry struct {
Version string `json:"version"`
}
type Kraft ¶ added in v0.1.2
type Kraft struct {
ControllerNodeCount int `json:"controllerNodeCount"`
}
type ManagedCluster ¶ added in v0.0.2
type Node ¶ added in v0.0.2
type Node struct { ID string `json:"id,omitempty"` Size string `json:"nodeSize,omitempty"` Status string `json:"status,omitempty"` Roles []string `json:"nodeRoles,omitempty"` PublicAddress string `json:"publicAddress,omitempty"` PrivateAddress string `json:"privateAddress,omitempty"` Rack string `json:"rack,omitempty"` }
type NodeReloadStatus ¶ added in v0.0.2
type NodeReloadStatus struct { NodeID string `json:"nodeId,omitempty"` OperationID string `json:"operationId,omitempty"` TimeCreated string `json:"timeCreated,omitempty"` TimeModified string `json:"timeModified,omitempty"` Status string `json:"status,omitempty"` Message string `json:"message,omitempty"` }
type NodeStatusV1 ¶ added in v0.0.2
type OpenSearchCluster ¶ added in v0.0.6
type OpenSearchCluster struct { ClusterStatus `json:",inline"` DataNodes []*OpenSearchDataNodes `json:"dataNodes,omitempty"` PCIComplianceMode bool `json:"pciComplianceMode"` ICUPlugin bool `json:"icuPlugin"` OpenSearchVersion string `json:"opensearchVersion"` AsynchronousSearchPlugin bool `json:"asynchronousSearchPlugin"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` KNNPlugin bool `json:"knnPlugin"` OpenSearchDashboards []*OpenSearchDashboards `json:"opensearchDashboards,omitempty"` ReportingPlugin bool `json:"reportingPlugin"` SQLPlugin bool `json:"sqlPlugin"` NotificationsPlugin bool `json:"notificationsPlugin"` DataCentres []*OpenSearchDataCentre `json:"dataCentres"` AnomalyDetectionPlugin bool `json:"anomalyDetectionPlugin"` LoadBalancer bool `json:"loadBalancer"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` Name string `json:"name"` BundledUseOnly bool `json:"bundledUseOnly"` ClusterManagerNodes []*ClusterManagerNodes `json:"clusterManagerNodes"` IndexManagementPlugin bool `json:"indexManagementPlugin"` SLATier string `json:"slaTier,omitempty"` AlertingPlugin bool `json:"alertingPlugin"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` Description string `json:"description,omitempty"` IngestNodes []*OpenSearchIngestNodes `json:"ingestNodes,omitempty"` }
type OpenSearchDashboards ¶ added in v0.0.6
type OpenSearchDataCentre ¶ added in v0.0.6
type OpenSearchDataCentre struct { DataCentre `json:",inline"` PrivateLink bool `json:"privateLink"` NumberOfRacks int `json:"numberOfRacks"` }
type OpenSearchDataNodes ¶ added in v0.0.6
type OpenSearchIngestNodes ¶ added in v0.1.3
type OpenSearchInstAPIUpdateRequest ¶ added in v0.0.6
type OpenSearchInstAPIUpdateRequest struct { DataNodes []*OpenSearchDataNodes `json:"dataNodes,omitempty"` OpenSearchDashboards []*OpenSearchDashboards `json:"opensearchDashboards,omitempty"` ClusterManagerNodes []*ClusterManagerNodes `json:"clusterManagerNodes"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` OpenSearchIngestNodes []*OpenSearchIngestNodes `json:"ingestNodes,omitempty"` }
type PGCluster ¶
type PGCluster struct { ID string `json:"id,omitempty"` Name string `json:"name"` PostgreSQLVersion string `json:"postgresqlVersion"` DataCentres []*PGDataCentre `json:"dataCentres"` SynchronousModeStrict bool `json:"synchronousModeStrict"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` SLATier string `json:"slaTier"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` PCIComplianceMode bool `json:"pciComplianceMode,omitempty"` CurrentClusterOperationStatus string `json:"currentClusterOperationStatus,omitempty"` Status string `json:"status,omitempty"` Description string `json:"description,omitempty"` Extensions []*PGExtension `json:"extensions,omitempty"` }
type PGClusterUpdate ¶ added in v0.1.3
type PGClusterUpdate struct { DataCentres []*PGDataCentre `json:"dataCentres"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` }
type PGConfigs ¶
type PGConfigs struct { ClusterID string `json:"clusterId,omitempty"` ConfigurationProperties []*ConfigurationProperties `json:"configurationProperties"` }
type PGDataCentre ¶
type PGDataCentre struct { DataCentre `json:",inline"` ClientToClusterEncryption bool `json:"clientToClusterEncryption"` InterDataCentreReplication []*PGInterDCReplication `json:"interDataCentreReplication,omitempty"` IntraDataCentreReplication []*PGIntraDCReplication `json:"intraDataCentreReplication"` PGBouncer []*PGBouncer `json:"pgBouncer,omitempty"` }
type PGExtension ¶ added in v0.1.5
type PGInterDCReplication ¶
type PGInterDCReplication struct {
IsPrimaryDataCentre bool `json:"isPrimaryDataCentre"`
}
type PGIntraDCReplication ¶
type PGIntraDCReplication struct {
ReplicationMode string `json:"replicationMode"`
}
type PrivateLink ¶
type PrivateLinkV1 ¶ added in v0.1.1
type PrivateLinkV1 struct {
IAMPrincipalARNs []string `json:"iamPrincipalARNs"`
}
type RackAllocationV1 ¶ added in v0.0.2
type RedisCluster ¶
type RedisCluster struct { ClusterStatus `json:",inline"` Name string `json:"name"` RedisVersion string `json:"redisVersion"` ClientToNodeEncryption bool `json:"clientToNodeEncryption"` PCIComplianceMode bool `json:"pciComplianceMode"` DataCentres []*RedisDataCentre `json:"dataCentres,omitempty"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` PasswordAndUserAuth bool `json:"passwordAndUserAuth"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` SLATier string `json:"slaTier"` Description string `json:"description,omitempty"` }
type RedisDataCentre ¶
type RedisDataCentre struct { DataCentre `json:",inline"` MasterNodes int `json:"masterNodes"` ReplicaNodes int `json:"replicaNodes"` ReplicationFactor int `json:"replicationFactor,omitempty"` PrivateLink []*PrivateLink `json:"privateLink,omitempty"` }
type RedisDataCentreUpdate ¶ added in v0.0.2
type RedisDataCentreUpdate struct { DataCentres []*RedisDataCentre `json:"dataCentres"` ResizeSettings []*ResizeSettings `json:"resizeSettings,omitempty"` }
type RedisUserUpdate ¶ added in v0.0.2
type ResizeRequest ¶
type ResizeSettings ¶ added in v0.1.3
type ResizeSettings struct { // Setting this property to true will notify the Instaclustr // Account's designated support contacts on resize completion NotifySupportContacts bool `json:"notifySupportContacts,omitempty"` // Number of concurrent nodes to resize during a resize operation Concurrency int `json:"concurrency,omitempty"` }
ResizeSettings determines how resize requests will be performed for the cluster
type RestProxy ¶ added in v0.0.2
type RestProxy struct { IntegrateRestProxyWithSchemaRegistry bool `json:"integrateRestProxyWithSchemaRegistry"` UseLocalSchemaRegistry bool `json:"useLocalSchemaRegistry,omitempty"` SchemaRegistryServerURL string `json:"schemaRegistryServerUrl,omitempty"` SchemaRegistryUsername string `json:"schemaRegistryUsername,omitempty"` SchemaRegistryPassword string `json:"schemaRegistryPassword,omitempty"` Version string `json:"version"` }
type SchemaRegistry ¶ added in v0.0.2
type SchemaRegistry struct {
Version string `json:"version"`
}
type TargetCadence ¶ added in v0.1.2
type TargetCassandra ¶
type TargetCluster ¶ added in v0.0.2
type TargetCluster struct { ExternalCluster []*ExternalCluster `json:"externalCluster,omitempty"` ManagedCluster []*ManagedCluster `json:"managedCluster,omitempty"` }
type TargetKafka ¶
type TargetOpenSearch ¶
type TopicConfigs ¶ added in v0.0.2
type TopicStatus ¶ added in v0.0.2
type TopicStatus struct { ID string `json:"id"` TopicConfigs []*TopicConfigs `json:"configs"` }
type TwoFactorDelete ¶
type TwoFactorDeleteV1 ¶ added in v0.0.2
type UpdateTopicConfigs ¶ added in v0.0.2
type UpdateTopicConfigs struct {
TopicConfigs []*TopicConfigs `json:"configs"`
}
type ZookeeperCluster ¶ added in v0.0.2
type ZookeeperCluster struct { ID string `json:"id,omitempty"` Name string `json:"name"` ZookeeperVersion string `json:"zookeeperVersion,omitempty"` CurrentClusterOperationStatus string `json:"currentClusterOperationStatus,omitempty"` Status string `json:"status,omitempty"` PrivateNetworkCluster bool `json:"privateNetworkCluster"` SLATier string `json:"slaTier"` TwoFactorDelete []*TwoFactorDelete `json:"twoFactorDelete,omitempty"` DataCentres []*ZookeeperDataCentre `json:"dataCentres"` Description string `json:"description,omitempty"` }
type ZookeeperDataCentre ¶ added in v0.0.2
type ZookeeperDataCentre struct { DataCentre `json:",inline"` ClientToServerEncryption bool `json:"clientToServerEncryption"` EnforceAuthSchemes []string `json:"enforceAuthSchemes,omitempty"` EnforceAuthEnabled bool `json:"enforceAuthEnabled"` }
Click to show internal directories.
Click to hide internal directories.