https://github.com/greptimeteam/greptimedb-operator

Run GreptimeDB on Kubernetes.

https://github.com/greptimeteam/greptimedb-operator

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.6%) to scientific vocabulary

Keywords

cloud-native go greptimedb kubernetes time-series

Keywords from Contributors

observability distribution tracing sequences interactive projection shellcodes archival modular network-simulation
Last synced: 6 months ago · JSON representation

Repository

Run GreptimeDB on Kubernetes.

Basic Info
  • Host: GitHub
  • Owner: GreptimeTeam
  • License: apache-2.0
  • Language: Go
  • Default Branch: main
  • Homepage:
  • Size: 1.25 MB
Statistics
  • Stars: 46
  • Watchers: 9
  • Forks: 3
  • Open Issues: 14
  • Releases: 53
Topics
cloud-native go greptimedb kubernetes time-series
Created over 3 years ago · Last pushed 6 months ago
Metadata Files
Readme License Code of conduct

README.md

GreptimeDB Operator

license report GitHub release GoDoc Docker Pulls

Overview

The GreptimeDB Operator manages the GreptimeDB resources on Kubernetes using the Operator pattern. It is like an autopilot that automates the deployment, provisioning, and orchestration of the GreptimeDB cluster and standalone.

Features

The GreptimeDB Operator includes, but is not limited to, the following features:

  • Automated Provisioning

Automates the deployment of the GreptimeDB cluster and standalone on Kubernetes by providing CRD GreptimeDBCluster and GreptimeDBStandalone.

  • Multi-Cloud Support

Users can deploy the GreptimeDB on any Kubernetes cluster, including on-premises and cloud environments(like AWS, GCP, Aliyun etc.).

  • Scaling

Scale the GreptimeDB cluster as easily as changing the replicas field in the GreptimeDBCluster CR.

  • Monitoring Bootstrap

Bootstrap the GreptimeDB monitoring stack for the GreptimeDB cluster by providing the monitoring field in the GreptimeDBCluster CR.

Prerequisites

The GreptimeDB Operator requires at least Kubernetes 1.18.0.

Compatibility Matrix

| GreptimeDB Operator | API group/version | Supported GreptimeDB version | |---------------------|------------------------|------------------------------| | < v0.2.0 | greptime.io/v1alpha1 | < v0.12.0 | | ≥ v0.2.0 | greptime.io/v1alpha1 | ≥ v0.12.0 |

Quick Start

The fastest way to install the GreptimeDB Operator is to use bundle.yaml:

console kubectl apply -f \ https://github.com/GreptimeTeam/greptimedb-operator/releases/latest/download/bundle.yaml \ --server-side

The greptimedb-operator will be installed in the greptimedb-admin namespace. When the greptimedb-operator is running, you can see the following output:

console $ kubectl get pods -n greptimedb-admin NAME READY STATUS RESTARTS AGE greptimedb-operator-7947d785b5-b668p 1/1 Running 0 2m18s

Once the operator is running, you can experience the GreptimeDB by creating a basic standalone instance:

console cat <<EOF | kubectl apply -f - apiVersion: greptime.io/v1alpha1 kind: GreptimeDBStandalone metadata: name: basic spec: base: main: image: greptime/greptimedb:latest EOF

When the standalone is running, you can see the following output:

console $ kubectl get greptimedbstandalones basic NAME PHASE VERSION AGE basic Running latest 75s

You can use kubectl port-forward to access the GreptimeDB:

console kubectl port-forward svc/basic-standalone 4001:4001 4002:4002 4003:4003 4000:4000

Please refer to the quick-start to try more examples.

Examples

The GreptimeDB Operator provides a set of examples to help you understand how to use the GreptimeDB Operator. You can find the examples in the examples directory.

Deployment

For production use, we recommend deploying the GreptimeDB Operator with the GreptimeDB official Helm chart.

Documentation

For more information, please refer to the following documentation:

License

greptimedb-operator uses the Apache 2.0 license to strike a balance between open contributions and allowing you to use the software however you want.

Owner

  • Name: Greptime
  • Login: GreptimeTeam
  • Kind: organization
  • Email: info@greptime.com

Time-series database, for the cloud era

GitHub Events

