Comments (7)
Proposed solution:
Create provider plugin architecture to support multiple cloud providers. Each plugin should implement necessary functions to provision, configure and install Kontena Node(s) to selected provider. Initially, have providers for Digital Ocean, AWS and Vagrant.
If user has configured some provider, it should be possible to provision nodes to this provider (automatically joining to a selected grid) through CLI.
from kontena.
Why not reuse existing solutions like docker machine?
from kontena.
Good point, we have been checking docker machine
as one possibility to provision machines. Right now kontena installation needs something more than plain server + docker provisioning. Basically we need to install deb packages that do some configuration to host machine... this is not supported by docker machine and that's why we are implementing our own lightweight tool.
from kontena.
I'm not sure that I understand why you depend on ubuntu. In comment #95 (comment), I showed how I started your existing Dockerfiles using docker-compose up
. That means both the api server and the agent run in a container. Thus, from my point of view only a plain server + docker provisioning is required.
Am I missing something?
from kontena.
We don't directly depend on ubuntu but atm we provide packages only for ubuntu. Kontena includes something more than just plain containers, mainly etcd2 and weave. Etcd2 is included in CoreOS and Weave can be installed (or replaced with Flannel) but then agents will miss automatic node discovery and other cool stuff that's baked into ubuntu packages. If you want to port those features to CoreOS systemd (cloud-config) files, here is the ubuntu package magic:
https://github.com/kontena/kontena/tree/master/agent/packaging/ubuntu
https://github.com/kontena/kontena/tree/master/server/packaging/ubuntu
from kontena.
We have now provisioners for vagrant and digitalocean. Both are using coreos-stable. Should we close this?
from kontena.
yes. i think this issue can be closed. the current design fulfills the original idea. if we want more provisioning engines, we'll create issue for each one of them in the future.
from kontena.
Related Issues (20)
- Renew LE certs automatically sooner than 7 days before expiration
- Node update does not take multiple nodes as params
- CLI specs fail because of a broken dependency HOT 1
- Support Letsencrypt wildcard certificates HOT 2
- Ruby 2.2 EOL
- bind-mounts of existing files on stateful containers fail: cannot mount volume over existing file, file exists
- kontena node rm can be used to remove connected Kontena Cloud nodes without terminating them
- CLI: warning: already initialized constant TTY::Screen::VERSION HOT 1
- E2e: Login timeout HOT 5
- CLI: kontena stack validate prompts can't be exited using ctrl-c
- Graceful shutdown e2e spec almost always fails HOT 1
- Env missing for setting global haproxy options HOT 3
- Kontena master insecure SSL configuration
- CLI omnibus debian builds broken with ftp://xmlsoft.org => 425 Security: Bad IP connecting HOT 3
- [CLI] Command autocompletion is out of date for some entries
- Gem.gunzip deprecation notice from unicode-display_width
- Can't login to newly created DigitalOcean kontena master. HOT 3
- Volume added to stack file does not get added to service on stack upgrade HOT 4
- Tag in fluentd forwarded logs is invalid if the node name contains dots
- Kontena site is down HOT 1
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 kontena.