diff options
Diffstat (limited to 'src/talks')
| -rw-r--r-- | src/talks/zuul.hbs | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/src/talks/zuul.hbs b/src/talks/zuul.hbs index 814bc2b..ca1d4db 100644 --- a/src/talks/zuul.hbs +++ b/src/talks/zuul.hbs | |||
| @@ -43,12 +43,14 @@ | |||
| 43 | </section> | 43 | </section> |
| 44 | 44 | ||
| 45 | <section id="openstack-scale" class="slide level2"> | 45 | <section id="openstack-scale" class="slide level2"> |
| 46 | <h1> OpenStack Scale by the numbers</h1> | 46 | <h1> OpenStack Development Scale by the numbers</h1> |
| 47 | <p>When we say "massive scale"</p> | ||
| 47 | <ul> | 48 | <ul> |
| 48 | <li>1 KJPH (kilo-jobs / hour)</li> | 49 | <li>2 KJPH (kilo-jobs / hour)</li> |
| 49 | <li>2500 arbitrary developers</li> | 50 | <li>2500 arbitrary developers</li> |
| 50 | <li>1474 git repositories</li> | 51 | <li>1474 git repositories</li> |
| 51 | <li>11727 Jobs</li> | 52 | <li>11727 Jobs</li> |
| 53 | <li>450k lifetime changes</li> | ||
| 52 | <li>Merge 10k Changes / 42 days</li> | 54 | <li>Merge 10k Changes / 42 days</li> |
| 53 | </ul> | 55 | </ul> |
| 54 | <p class='fragment'>ansible has _received_ 13171 PRs (changes), has | 56 | <p class='fragment'>ansible has _received_ 13171 PRs (changes), has |
| @@ -131,18 +133,19 @@ | |||
| 131 | <section id="no-lack-of-trying" class="slide level2"> | 133 | <section id="no-lack-of-trying" class="slide level2"> |
| 132 | <h1>Not for lack of trying</h1> | 134 | <h1>Not for lack of trying</h1> |
| 133 | <ul> | 135 | <ul> |
| 134 | <li>OpenStack started on Jenkins (actually, on Hudson, remember that?)</li> | 136 | <li>Started on Jenkins (actually, on Hudson, remember that?)</li> |
| 135 | <li>We funded the Jenkins Jclouds Plugin</li> | 137 | <li>Funded the Jenkins JClouds Plugin</li> |
| 136 | <li>We did deep dev in the Gerrit Trigger Plugin</li> | 138 | <li>Did deep dev in the Gerrit Trigger Plugin</li> |
| 137 | <li>Maintain the SCP artifact plugin (added console log support)</li> | 139 | <li>Maintain the SCP artifact plugin (added console log support)</li> |
| 138 | <li>Added 0mq notification plugin</li> | 140 | <li>Added 0mq notification plugin</li> |
| 139 | <li>Added Gearman Worker plugin - allowed us to grow to 8 Masters/1000 slaves</li> | 141 | <li>Added Gearman Worker plugin (allowed us to grow to 8 Masters/1000 concurrent slaves)</li> |
| 140 | <li>We wrote Jenkins Job Builder</li> | 142 | <li>Wrote Jenkins Job Builder</li> |
| 141 | </ul> | 143 | </ul> |
| 142 | </section> | 144 | </section> |
| 143 | 145 | ||
| 144 | <section id="problems" class="slide level2"> | 146 | <section id="problems" class="slide level2"> |
| 145 | <h1>Jenkins Problems</h1> | 147 | <h1>Jenkins Problems</h1> |
| 148 | <p>Wasn't written originally to be Internet-facing</p> | ||
| 146 | <p>Security</p> | 149 | <p>Security</p> |
| 147 | <ul> | 150 | <ul> |
| 148 | <li>don't run WebUI on the internet</li> | 151 | <li>don't run WebUI on the internet</li> |
| @@ -150,7 +153,7 @@ | |||
| 150 | code on the master</li> | 153 | code on the master</li> |
| 151 | </ul> | 154 | </ul> |
| 152 | <p>Stability</p> | 155 | <p>Stability</p> |
| 153 | <ul><li>almost every Jenkins upgrade has broken us</li></ul> | 156 | <ul><li>Almost every Jenkins upgrade has broken us</li></ul> |
| 154 | <p>Scalability</p> | 157 | <p>Scalability</p> |
| 155 | <ul> | 158 | <ul> |
| 156 | <li>Jenkins has global mutexes, especially in plugins</li> | 159 | <li>Jenkins has global mutexes, especially in plugins</li> |
| @@ -158,7 +161,7 @@ | |||
| 158 | <li>We ran 8 Jenkins Masters with slaves sharded across them</li> | 161 | <li>We ran 8 Jenkins Masters with slaves sharded across them</li> |
| 159 | </ul> | 162 | </ul> |
| 160 | <p>Overkill</p> | 163 | <p>Overkill</p> |
| 161 | <ul><li>we only used it as a remote shell execution engine</li></ul> | 164 | <ul><li>We only used it as a remote shell execution engine</li></ul> |
| 162 | </section> | 165 | </section> |
| 163 | 166 | ||
| 164 | <section id="better-engine" class="slide level2"> | 167 | <section id="better-engine" class="slide level2"> |
| @@ -168,13 +171,13 @@ | |||
| 168 | <section id="zuul-v3" class="slide level2"> | 171 | <section id="zuul-v3" class="slide level2"> |
| 169 | <h1>Zuul V3</h1> | 172 | <h1>Zuul V3</h1> |
| 170 | <ul> | 173 | <ul> |
| 174 | <li>Jobs written in and executed with Ansible</li> | ||
| 171 | <li>Intended for broad use</li> | 175 | <li>Intended for broad use</li> |
| 172 | <li>triggers: gerrit, periodic, github | 176 | <li>Triggers: gerrit, periodic, github |
| 173 | (? bitbucket, stash, fedmsg, email)</li> | 177 | (? bitbucket, gitlab, stash, fedmsg, email)</li> |
| 174 | <li>reporters: gerrit, email, github (? bitbucket, stash, resultsdb) </li> | 178 | <li>Reporters: gerrit, email, github (? bitbucket, gitlab, stash, resultsdb) </li> |
| 175 | <li>node providers: pre-existing servers, dynamic cloud slaves (OpenStack, AWS, GCE), k8s clusters</li> | 179 | <li>Node providers: pre-existing servers, dynamic cloud slaves (OpenStack, AWS, GCE), k8s clusters</li> |
| 176 | <li>jobs written in and executed with ansible</li> | 180 | <li>In-repo config</li> |
| 177 | <li>in-repo config</li> | ||
| 178 | <li>Multi-node build clusters as first class resource</li> | 181 | <li>Multi-node build clusters as first class resource</li> |
| 179 | <li>Multi-Tenant</li> | 182 | <li>Multi-Tenant</li> |
| 180 | </ul> | 183 | </ul> |
| @@ -204,7 +207,6 @@ | |||
| 204 | <li>http://docs.openstack.org/infra/zuul/</li> | 207 | <li>http://docs.openstack.org/infra/zuul/</li> |
| 205 | <li>http://specs.openstack.org/openstack-infra/infra-specs/specs/zuulv3.html</li> | 208 | <li>http://specs.openstack.org/openstack-infra/infra-specs/specs/zuulv3.html</li> |
| 206 | <li>freenode:#zuul</li> | 209 | <li>freenode:#zuul</li> |
| 207 | <li>https://post-office.corp.redhat.com/mailman/listinfo/zuul-discuss</li> | ||
| 208 | <li>http://docs.openstack.org/infra/publications/zuul/#(1)</li> | 210 | <li>http://docs.openstack.org/infra/publications/zuul/#(1)</li> |
| 209 | </ul> | 211 | </ul> |
| 210 | </section> | 212 | </section> |
