|
| 1 | +:title: Roadmap |
| 2 | +:description: The Deis project roadmap |
| 3 | + |
| 4 | +.. _roadmap: |
| 5 | + |
| 6 | +Deis Roadmap |
| 7 | +============ |
| 8 | +The Deis Roadmap is a community document created as part of our open :ref:`planning`. |
| 9 | +Each roadmap item describes a high-level capability or grouping of features we deem |
| 10 | +important to the future of Deis. |
| 11 | + |
| 12 | +Given our rapid :ref:`Release Schedule, <release_schedule>` roadmap items are designed to provide a sense of |
| 13 | +direction over many releases. |
| 14 | + |
| 15 | +Update Service |
| 16 | +-------------- |
| 17 | +Deis must support 100% automated, zero-downtime updates of the control plane. |
| 18 | +Like CoreOS, Deis clusters should be attached to an alpha, beta or stable channel and rely on an automatic update mechanism. |
| 19 | +To accomplish this, we plan to use the `Google Omaha Protocol`_ as implemented by `CoreUpdate`_. |
| 20 | + |
| 21 | + - [ ] Update client/agent |
| 22 | + - [ ] Update server |
| 23 | + - [ ] CI Integration |
| 24 | + |
| 25 | +Scheduling and Orchestration |
| 26 | +---------------------------- |
| 27 | +Today Deis uses `Fleet`_ for scheduling. Unfortunately, Fleet does not support |
| 28 | +resource-based scheduling which results in poor cluster utilization at scale. |
| 29 | + |
| 30 | +Fortunately, Deis is composable and can easily hot-swap orchestration APIs. |
| 31 | +Because the most promising container orchestration solutions are under heavy development, |
| 32 | +we are currently focused on releasing "technology previews". |
| 33 | + |
| 34 | +These technology previews will help the community try different orchestration solutions easily, |
| 35 | +report their findings and help guide the future direction of Deis. |
| 36 | + |
| 37 | + - [X] Swarm preview |
| 38 | + - [ ] Mesos preview |
| 39 | + - [ ] Kubernetes preview |
| 40 | + |
| 41 | +TTY Broker |
| 42 | +---------- |
| 43 | +Today Deis cannot provide bi-directional streams needed for log tailing and interactive batch processes. |
| 44 | +By having the :ref:`Controller` drive a TTY Broker component, we can securely open WebSockets |
| 45 | +through the routing mesh. |
| 46 | + |
| 47 | + - [ ] TTY Broker component |
| 48 | + - [ ] Interactive Deis Run (deis run bash) |
| 49 | + - [ ] Log Tailing (deis logs -f) |
| 50 | + |
| 51 | +Deis Push |
| 52 | +--------- |
| 53 | +End-users should be able to push Docker-based applications into Deis from their local machine using ``deis push user/app``. |
| 54 | +This works around a number of authentication issues with private registries and ``deis pull``. |
| 55 | + |
| 56 | + - [ ] Docker Registry v2 |
| 57 | + - [ ] Deis Push |
| 58 | + |
| 59 | +Service Broker |
| 60 | +-------------- |
| 61 | +In Deis, connections to :ref:`concepts_backing_services` are meant to be explicit and modeled as a series of environment variables. |
| 62 | +We believe the Cloud Foundry `Service Broker API`_ is the best embodiment of this today. |
| 63 | + |
| 64 | + - [ ] Deis Addons CLI (deis addons) |
| 65 | + - [ ] PostgreSQL Service Broker |
| 66 | + - [ ] Redis Service Broker |
| 67 | + |
| 68 | +Monitoring & Telemetry |
| 69 | +---------------------- |
| 70 | +Deis installations today use custom solutions for monitoring, alerting and operational visibility. |
| 71 | +We will standardize the monitoring interfaces and provide open source agent(s) that can be used to ship telemetry to arbitrary endpoints. |
| 72 | + |
| 73 | + - [ ] Host Telemetry (cpu, memory, network, disk) |
| 74 | + - [ ] Container Telemetry (cpu, memory, network, disk) |
| 75 | + - [ ] Platform Telemetry (control plane, data plane) |
| 76 | + - [ ] Controller Telemetry (app created, build created, containers scaled) |
| 77 | + |
| 78 | +.. _`like CoreOS`: https://coreos.com/releases/ |
| 79 | +.. _`Google Omaha Protocol`: https://code.google.com/p/omaha/wiki/ServerProtocol |
| 80 | +.. _`CoreUpdate`: https://coreos.com/docs/coreupdate/custom-apps/coreupdate-protocol/ |
| 81 | +.. _`Fleet`: https://github.com/coreos/fleet#readme |
| 82 | +.. _`Service Broker API`: http://docs.cloudfoundry.org/services/api.html |
0 commit comments