Total
  • Create event: 32
  • Issues event: 22
  • Release event: 21
  • Watch event: 11
  • Delete event: 17
  • Member event: 1
  • Issue comment event: 86
  • Push event: 91
  • Pull request event: 185
  • Pull request review comment event: 135
  • Pull request review event: 243
  • Fork event: 1
Last Year
  • Create event: 32
  • Issues event: 22
  • Release event: 21
  • Watch event: 11
  • Delete event: 17
  • Member event: 1
  • Issue comment event: 86
  • Push event: 91
  • Pull request event: 185
  • Pull request review comment event: 135
  • Pull request review event: 243
  • Fork event: 1

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 139
  • Total Committers: 6
  • Avg Commits per committer: 23.167
  • Development Distribution Score (DDS): 0.331
Past Year
  • Commits: 46
  • Committers: 4
  • Avg Commits per committer: 11.5
  • Development Distribution Score (DDS): 0.413
Top Committers
Name Email Commits
zyy17 z****m@g****m 93
daviderli614 l****2@1****m 27
dependabot[bot] 4****] 7
liyang d****4@g****m 6
daviderli614 6****4 5
Ning Sun c****g@g****m 1
Committer Domains (Top 20 + Academic)
163.com: 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 55
  • Total pull requests: 339
  • Average time to close issues: 3 months
  • Average time to close pull requests: 4 days
  • Total issue authors: 7
  • Total pull request authors: 7
  • Average comments per issue: 0.62
  • Average comments per pull request: 0.76
  • Merged pull requests: 269
  • Bot issues: 0
  • Bot pull requests: 14
Past Year
  • Issues: 14
  • Pull requests: 214
  • Average time to close issues: 5 days
  • Average time to close pull requests: 4 days
  • Issue authors: 4
  • Pull request authors: 5
  • Average comments per issue: 0.14
  • Average comments per pull request: 0.9
  • Merged pull requests: 166
  • Bot issues: 0
  • Bot pull requests: 7
Top Authors
Issue Authors
  • zyy17 (40)
  • daviderli614 (10)
  • logwiser (1)
  • airycanon (1)
  • morigs (1)
  • WenyXu (1)
  • sunng87 (1)
Pull Request Authors
  • zyy17 (182)
  • daviderli614 (133)
  • dependabot[bot] (14)
  • WenyXu (4)
  • nicecui (4)
  • discord9 (1)
  • sunng87 (1)
Top Labels
Issue Labels
enhancement (13) feature/developing (8) CI/CD (7) bug (4) refactor (4) documentation (1)
Pull Request Labels
dependencies (14) go (5) documentation (5) size/L (4) manifest (4) size/XS (3) example (3) CI/CD (3) size/M (3) size/S (3) e2e (2) Invalid PR Title (2) enhancement (2) feature/developing (2) refactor (1) size/XL (1) tool (1) ci (1)

Packages

  • Total packages: 3
  • Total downloads: unknown
  • Total dependent packages: 4
    (may contain duplicates)
  • Total dependent repositories: 2
    (may contain duplicates)
  • Total versions: 162
proxy.golang.org: github.com/GrepTimeTeam/greptimedb-operator
  • Versions: 54
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.6%
Average: 5.8%
Dependent repos count: 6.0%
Last synced: 6 months ago
proxy.golang.org: github.com/GreptimeTeam/greptimedb-operator
  • Versions: 54
  • Dependent Packages: 4
  • Dependent Repositories: 2
Rankings
Dependent packages count: 2.8%
Dependent repos count: 3.5%
Average: 6.4%
Stargazers count: 7.9%
Forks count: 11.2%
Last synced: 6 months ago
proxy.golang.org: github.com/greptimeteam/greptimedb-operator
  • Versions: 54
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Stargazers count: 4.5%
Forks count: 6.1%
Average: 6.7%
Dependent packages count: 7.0%
Dependent repos count: 9.3%
Last synced: 6 months ago

Dependencies

.github/workflows/ci.yaml actions
  • actions/checkout v3 composite
  • actions/setup-go v3 composite
.github/workflows/pr-title-checker.yaml actions
  • thehanimo/pr-title-checker v1.3.4 composite
.github/workflows/release.yaml actions
  • actions/checkout v3 composite
  • docker/build-push-action v3 composite
  • docker/login-action v2 composite
  • docker/setup-buildx-action v2 composite
  • docker/setup-qemu-action v2 composite
  • softprops/action-gh-release v1 composite
docker/initializer/Dockerfile docker
  • golang 1.18 build
  • ubuntu 22.04 build
