{"action":"created","issue":{"url":"https://api.github.com/repos/cncf/cluster/issues/18","repository_url":"https://api.github.com/repos/cncf/cluster","labels_url":"https://api.github.com/repos/cncf/cluster/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/cncf/cluster/issues/18/comments","events_url":"https://api.github.com/repos/cncf/cluster/issues/18/events","html_url":"https://github.com/cncf/cluster/issues/18","id":174620735,"number":18,"title":"Cluster access for Firmament/Poseidon","user":{"login":"ms705","id":192315,"avatar_url":"https://avatars.githubusercontent.com/u/192315?v=3","gravatar_id":"","url":"https://api.github.com/users/ms705","html_url":"https://github.com/ms705","followers_url":"https://api.github.com/users/ms705/followers","following_url":"https://api.github.com/users/ms705/following{/other_user}","gists_url":"https://api.github.com/users/ms705/gists{/gist_id}","starred_url":"https://api.github.com/users/ms705/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ms705/subscriptions","organizations_url":"https://api.github.com/users/ms705/orgs","repos_url":"https://api.github.com/users/ms705/repos","events_url":"https://api.github.com/users/ms705/events{/privacy}","received_events_url":"https://api.github.com/users/ms705/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-09-01T20:41:50Z","updated_at":"2016-10-19T15:54:21Z","closed_at":null,"body":"### First Name\r\nMalte\r\n\r\n### Last Name\r\nSchwarzkopf\r\n \r\n### Email\r\nmalte@camsas.org\r\n \r\n### Company/Organization\r\nCambridge Systems at Scale (CamSaS) / Firmament.io / MIT CSAIL\r\n \r\n### Job Title\r\nResearcher\r\n \r\n### Project Title\r\nFirmament and Poseidon scale-up evaluation\r\n \r\n### What existing problem or community challenge does this work address? ( Please include any past experience or lessons learned )\r\n* Better placement decisions in cluster schedulers; e.g., to avoid “noisy neighbors” and cross-workload interference.\r\n* Scalability of cluster scheduling using min-cost flow optimization (as in [Quincy](http://dl.acm.org/citation.cfm?id=1629601) and [Firmament](http://www.firmament.io)) on a real-world cluster.\r\n \r\n### Briefly describe the project\r\nIn our research, we developed the Firmament cluster scheduler, on which we have an upcoming paper appearing in [OSDI 2016](https://www.usenix.org/conference/osdi16). In this paper, we evaluate the scalability of Firmament’s min-cost flow optimization-based scheduling by replaying workload traces, and in a small-scale test-bed deployment. We would like to perform a real-world scale-up evaluation to further validate our results, and to explore the benefit of Firmament’s scheduling policies for real workloads running on a larger-scale clusters than we currently have access to.\r\n\r\nPoseidon (https://github.com/camsas/poseidon) is an integration of Firmament’s scheduling logic with Kubernetes: we have developed Poseidon as a drop-in replacement for the default Kubernetes scheduler (kube-scheduler). We would like to deploy Poseidon at scale and measure its performance in order to compare it against our own stand-alone research cluster manager and ensure that there are no undue performance penalties in either implementation.\r\n \r\n### Do you intend to measure specific metrics during the work? Please describe briefly\r\nYes, we hope to measure the following:\r\n\r\n1. Scheduling latency / placement delay, which quantifies the time between workload (pod/container) submission and the execution on a node.\r\n2. Placement quality / performance degradation over ideal, which measures the runtime on shared infrastructure compared to the ideal runtime on an otherwise idle machine or cluster.\r\n3. Packing efficiency, which measures the quality of a scheduling policy by shrinking the cluster until the workload no longer fits (see [source](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43103.pdf)).\r\n\r\n \r\n### Which members of the CNCF community and/or end-users would benefit from your work?\r\nThe Kubernetes project, via the Poseidon scheduler, which we are making available for anyone to use. Poseidon is API-compatible with `kube-scheduler` and can be deployed on existing Kubernetes clusters.\r\n\r\n### Is the code that you’re going be running 100% open source? If so, what is the URL or URLs where it is located?\r\nYes, see https://github.com/camsas/firmament and https://github.com/camsas/poseidon. \r\n\r\n### Do you commit to publishing your results and upstreaming the open source code resulting from your work? Do you agree to this within 2 months of cluster use?\r\nYes, we open-source all of our work on Firmament and Poseidon under the Apache 2.0 license. Our experimental results will be published as part of a peer-reviewed paper, a blog post, or a technical report.\r\n\r\n### Will your testing involve containers? If not, could it? What would be entailed in changing your processes to containerize your workload?\r\nYes, Poseidon schedules containers (via Kubernetes). Firmament’s standalone cluster manager has alpha support for container execution; we hope to improve this in the near future.\r\n \r\n### Are there identified risks which would prevent you from achieving significant results in the project ?\r\nThe only main risk is that the timing of cluster access may not work out well, e.g., coinciding with a major deadline, teaching, or a conference. We are a small team of two researchers, so our cycles are limited. We may also discover previously unknown scalability bottlenecks as a result of the testing, although we would consider this a success rather than a risk.\r\n\r\n### Have you requested CNCF cluster resources or access in the past? If ‘no’, please skip the next three questions.\r\nNo.\r\n \r\n### Please state your contributions to the open source community and any other relevant initiatives\r\nOur research software, data sets, experimental infrastructure, and scripts are open-source (https://github.com/camsas), and we contribute to the Kubernetes SIG-scheduling interest group.\r\nIf we use the CNCF cluster for a scale-up experiment mentioned in a research publication or blog post, we will acknowledge the support by the CNCF as we would acknowledge any other industrial support of our research.\r\n \r\n### Number of nodes requested (minimum 20 nodes, maximum 500 nodes). In Q3, maximum increases to 1000 nodes.\r\n100, with possibility to increase to 500.\r\n \r\n### Duration of request (minimum 24 hours, maximum 2 weeks)\r\n1 week.\r\n \r\n### With or Without an operating system (Restricted to CNCF pre-defined OS and versions)?\r\nWith OS, if Ubuntu (14.04 LTS or 16.04 LTS) is available.\r\n\r\n### How will this testing advance cloud native computing (specifically containerization, orchestration, microservices or some combination).\r\nIt will provide better container scheduling, potentially tighter packing of workloads with reduced interference, and validate the scalability of the min-cost flow optimization scheduling approach in a real-world environment.\r\n\r\n### Any other relevant details we should know about while preparing the infrastructure?\r\nSome of our experiments involve running applications that generate a high network load (i.e., saturating a 10 Gbit/s link).\r\n"},"comment":{"url":"https://api.github.com/repos/cncf/cluster/issues/comments/254856446","html_url":"https://github.com/cncf/cluster/issues/18#issuecomment-254856446","issue_url":"https://api.github.com/repos/cncf/cluster/issues/18","id":254856446,"user":{"login":"bprestonlf","id":17602522,"avatar_url":"https://avatars.githubusercontent.com/u/17602522?v=3","gravatar_id":"","url":"https://api.github.com/users/bprestonlf","html_url":"https://github.com/bprestonlf","followers_url":"https://api.github.com/users/bprestonlf/followers","following_url":"https://api.github.com/users/bprestonlf/following{/other_user}","gists_url":"https://api.github.com/users/bprestonlf/gists{/gist_id}","starred_url":"https://api.github.com/users/bprestonlf/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bprestonlf/subscriptions","organizations_url":"https://api.github.com/users/bprestonlf/orgs","repos_url":"https://api.github.com/users/bprestonlf/repos","events_url":"https://api.github.com/users/bprestonlf/events{/privacy}","received_events_url":"https://api.github.com/users/bprestonlf/received_events","type":"User","site_admin":false},"created_at":"2016-10-19T15:54:20Z","updated_at":"2016-10-19T15:54:20Z","body":"Approved"}}
{"actor":{"display_login":"bprestonlf"}}