97

GitHub - ianlewis/memcached-operator: A Kubernetes operator for memcached

 6 years ago
source link: https://github.com/ianlewis/memcached-operator
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Memcached Operator

memcached-operator is a Kubernetes Operator for deploying and managing a cluster of Memcached instances.

memcached-operator provides a single Service endpoint that memcached client applications can connect to to make use of the memcached cluster. It provides this via a memcached proxy which is automatically updated whenever memcached instances are added or removed from the cluster.

memcached-operator supports sharded and replicated pools of servers as well as combinations of both strategies.

diagram

See the documentation for more information.

Project Status

Project status: alpha

memcached-operator is still under active development and has not been extensively tested yet. Use at your own risk. Backward-compatibility is not supported for alpha releases.

Prerequisites

  • Version >= 1.10 of Kubernetes.

memcached-operator relies on subresources for CRDs which is in 1.10+

Quickstart

You can install the memcached-operator using the included helm chart. Check out the git repository and run this in the root directory.

$ helm install --name memcached-operator charts/memcached-operator

The easiest way to create a memcached cluster is using the memcached helm chart:

$ helm install --name sharded stable/memcached

You can then create a memcached proxy to connect to the cluster.

apiVersion: ianlewis.org/v1alpha1
kind: MemcachedProxy
metadata:
  name: sharded-example
spec:
  rules:
    type: "sharded"
    service:
      name: "sharded-memcached"
      port: 11211
$ kubectl apply -f docs/sharded-example.yaml

You can then access your memcached cluster via thesharded-memcachedservice. Check the documentation for more information.

Removal

You can remove the memcached-operator by deleting the helm release.

$ helm delete --purge memcached-operator

Development

Check out memcached-operator to your GOPATH

Building

memcached-operator can be built using the normal Go build tools. This will build a binary dynamically linked to glibc.

$ go build

You can build a fully statically linked binary as well:

$ make build

Similar projects

Disclaimers

This is not an official Google product


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK