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> |