Git Product home page Git Product logo

Comments (2)

jefflill avatar jefflill commented on June 3, 2024

How about this for a command structure;

neon db create couchbase [--image xxx] --nodes:xx,yy,zz NAME

neon db inspect NAME
neon db ls
neon db rm NAME
...

from neonkube.

jefflill avatar jefflill commented on June 3, 2024

Giving up on special stateful service support for NeonClusters.

I started out implementing support for Couchbase. The first problem I ran into was that Couchbase didn't run in a container. Instances would start (maybe), run for a while and then appear to crash, with all listening ports being closed. I tried both Community and Enterprise. Community doesn't support Ubuntu 16.04 yet so maybe that's it but Enterprise which claims to support that didn't work either. Installing on a bare metal Ubuntu 14.04 worked right away.

The other thing is that, Couchbase needs to run with --net=host for production which means it can't be deployed as a service. Elasticsearch had to be deployed this way as well so the RAFT protocol would work. I'm starting to see a pattern here: clustered storage solutions end up not playing well with Docker services.

Couchbase also exposes several ports for internal communication as well as external APIs. This makes deploying load balancer rules somewhat tricky, especially if there's going to be multiple Couchbase deployments (which was the whole point of the exercise).

I just started looking at RabbitMQ this morning. Similar issues: multiple ports and the host name is important to the configuration.

The other thing is that for production, we'll want to tune memory, disk space, etc. for each database. We can can reserve memory and CPU with Docker but we can't do anything about disk. There also isn't a transparent way to ensure that Docker doesn't schedule other potentially conflicting services on the database nodes.

So, I'm officially giving up on trying to do something special here. I've spent a lot of time thinking about this, but fortunately only 3 days actually working on it.

from neonkube.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.