Comments (2)
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.
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)
- Cluster definition job settings HOT 1
- kubelet complaining: Nameserver limits exceeded HOT 2
- Calico pod subnet is hardcoded HOT 1
- Remove dependency on LegacyServiceAccountTokenNoAutoGeneration=false HOT 2
- MetalLB: possible solution for local desktop cluster ingress? HOT 1
- hyper-v RAM resource check not working
- hyper-v: neon cluster delete error
- Cluster setup failed: converter specified on 'Neon.Kube.Resources.Istio.CorsPolicy.AllowMethods' is not compatible HOT 2
- Upgrade to Ubuntu 22.04.3 (for Kernel 6.2) HOT 3
- Evaluate: Pod Security Admission
- Remove Pod Security Policies HOT 1
- cilium/istio followup
- k8s.ReplaceNamespacedCustomObject() extension isn't working HOT 3
- Cilium and Istio agents fighting over 05-cilium.conflist HOT 1
- Air-gapped clusters and Kubernetes container images
- zalan-postgres-health-check container image: do we still need this? HOT 3
- kubernetes-csi validating webhook HOT 1
- Helm Chart versions, values and upgrading HOT 2
- Port-forward/exec not working via OIDC
- Spot instances
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from neonkube.