github.com/technosophos/deis@v1.7.1-0.20150915173815-f9005256004b/docs/roadmap/roadmap.rst (about) 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 the open :ref:`planning`. 9 Each roadmap item describes a high-level capability or grouping of features that are deemed 10 important to the future of Deis. 11 12 Given the project's rapid :ref:`Release Schedule, <release_schedule>` roadmap items are designed to provide a sense of 13 direction over many releases. 14 15 Etcd Hardening 16 -------------- 17 18 We have recently seen various issues with etcd performance, which can cause 19 issues with Deis. We will focus on re-evaluating our implementation and use 20 of etcd in Deis, with a focus on performance and reliability. 21 22 This feature is tracked as GitHub issue `#4404`_. 23 24 Rigger 25 ------ 26 27 We want the provisioning process of CoreOS hosts to be as smooth as the 28 ``deisctl`` experience when users install and start Deis. We've started working 29 on a tool called `Rigger`_ which provisions hosts and deploys Deis on 30 any supported provider. 31 32 We're still defining the interface between Rigger and the provider-specific 33 provision logic. We'd love input from the community on this discussion in 34 `#4345`_. 35 36 New Default Scheduler 37 --------------------- 38 Deis now has support for Docker Swarm, Apache Mesos, and Google Kubernetes as 39 application schedulers. With the known limitations of fleet (primarily, not being 40 a resource-aware scheduler), we should investigate using a different scheduler 41 as our default. 42 43 This feature is tracked as GitHub issue `#4222`_. 44 45 Permissions and Teams 46 --------------------- 47 Deis deployments in larger organizations require more fine-grained control 48 over users and permissions. Implementation of teams and improved user permissions 49 are tracked in separate issues: 50 51 - [ ] `Permissions`_ 52 - [ ] `Teams`_ 53 54 Monitoring & Telemetry 55 ---------------------- 56 Deis installations today use custom solutions for monitoring, alerting and operational visibility. 57 Deis will standardize the monitoring interfaces and provide open source agent(s) that can be used to ship telemetry to arbitrary endpoints. 58 59 - [ ] Host Telemetry (cpu, memory, network, disk) 60 - [ ] Container Telemetry (cpu, memory, network, disk) 61 - [ ] Platform Telemetry (control plane, data plane) 62 - [ ] Controller Telemetry (app created, build created, containers scaled) 63 64 This feature is tracked as GitHub issue `#3699`_. 65 66 Stateless Logger 67 ---------------- 68 Users who have elected to run a Ceph-less cluster give up application logs since 69 ``deis-controller`` has nowhere to store them. To alleviate this, we plan to implement an in-memory ring buffer 70 for the ``deis-logger`` component, so that a reasonable period of recent logs is stored and can be queried with 71 ``deis logs``. 72 73 This feature is tracked as GitHub issue `#4000`_. 74 75 Internal Service Discovery 76 -------------------------- 77 To provide a better container networking experience, Deis must provide 78 internal service discovery for components to coordinate. 79 80 This feature is tracked as GitHub issue `#3072`_. 81 82 Update Service 83 -------------- 84 Deis must support 100% automated, zero-downtime updates of the control plane. 85 Like CoreOS, Deis clusters should be attached to an alpha, beta or stable channel and rely on an automatic update mechanism. 86 To accomplish this, Deis plans to use the `Google Omaha Protocol`_ as implemented by `CoreUpdate`_. 87 88 - [X] `Update client/agent`_ 89 - [ ] Update server 90 - [ ] `Automatic CoreOS upgrades`_ 91 - [ ] CI Integration 92 93 This feature is tracked as GitHub issue `#2106`_. 94 95 Deis Push 96 --------- 97 End-users should be able to push Docker-based applications into Deis from their local machine using ``deis push user/app``. 98 This works around a number of authentication issues with private registries and ``deis pull``. 99 100 - [ ] `Docker Registry v2`_ 101 - [ ] `Deis Push`_ 102 103 TTY Broker 104 ---------- 105 Today Deis cannot provide bi-directional streams needed for log tailing and interactive batch processes. 106 By having the :ref:`Controller` drive a TTY Broker component, Deis can securely open WebSockets 107 through the routing mesh. 108 109 - [ ] `TTY Broker component`_ 110 - [ ] `Interactive Deis Run`_ (``deis run bash``) 111 - [ ] `Log Tailing`_ (``deis logs -f``) 112 113 Service Broker 114 -------------- 115 In Deis, connections to :ref:`concepts_backing_services` are meant to be explicit and modeled as a series of environment variables. 116 Deis believes the Cloud Foundry `Service Broker API`_ is the best embodiment of this today. 117 118 - [ ] Deis Addons CLI (deis addons) 119 - [ ] PostgreSQL Service Broker 120 - [ ] Redis Service Broker 121 122 This feature is tracked as GitHub issue `#231`_. 123 124 .. _`#231`: https://github.com/deis/deis/issues/231 125 .. _`#2106`: https://github.com/deis/deis/issues/2106 126 .. _`#3072`: https://github.com/deis/deis/issues/3072 127 .. _`#3699`: https://github.com/deis/deis/issues/3699 128 .. _`#4000`: https://github.com/deis/deis/issues/4000 129 .. _`#4222`: https://github.com/deis/deis/issues/4222 130 .. _`#4345`: https://github.com/deis/deis/issues/4345 131 .. _`#4404`: https://github.com/deis/deis/issues/4404 132 .. _`Automatic CoreOS upgrades`: https://github.com/deis/deis/issues/1043 133 .. _`CoreUpdate`: https://coreos.com/docs/coreupdate/custom-apps/coreupdate-protocol/ 134 .. _`Deis Push`: https://github.com/deis/deis/issues/2680 135 .. _`Docker Registry v2`: https://github.com/deis/deis/issues/3814 136 .. _`Google Omaha Protocol`: https://code.google.com/p/omaha/wiki/ServerProtocol 137 .. _`Interactive Deis Run`: https://github.com/deis/deis/issues/117 138 .. _`like CoreOS`: https://coreos.com/releases/ 139 .. _`Log Tailing`: https://github.com/deis/deis/issues/465 140 .. _`Permissions`: https://github.com/deis/deis/issues/4150 141 .. _`Rigger`: https://github.com/deis/rigger 142 .. _`Service Broker API`: http://docs.cloudfoundry.org/services/api.html 143 .. _`Teams`: https://github.com/deis/deis/issues/4173 144 .. _`TTY Broker component`: https://github.com/deis/deis/issues/3808 145 .. _`Update client/agent`: https://github.com/deis/deis/issues/3811