All Projects → gosoon → Kubernetes Operator

gosoon / Kubernetes Operator

Licence: apache-2.0
kubernetes-operator is a control plane and manage all kubernetes cluster lifecycle.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Kubernetes Operator

Postgres Operator
Postgres operator creates and manages PostgreSQL clusters running in Kubernetes
Stars: ✭ 2,194 (+3496.72%)
Mutual labels:  operator, cluster
Nats Operator
NATS Operator
Stars: ✭ 471 (+672.13%)
Mutual labels:  operator, cluster
Kudo
Kubernetes Universal Declarative Operator (KUDO)
Stars: ✭ 849 (+1291.8%)
Mutual labels:  operator, cluster
Kopf
A Python framework to write Kubernetes operators in just few lines of code.
Stars: ✭ 971 (+1491.8%)
Mutual labels:  operator
Postdock
PostDock - Postgres & Docker - Postgres streaming replication cluster for any docker environment
Stars: ✭ 985 (+1514.75%)
Mutual labels:  cluster
Docker Redis Cluster
Dockerfile for Redis Cluster (redis 3.0+)
Stars: ✭ 1,035 (+1596.72%)
Mutual labels:  cluster
Terraform Digitalocean Docker Swarm Mode
Terraform module for provisioning a Docker Swarm mode cluster on DigitalOcean
Stars: ✭ 59 (-3.28%)
Mutual labels:  cluster
Venona
Codefresh runtime-environment agent
Stars: ✭ 31 (-49.18%)
Mutual labels:  cluster
Cluster Operator
cluster-operator creates, configures and helps manage StorageOS cluster on Kubernetes
Stars: ✭ 50 (-18.03%)
Mutual labels:  operator
Dbfs
Distributed Blockchain-based File Storage 📡
Stars: ✭ 45 (-26.23%)
Mutual labels:  cluster
Docker Swarm
🐳🐳🐳 This repository is part of a blog series on Docker Swarm example using VirtualBox, OVH Openstack, Azure and Amazon Web Services AWS
Stars: ✭ 43 (-29.51%)
Mutual labels:  cluster
Ansible Role Patroni
🐘 Ansible Role for Patroni
Stars: ✭ 40 (-34.43%)
Mutual labels:  cluster
Kubernetes Ovn Heterogeneous Cluster
Bootstrap a Kubernetes cluster that can run both Linux and Windows workloads on Google Cloud.
Stars: ✭ 48 (-21.31%)
Mutual labels:  cluster
Verwalter
A tool which manages cluster of services
Stars: ✭ 34 (-44.26%)
Mutual labels:  cluster
Interference
opensource distributed database with base JPA implementation and event processing support
Stars: ✭ 57 (-6.56%)
Mutual labels:  cluster
K8s Digitalocean Terraform
Deploy latest Kubernetes cluster on DigitalOcean using Terraform
Stars: ✭ 33 (-45.9%)
Mutual labels:  cluster
Fgci Ansible
🔬 Collection of the Finnish Grid and Cloud Infrastructure Ansible playbooks
Stars: ✭ 49 (-19.67%)
Mutual labels:  cluster
Xfailovercluster
This module contains DSC resources for deployment and configuration of Windows Server Failover Cluster.
Stars: ✭ 42 (-31.15%)
Mutual labels:  cluster
Ksync
Sync files between your local system and a kubernetes cluster.
Stars: ✭ 1,005 (+1547.54%)
Mutual labels:  cluster
Rediscluster Py
a Python interface to a Cluster of Redis key-value store
Stars: ✭ 46 (-24.59%)
Mutual labels:  cluster

kubernetes-operator

License Go Report Card

kubernetes-operator is a control plane and manage all kubernetes cluster lifecycle.

Introduce

kubernetes-operator contains several large parts

  • kubernetes-proxy: is a proxy and all requests pass through,look like a gateway.
  • kube-operator: is a kubernetes operator deploy in meta kubernetes and manage all kubernetes clusters(create、scale、delete).
  • cluster deploy: At present, the main focus is on kube-on-kube,and use ansible deploy kubernetes cluster and multiple kubernetes cluster applications, eg: metric-server、 promethus、log-polit、helm...
  • node-operator: Manage cluster upgrade, fault self-healing, etc.

The kubernetes-operator goal

  • kube-on-kube:Similar to Ant Financial kube-on-kube-operator.
  • kube-to-kube:The difference with kube-on-kube is that the master component of the business cluster is not in the meta cluster.
  • kube-to-cloud-kube : Manage clusters on multiple cloud environments.

Getting started

First you need to make two images,one is kubernetes-operator,the other one is ansibleinit。And deploy kubernetes-operator in your kubernetes-cluster,if you don't have a kubernetes cluster,please see scripts/REAEME.md and deploy one.

$ make images
// update your image address and deploy kubernetes-operator
$ kubectl create -f  deploy/
namespace/ecs-system created
customresourcedefinition.apiextensions.k8s.io/kubernetesclusters.ecs.yun.com created
deployment.apps/kubernetes-operator created
clusterrole.rbac.authorization.k8s.io/kubernetes-operator created
clusterrolebinding.rbac.authorization.k8s.io/kubernetes-operator created
serviceaccount/kubernetes-operator created


// CustomResources is KubernetesCluster,"ecs" for short in the kubernetes-operator
$ kubectl get crd
NAME                                  CREATED AT
kubernetesclusters.ecs.yun.com        2019-08-05T12:23:52Z

// update operator server in create_ecs.sh and create a cluster
$ bash test/create_ecs.sh  

$ kubectl get ecs
NAME           STATUS        AGE
test-cluster   Prechecking   45m

Development Plan

  1. support deploy k3s、kubeedge cluster
  2. support use kops deploy cluster
  3. support for multiple version deploy
  4. development node-operator
  5. support admission control

Detailed instructions

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].