docker/operator/Dockerfile docker
  • golang 1.18 build
  • ubuntu 22.04 build
go.mod go
  • github.com/BurntSushi/toml v1.2.1
  • github.com/PuerkitoBio/purell v1.1.1
  • github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578
  • github.com/beorn7/perks v1.0.1
  • github.com/cespare/xxhash/v2 v2.1.2
  • github.com/coreos/go-semver v0.3.0
  • github.com/coreos/go-systemd/v22 v22.3.2
  • github.com/davecgh/go-spew v1.1.1
  • github.com/emicklei/go-restful v2.9.5+incompatible
  • github.com/evanphx/json-patch v4.12.0+incompatible
  • github.com/fsnotify/fsnotify v1.5.1
  • github.com/go-logr/logr v1.2.0
  • github.com/go-logr/zapr v1.2.0
  • github.com/go-openapi/jsonpointer v0.19.5
  • github.com/go-openapi/jsonreference v0.19.5
  • github.com/go-openapi/swag v0.19.14
  • github.com/go-sql-driver/mysql v1.6.0
  • github.com/gogo/protobuf v1.3.2
  • github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
  • github.com/golang/protobuf v1.5.2
  • github.com/google/gnostic v0.5.7-v3refs
  • github.com/google/go-cmp v0.5.8
  • github.com/google/gofuzz v1.1.0
  • github.com/google/uuid v1.1.2
  • github.com/imdario/mergo v0.3.13
  • github.com/inconshreveable/mousetrap v1.0.0
  • github.com/josharian/intern v1.0.0
  • github.com/json-iterator/go v1.1.12
  • github.com/mailru/easyjson v0.7.6
  • github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369
  • github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
  • github.com/modern-go/reflect2 v1.0.2
  • github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822
  • github.com/onsi/ginkgo/v2 v2.1.4
  • github.com/onsi/gomega v1.20.1
  • github.com/pkg/errors v0.9.1
  • github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.52.0
  • github.com/prometheus/client_golang v1.12.1
  • github.com/prometheus/client_model v0.2.0
  • github.com/prometheus/common v0.32.1
  • github.com/prometheus/procfs v0.7.3
  • github.com/spf13/cobra v1.4.0
  • github.com/spf13/pflag v1.0.5
  • go.etcd.io/etcd/api/v3 v3.5.4
  • go.etcd.io/etcd/client/pkg/v3 v3.5.4
  • go.etcd.io/etcd/client/v3 v3.5.4
  • go.uber.org/atomic v1.7.0
  • go.uber.org/multierr v1.6.0
  • go.uber.org/zap v1.19.1
  • golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4
  • golang.org/x/oauth2 v0.0.0-20211104180415-d3ed0bb246c8
  • golang.org/x/sys v0.0.0-20220422013727-9388b58f7150
  • golang.org/x/term v0.0.0-20210927222741-03fcf44c2211
  • golang.org/x/text v0.3.7
  • golang.org/x/time v0.0.0-20220210224613-90d013bbcef8
  • gomodules.xyz/jsonpatch/v2 v2.2.0
  • google.golang.org/appengine v1.6.7
  • google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368
  • google.golang.org/grpc v1.40.0
  • google.golang.org/protobuf v1.28.0
  • gopkg.in/inf.v0 v0.9.1
  • gopkg.in/yaml.v2 v2.4.0
  • gopkg.in/yaml.v3 v3.0.1
  • k8s.io/api v0.24.0
  • k8s.io/apiextensions-apiserver v0.24.0
  • k8s.io/apimachinery v0.24.0
  • k8s.io/client-go v0.24.0
  • k8s.io/component-base v0.24.0
  • k8s.io/klog/v2 v2.60.1
  • k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42
  • k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9
  • sigs.k8s.io/controller-runtime v0.12.1
  • sigs.k8s.io/json v0.0.0-20211208200746-9f7c6b3444d2
  • sigs.k8s.io/structured-merge-diff/v4 v4.2.1
  • sigs.k8s.io/yaml v1.3.0
go.sum go
  • 898 dependencies
.github/workflows/dev-build.yaml actions
  • actions/checkout v4 composite
  • docker/build-push-action v5 composite
  • docker/login-action v3 composite
  • docker/setup-buildx-action v3 composite
  • docker/setup-qemu-action v3 composite