diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..572e3c4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,188 @@ +### VisualStudioCode template +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +### JetBrains template +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml +.idea + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# SonarLint plugin +.idea/sonarlint/ + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +### Linux template +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### Go template +# If you prefer the allow list template instead of the deny list, see community template: +# https://github.com/github/gitignore/blob/main/community/Golang/Go.AllowList.gitignore +# +# Binaries for programs and plugins +*.exe +*.exe~ +*.dll +*.so +*.dylib + +# Test binary, built with `go test -c` +*.test + +# Output of the go coverage tool, specifically when used with LiteIDE +*.out + +# Dependency directories (remove the comment below to include it) +# vendor/ + +# Go workspace file +go.work + +### Windows template +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +### macOS template +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +bin/ +testbin/ \ No newline at end of file diff --git a/.markdownlint.yml b/.markdownlint.yml new file mode 100644 index 0000000..45d588e --- /dev/null +++ b/.markdownlint.yml @@ -0,0 +1,20 @@ +MD007: + indent: 4 + start_indented: false + +MD013: + line_length: 200 + heading_line_length: 80 + code_block_line_length: 200 + code_blocks: true + tables: true + headings: true + headers: true + strict: false + stern: false + +MD012: + maximum: 20 + +MD046: false +MD051: false \ No newline at end of file diff --git a/examples/alluxio/README.MD b/examples/alluxio/README.MD new file mode 100644 index 0000000..70bb0f2 --- /dev/null +++ b/examples/alluxio/README.MD @@ -0,0 +1,3 @@ +# alluxio + +TODO diff --git a/examples/commons/catalog.yaml b/examples/commons/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/commons/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/commons/cluster.yaml b/examples/commons/cluster.yaml new file mode 100644 index 0000000..e9f15e6 --- /dev/null +++ b/examples/commons/cluster.yaml @@ -0,0 +1,70 @@ +apiVersion: zncdata.dev/v1alpha1 +kind: Database +metadata: + labels: + app.kubernetes.io/name: database + app.kubernetes.io/instance: database-sample + app.kubernetes.io/part-of: commons-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: commons-operator + name: database-sample +spec: + databaseName: znc_prod + reference: databaseconnection-sample + credential: + existingSecret: database-sample-pg-user-1 +--- +apiVersion: zncdata.dev/v1alpha1 +kind: DatabaseConnection +metadata: + labels: + app.kubernetes.io/name: databaseconnection + app.kubernetes.io/instance: databaseconnection-sample + app.kubernetes.io/part-of: commons-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: commons-operator + name: databaseconnection-sample +spec: + provider: + postgres: + driver: org.postgresql.Driver + host: postgresql + port: 5432 + ssl: false + credential: + existingSecret: databaseconnect-sample-pg-root-1 +--- +apiVersion: zncdata.dev/v1alpha1 +kind: S3Bucket +metadata: + labels: + app.kubernetes.io/name: s3bucket + app.kubernetes.io/instance: s3bucket-sample + app.kubernetes.io/part-of: commons-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: commons-operator + name: s3bucket-sample +spec: + bucketName: znc-warehouse + reference: s3connection-sample + credential: + existSecret: s3bucket-sample-user-1 +--- +apiVersion: zncdata.dev/v1alpha1 +kind: S3Connection +metadata: + labels: + app.kubernetes.io/name: s3connection + app.kubernetes.io/instance: s3connection-sample + app.kubernetes.io/part-of: commons-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: commons-operator + name: s3connection-sample +spec: + endpoint: http://minio:9000 + region: us-east-1 + ssl: false + pathStyle: true + credential: + existSecret: s3connection-sample-root-1 + diff --git a/examples/commons/namespace.yaml b/examples/commons/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/commons/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/commons/operator-group.yaml b/examples/commons/operator-group.yaml new file mode 100644 index 0000000..94364ba --- /dev/null +++ b/examples/commons/operator-group.yaml @@ -0,0 +1,8 @@ +kind: OperatorGroup +apiVersion: operators.coreos.com/v1 +metadata: + name: kubedatastack + namespace: kubedatastack-operators +spec: + targetNamespaces: + - kubedatastack \ No newline at end of file diff --git a/examples/commons/subscription.yaml b/examples/commons/subscription.yaml new file mode 100644 index 0000000..35c60ca --- /dev/null +++ b/examples/commons/subscription.yaml @@ -0,0 +1,11 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: commons-sub + namespace: kubedatastack-operators +spec: + channel: stable + name: commons-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automated \ No newline at end of file diff --git a/examples/dolphinscheduler/catalog.yaml b/examples/dolphinscheduler/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/dolphinscheduler/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/dolphinscheduler/cluster.yaml b/examples/dolphinscheduler/cluster.yaml new file mode 100644 index 0000000..618f3bf --- /dev/null +++ b/examples/dolphinscheduler/cluster.yaml @@ -0,0 +1,95 @@ +apiVersion: dolphinscheduler.zncdata.dev/v1alpha1 +kind: DolphinschedulerCluster +metadata: + labels: + app.kubernetes.io/name: dolphinschedulercluster + app.kubernetes.io/instance: dolphinschedulercluster-sample + app.kubernetes.io/part-of: dolphinscheduler-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: dolphinscheduler-operator + name: dolphinschedulercluster-sample +spec: + clusterConfig: + zookeeperDiscoveryZNode: "sample-dolphinscheduler-znode" + database: + reference: database-sample + s3Bucket: + maxConnect: 10 + pathStyle_access: true + reference: s3bucket-sample + master: + image: + pullPolicy: IfNotPresent + roleGroups: + default: + replicas: 1 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + worker: + image: + pullPolicy: IfNotPresent + roleGroups: + default: + replicas: 1 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + + api: + image: + pullPolicy: IfNotPresent + roleGroups: + default: + replicas: 1 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + logging: + logging: + loggers: + logger1: + level: ERROR + logger2: + level: DEBUG + console: + level: WARN + file: + level: WARN + alerter: + image: + pullPolicy: IfNotPresent + roleGroups: + default: + replicas: 1 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + logging: + logging: + loggers: + logger1: + level: ERROR + logger2: + level: DEBUG + console: + level: WARN + file: + level: WARN + diff --git a/examples/dolphinscheduler/namespace.yaml b/examples/dolphinscheduler/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/dolphinscheduler/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/dolphinscheduler/operator-group.yaml b/examples/dolphinscheduler/operator-group.yaml new file mode 100644 index 0000000..94364ba --- /dev/null +++ b/examples/dolphinscheduler/operator-group.yaml @@ -0,0 +1,8 @@ +kind: OperatorGroup +apiVersion: operators.coreos.com/v1 +metadata: + name: kubedatastack + namespace: kubedatastack-operators +spec: + targetNamespaces: + - kubedatastack \ No newline at end of file diff --git a/examples/dolphinscheduler/subscription.yaml b/examples/dolphinscheduler/subscription.yaml new file mode 100644 index 0000000..5beb618 --- /dev/null +++ b/examples/dolphinscheduler/subscription.yaml @@ -0,0 +1,11 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: dolphinscheduler-sub + namespace: kubedatastack-operators +spec: + channel: stable + name: dolphinscheduler-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automated \ No newline at end of file diff --git a/examples/hbase/README.MD b/examples/hbase/README.MD new file mode 100644 index 0000000..186a1aa --- /dev/null +++ b/examples/hbase/README.MD @@ -0,0 +1,3 @@ +# hbase + +TODO diff --git a/examples/hdfs/catalog.yaml b/examples/hdfs/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/hdfs/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/hdfs/cluster.yaml b/examples/hdfs/cluster.yaml new file mode 100644 index 0000000..d5805e9 --- /dev/null +++ b/examples/hdfs/cluster.yaml @@ -0,0 +1,78 @@ +apiVersion: hdfs.zncdata.dev/v1alpha1 +kind: HdfsCluster +metadata: + labels: + app.kubernetes.io/name: hdfscluster + app.kubernetes.io/instance: hdfscluster-sample + app.kubernetes.io/part-of: hdfs-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: hdfs-operator + name: hdfscluster-sample +spec: + image: + repository: docker.stackable.tech/stackable/hadoop + tag: 3.3.4-stackable24.3.0 + clusterConfig: + zookeeperDiscoveryZNode: sample-hdfs + nameNode: + roleGroups: + default: + replicas: 2 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + logging: + namenode: + loggers: + test: + level: DEBUG + console: + level: WARN + file: + level: ERROR + formatNameNode: + loggers: + test-format: + level: DEBUG + journalNode: + roleGroups: + default: + replicas: 3 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + logging: + journalNode: + loggers: + test: + level: DEBUG + console: + level: WARN + file: + level: ERROR + dataNode: + roleGroups: + default: + replicas: 3 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + logging: + datanode: + loggers: + test: + level: DEBUG + console: + level: WARN \ No newline at end of file diff --git a/examples/hdfs/namespace.yaml b/examples/hdfs/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/hdfs/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/hdfs/operator-group.yaml b/examples/hdfs/operator-group.yaml new file mode 100644 index 0000000..94364ba --- /dev/null +++ b/examples/hdfs/operator-group.yaml @@ -0,0 +1,8 @@ +kind: OperatorGroup +apiVersion: operators.coreos.com/v1 +metadata: + name: kubedatastack + namespace: kubedatastack-operators +spec: + targetNamespaces: + - kubedatastack \ No newline at end of file diff --git a/examples/hdfs/subscription.yaml b/examples/hdfs/subscription.yaml new file mode 100644 index 0000000..14f540d --- /dev/null +++ b/examples/hdfs/subscription.yaml @@ -0,0 +1,11 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: hdfs-sub + namespace: kubedatastack-operators +spec: + channel: stable + name: hdfs-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automated \ No newline at end of file diff --git a/examples/hive/README.MD b/examples/hive/README.MD new file mode 100644 index 0000000..5832958 --- /dev/null +++ b/examples/hive/README.MD @@ -0,0 +1,3 @@ +# hive + +TODO diff --git a/examples/kafka/catalog.yaml b/examples/kafka/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/kafka/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/kafka/cluster.yaml b/examples/kafka/cluster.yaml new file mode 100644 index 0000000..b514937 --- /dev/null +++ b/examples/kafka/cluster.yaml @@ -0,0 +1,38 @@ +apiVersion: kafka.zncdata.dev/v1alpha1 +kind: KafkaCluster +metadata: + labels: + app.kubernetes.io/name: kafkacluster + app.kubernetes.io/instance: kafkacluster-sample + app.kubernetes.io/part-of: kafka-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: kafka-operator + name: kafkacluster-sample +spec: + image: + repository: docker.io/bitnami/kafka + clusterConfig: + zookeeperDiscoveryZNode: "sample-kafka-znode" + brokers: + roleGroups: + default: + replicas: 2 + config: + resources: + cpu: + min: 1 + max: 2 + memory: + limit: "3Gi" + logging: + broker: + loggers: + test: + level: DEBUG + console: + level: WARN + file: + level: ERROR + ssl: + enabled: true + jksPassword: "123456789" diff --git a/examples/kafka/namespace.yaml b/examples/kafka/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/kafka/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/kafka/operator-group.yaml b/examples/kafka/operator-group.yaml new file mode 100644 index 0000000..94364ba --- /dev/null +++ b/examples/kafka/operator-group.yaml @@ -0,0 +1,8 @@ +kind: OperatorGroup +apiVersion: operators.coreos.com/v1 +metadata: + name: kubedatastack + namespace: kubedatastack-operators +spec: + targetNamespaces: + - kubedatastack \ No newline at end of file diff --git a/examples/kafka/subscription.yaml b/examples/kafka/subscription.yaml new file mode 100644 index 0000000..5ebae66 --- /dev/null +++ b/examples/kafka/subscription.yaml @@ -0,0 +1,11 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: kafka-sub + namespace: kubedatastack-operators +spec: + channel: stable + name: kafka-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automated \ No newline at end of file diff --git a/examples/listener/README.MD b/examples/listener/README.MD new file mode 100644 index 0000000..61194c6 --- /dev/null +++ b/examples/listener/README.MD @@ -0,0 +1,3 @@ +# listener + +TODO diff --git a/examples/secret/README.MD b/examples/secret/README.MD new file mode 100644 index 0000000..9512844 --- /dev/null +++ b/examples/secret/README.MD @@ -0,0 +1,3 @@ +# secret + +TODO diff --git a/examples/spark/catalog.yaml b/examples/spark/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/spark/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/spark/cluster.yaml b/examples/spark/cluster.yaml new file mode 100644 index 0000000..f961443 --- /dev/null +++ b/examples/spark/cluster.yaml @@ -0,0 +1,58 @@ +apiVersion: spark.zncdata.dev/v1alpha1 +kind: SparkHistoryServer +metadata: + labels: + app.kubernetes.io/name: sparkhistoryserver + app.kubernetes.io/instance: sparkhistoryserver + app.kubernetes.io/part-of: spark-k8s + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: spark-k8s-operator + name: sparkhistoryserver-sample +spec: + image: + repository: bitnami/spark + tag: 3.1.1 + pullPolicy: IfNotPresent + clusterOperation: + stopped: false + clusterConfig: + # listenerClass: external-unstable + ingress: + enabled: true + annotations: + kubernetes.io/ingress.class: nginx + nginx.ingress.kubernetes.io/rewrite-target: / + host: spark-history.example.com + sparkHistory: + config: + resources: + cpu: + min: 100m + max: 200m + memory: + limit: 512Mi + eventLog: + enabled: true + mountMode: pvc + dir: /tmp + roleGroups: + default: + replicas: 1 + podOverride: + metadata: + labels: + foo: bar + config: + gracefulShutdownTimeout: 10s + logging: + sparkHistory: + console: + level: "INFO" + resources: + cpu: + min: 300m + max: 400m + memory: + limit: 612Mi + nodeSelector: + app: default \ No newline at end of file diff --git a/examples/spark/namespace.yaml b/examples/spark/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/spark/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/spark/operator-group.yaml b/examples/spark/operator-group.yaml new file mode 100644 index 0000000..94364ba --- /dev/null +++ b/examples/spark/operator-group.yaml @@ -0,0 +1,8 @@ +kind: OperatorGroup +apiVersion: operators.coreos.com/v1 +metadata: + name: kubedatastack + namespace: kubedatastack-operators +spec: + targetNamespaces: + - kubedatastack \ No newline at end of file diff --git a/examples/spark/subscription.yaml b/examples/spark/subscription.yaml new file mode 100644 index 0000000..17274cc --- /dev/null +++ b/examples/spark/subscription.yaml @@ -0,0 +1,10 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: spark-k8s-sub +spec: + channel: stable + name: spark-k8s-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automatic # or Automatic \ No newline at end of file diff --git a/examples/superset/README.MD b/examples/superset/README.MD new file mode 100644 index 0000000..bdc8c27 --- /dev/null +++ b/examples/superset/README.MD @@ -0,0 +1,3 @@ +# superset + +TODO diff --git a/examples/trino/catalog.yaml b/examples/trino/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/trino/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/trino/cluster.yaml b/examples/trino/cluster.yaml new file mode 100644 index 0000000..0aeeae9 --- /dev/null +++ b/examples/trino/cluster.yaml @@ -0,0 +1,75 @@ +apiVersion: trino.zncdata.dev/v1alpha1 +kind: TrinoCluster +metadata: + labels: + app.kubernetes.io/name: trinocluster + app.kubernetes.io/instance: trinocluster-sample + app.kubernetes.io/part-of: trino-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: trino-operator + name: trinocluster-sample +spec: + image: + repository: trinodb/trino + tag: "423" + pullPolicy: IfNotPresent + clusterConfig: + service: + port: 18080 + type: ClusterIP + ingress: + enabled: false + annotations: + kubernetes.io/ingress.class: traefik + nginx.ingress.kubernetes.io/rewrite-target: / + host: trino.example.com + clusterMode: true + coordinator: + config: + nodeProperties: + environment: "production" + dataDir: /data/trino + pluginDir: /usr/lib/trino/plugin + configProperties: + queryMaxMemory: "4GB" + path: /etc/trino + https: + enabled: false + exchangeManager: + name: "filesystem" + jvmProperties: + maxHeapSize: "4G" + gcMethodType: "UseG1GC" + gcHeapRegionSize: "32M" + roleGroups: + default: + replicas: 1 + config: + resources: + cpu: + min: "1" + max: "1.5" + memory: + limit: 1Gi + nodeSelector: + app: default-coordinator + worker: + config: + nodeProperties: + environment: "production" + dataDir: /data/trino + pluginDir: /usr/lib/trino/plugin + jvmProperties: + maxHeapSize: "8G" + gcMethodType: "UseG1GC" + gcHeapRegionSize: "32M" + configProperties: + memoryHeapHeadroomPerNode: "" + queryMaxMemoryPerNode: "1GB" + roleGroups: + default: + replicas: 1 + config: + nodeSelector: + app: default-worker + diff --git a/examples/trino/namespace.yaml b/examples/trino/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/trino/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/trino/operator-group.yaml b/examples/trino/operator-group.yaml new file mode 100644 index 0000000..94364ba --- /dev/null +++ b/examples/trino/operator-group.yaml @@ -0,0 +1,8 @@ +kind: OperatorGroup +apiVersion: operators.coreos.com/v1 +metadata: + name: kubedatastack + namespace: kubedatastack-operators +spec: + targetNamespaces: + - kubedatastack \ No newline at end of file diff --git a/examples/trino/subscription.yaml b/examples/trino/subscription.yaml new file mode 100644 index 0000000..7e03351 --- /dev/null +++ b/examples/trino/subscription.yaml @@ -0,0 +1,11 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: trino-sub + namespace: kubedatastack-operators +spec: + channel: stable + name: trino-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automated \ No newline at end of file diff --git a/examples/zookeeper/catalog.yaml b/examples/zookeeper/catalog.yaml new file mode 100644 index 0000000..4d9193a --- /dev/null +++ b/examples/zookeeper/catalog.yaml @@ -0,0 +1,15 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + name: kds-catalog + namespace: olm +spec: + sourceType: grpc + grpcPodConfig: + securityContextConfig: restricted + image: quay.io/zncdatadev/catalog:latest + displayName: kds catalog + publisher: zncdata-labs + updateStrategy: + registryPoll: + interval: 5m \ No newline at end of file diff --git a/examples/zookeeper/cluster.yaml b/examples/zookeeper/cluster.yaml new file mode 100644 index 0000000..c1068e0 --- /dev/null +++ b/examples/zookeeper/cluster.yaml @@ -0,0 +1,46 @@ +apiVersion: zookeeper.zncdata.dev/v1alpha1 +kind: ZookeeperCluster +metadata: + labels: + app.kubernetes.io/name: zookeepercluster + app.kubernetes.io/instance: zookeepercluster-sample + app.kubernetes.io/part-of: zookeeper-operator + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/created-by: zookeeper-operator + name: zookeepercluster-sample +spec: + image: + repository: docker.io/bitnami/zookeeper + tag: 3.9.1-debian-12-r15 + clusterConfig: + service: + type: NodePort + port: 2181 + server: + config: + resources: + cpu: + min: "1" + max: "2" + memory: + limit: "2Gi" + roleGroups: + default: + replicas: 3 + config: + resources: + cpu: + min: "1" + max: "2" + memory: + limit: "3Gi" + logging: + zookeeperCluster: + loggers: + test: + level: DEBUG + console: + level: WARN + file: + level: INFO + diff --git a/examples/zookeeper/namespace.yaml b/examples/zookeeper/namespace.yaml new file mode 100644 index 0000000..9c0e6f4 --- /dev/null +++ b/examples/zookeeper/namespace.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack-operators +--- +apiVersion: v1 +kind: Namespace +metadata: + name: kubedatastack diff --git a/examples/zookeeper/operator-group.yaml b/examples/zookeeper/operator-group.yaml new file mode 100644 index 0000000..d35e0f6 --- /dev/null +++ b/examples/zookeeper/operator-group.yaml @@ -0,0 +1,10 @@ +apiVersion: operators.coreos.com/v1 +kind: OperatorGroup +metadata: + name: zncdata-stack + namespace: kubedatastack-operators +spec: + # if not specified, the operator group will target all namespaces + # so the operator will be able to watch and manage resources in all namespaces + targetNamespaces: + - kubedatastack diff --git a/examples/zookeeper/subscription.yaml b/examples/zookeeper/subscription.yaml new file mode 100644 index 0000000..00f18a7 --- /dev/null +++ b/examples/zookeeper/subscription.yaml @@ -0,0 +1,11 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: zookeeper-sub + namespace: kubedatastack-operators +spec: + channel: stable + name: zookeeper-operator + source: kds-catalog + sourceNamespace: olm + installPlanApproval: Automated \ No newline at end of file