diff options
author | Monty Taylor <mordred@inaugust.com> | 2016-06-02 05:03:32 +0300 |
---|---|---|
committer | Monty Taylor <mordred@inaugust.com> | 2016-06-06 13:29:27 +0200 |
commit | c1b76e1235a1a0f1bd5e4f1e501db80bd0adb56e (patch) | |
tree | d501a1870d1d351b827bcd283013ce4138ca9fc3 /src/talks/who-cares.hbs | |
parent | 8983bf26be1431afb9c68585d9725c427e99aecc (diff) |
Add cloud native fallacy talk
Diffstat (limited to 'src/talks/who-cares.hbs')
-rw-r--r-- | src/talks/who-cares.hbs | 196 |
1 files changed, 167 insertions, 29 deletions
diff --git a/src/talks/who-cares.hbs b/src/talks/who-cares.hbs index f2675a4..fdc1d2d 100644 --- a/src/talks/who-cares.hbs +++ b/src/talks/who-cares.hbs | |||
@@ -63,7 +63,7 @@ | |||
63 | 63 | ||
64 | 64 | ||
65 | <p class='fragment'>10-20k VMs per-day</p> | 65 | <p class='fragment'>10-20k VMs per-day</p> |
66 | <p class='fragment'>3 (soon to be 6) clouds</p> | 66 | <p class='fragment'>10 Cloud Regions in 7 clouds</p> |
67 | <p class='fragment'>Only using OpenStack APIs</p> | 67 | <p class='fragment'>Only using OpenStack APIs</p> |
68 | 68 | ||
69 | </section> | 69 | </section> |
@@ -102,33 +102,30 @@ | |||
102 | <h1>18 Terabytes of Log Data in six months</h1> | 102 | <h1>18 Terabytes of Log Data in six months</h1> |
103 | </section> | 103 | </section> |
104 | 104 | ||
105 | <section id="we-have-no-servers" class="slide level2"> | ||
106 | <h1>We have no servers</h1> | ||
107 | <ul> | ||
108 | <li>Rackspace Public Cloud</li> | ||
109 | <li>HP Helion Public Cloud</li> | ||
110 | <li>TripleO Community Cloud hosted at RedHat</li> | ||
111 | </ul> | ||
112 | <span class='fragment'> | ||
113 | <p>Coming soon:</p> | ||
114 | <ul> | ||
115 | <li>OVH Public Cloud</li> | ||
116 | <li>Blue Box Dedicated Cloud on SoftLayer</li> | ||
117 | <li>Infra Cloud hosted at HP</li> | ||
118 | <li>IBM Public Cloud</li> | ||
119 | </ul> | ||
120 | </span> | ||
121 | </section> | ||
122 | |||
123 | <section id="our-vms-are-everywhere" class="slide level2"> | 105 | <section id="our-vms-are-everywhere" class="slide level2"> |
124 | <h1>Our VMs are everywhere</h1> | 106 | <h1>Our VMs are everywhere</h1> |
107 | <h3>Public Clouds</h3> | ||
125 | <ul> | 108 | <ul> |
126 | <li>HP: Las Vegas, DC</li> | ||
127 | <li>Rackspace: Dallas, Chicago, DC</li> | 109 | <li>Rackspace: Dallas, Chicago, DC</li> |
128 | <li>RedHat: Phoenix</li> | 110 | <li>Internap: New York</li> |
129 | <li>OVH: Strassbourg, Gravelines</li> | 111 | <li>OVH: Strassbourg, Gravelines</li> |
112 | <li>Vexxhost: Montreal</li> | ||
113 | <li>OpenStack Innovation Center: San Antonio</li> | ||
114 | </ul> | ||
115 | <h3>Private Clouds</h3> | ||
116 | <ul> | ||
130 | <li>Blue Box: San Jose</li> | 117 | <li>Blue Box: San Jose</li> |
131 | <li>IBM: Amsterdam, Dallas, Franfurt, Hong Kong, Houston, London, Montreal, Paris, Querétaro, San Jose, São Paulo, Seattle, Singapore, Sydney, Tokyo, Toronto, DC</li> | 118 | <li>Red Hat: Phoenix</li> |
119 | </ul> | ||
120 | </section> | ||
121 | |||
122 | <section id="we-also-have-servers" class="slide level2"> | ||
123 | <h1>We also have servers</h1> | ||
124 | <h2>Infra Cloud</h2> | ||
125 | <ul> | ||
126 | <li>Hardware donated by HPE: Houston</li> | ||
127 | <li>Community run cloud using OpenStack Puppet</li> | ||
128 | <li>Bare Metal managed with Bifrost/Ironic</li> | ||
132 | </ul> | 129 | </ul> |
133 | </section> | 130 | </section> |
134 | 131 | ||
@@ -182,6 +179,141 @@ | |||
182 | </section> | 179 | </section> |
183 | 180 | ||
184 | <section class="slide level2"> | 181 | <section class="slide level2"> |
182 | <h1>How do we do this?</h1> | ||
183 | </section> | ||
184 | |||
185 | <section class="slide level2"> | ||
186 | <h1>Control plane</h1> | ||
187 | <h3>http://git.openstack.org/cgit/openstack-infra/system-config</h3> | ||
188 | <ul> | ||
189 | <li>All server config management in git</li> | ||
190 | <li>Puppet manages the servers: puppet apply</li> | ||
191 | <li>Ansible runs puppet: ansible puppet module</li> | ||
192 | <li>Ansible OpenStack Dynamic Inventory</li> | ||
193 | <li>Only thing not public are keys and secrets</li> | ||
194 | </ul> | ||
195 | </section> | ||
196 | |||
197 | <section class="slide level2"> | ||
198 | <h1>os-client-config</h1> | ||
199 | <h3>http://git.openstack.org/cgit/openstack/os-client-config</h3> | ||
200 | <p>A library to handle config information for openstack clients</p> | ||
201 | <p>Tracks differences in vendors that can't be discovered</p> | ||
202 | <p>In use in python-openstackclient and ansible</p> | ||
203 | </section> | ||
204 | |||
205 | <section class="slide level2"> | ||
206 | <h1>os-client-config</h1> | ||
207 | <p>~/.config/openstack/clouds.yaml</p> | ||
208 | <pre> | ||
209 | clouds: | ||
210 | vexxhost: | ||
211 | profile: vexxhost | ||
212 | auth: | ||
213 | project_name: d8af8a8f-a573-48e6-898a-af333b970a2d | ||
214 | username: 0b8c435b-cc4d-4e05-8a47-a2ada0539af1 | ||
215 | password: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX | ||
216 | region_name: ca-ymq-1 | ||
217 | dreamcompute: | ||
218 | profile: dreamhost | ||
219 | auth: | ||
220 | username: montay6 | ||
221 | project_name: dhc2111978 | ||
222 | password: XXXXXXXXXXXXX | ||
223 | region_name: RegionOne | ||
224 | </pre> | ||
225 | </section> | ||
226 | |||
227 | <section class="slide level2"> | ||
228 | <h1>shade</h1> | ||
229 | <h3>http://git.openstack.org/cgit/openstack-infra/shade</h3> | ||
230 | <p>A library to wrap business logic around client libraries</p> | ||
231 | <pre> | ||
232 | cloud.create_image('image-name', filename='image-filename.qcow2') | ||
233 | cloud.create_server('my-server', image='immage-name', auto_ip=True) | ||
234 | </pre> | ||
235 | <p>In use in Infra Nodepool and ansible</p> | ||
236 | </section> | ||
237 | |||
238 | <section class="slide level2"> | ||
239 | <h1>ansible</h1> | ||
240 | <p>Brand new modules, based on shade</p> | ||
241 | <p>Part of 2.0 release</p> | ||
242 | <pre> | ||
243 | - os_keypair: | ||
244 | cloud: hp-mordred | ||
245 | name: mordred | ||
246 | public_key_file: ~/.ssh/id_rsa.pub | ||
247 | - os_image: | ||
248 | cloud: hp-mordred | ||
249 | name: Monty Ubuntu | ||
250 | file: ubuntu.vhd | ||
251 | - os_server: | ||
252 | cloud: hp-mordred | ||
253 | name: my-server | ||
254 | flavor_ram: 1024 | ||
255 | image: Monty Ubuntu | ||
256 | </pre> | ||
257 | </section> | ||
258 | |||
259 | <section class="slide level2"> | ||
260 | <h1>ansible</h1> | ||
261 | <p>multi-cloud support</p> | ||
262 | <pre> | ||
263 | - os_keypair: | ||
264 | cloud: "{{ item }" | ||
265 | name: mordred | ||
266 | public_key_file: ~/.ssh/id_rsa.pub | ||
267 | with-items: | ||
268 | - vexxhost | ||
269 | - rackspace | ||
270 | - ovh | ||
271 | </pre> | ||
272 | </section> | ||
273 | |||
274 | <section class="slide level2"> | ||
275 | <h1>Ansible Role Cloud Launcher</h1> | ||
276 | <h2>http://git.openstack.org/cgit/openstack/ansible-role-cloud-launcher</h2> | ||
277 | <pre> | ||
278 | profiles: | ||
279 | - name: admin-clouds | ||
280 | flavors: | ||
281 | - name: aoclcompany.xlarge | ||
282 | ram: 128 | ||
283 | vcpus: 1 | ||
284 | - name: ops | ||
285 | images: | ||
286 | - name: ubuntu-trusty | ||
287 | filename: /home/ubuntu/trusty-server-cloudimg-amd64-disk1.img | ||
288 | - name: bootstrap-keypair | ||
289 | keypairs: | ||
290 | - name: bootstrap-key | ||
291 | public_key_file: /home/ubuntu/.ssh/id_rsa.pub | ||
292 | clouds: | ||
293 | - name: awesomecloud | ||
294 | profiles: | ||
295 | - admin-clouds | ||
296 | - bootstrap-keypair | ||
297 | - name: yaycloud-ops | ||
298 | oscc_cloud: yaycloud-opsuser | ||
299 | profiles: | ||
300 | - bootstrap-keypair | ||
301 | - ops | ||
302 | </pre> | ||
303 | </section> | ||
304 | |||
305 | <section class="slide level2"> | ||
306 | <h1>nodepool</h1> | ||
307 | <ul> | ||
308 | <li>Use shade to treat all cloud regions as one giant cloud</li> | ||
309 | <li>diskimage-builder makes identical base images for each</li> | ||
310 | <li>Pre-cache network artifacts in disk images</li> | ||
311 | <li>glean instead of cloud-init to handle no-DHCP on Rackspace</li> | ||
312 | <li>Pre-spins warm pool - always keep min-ready number of nodes</li> | ||
313 | </ul> | ||
314 | </section> | ||
315 | |||
316 | <section class="slide level2"> | ||
185 | <h1>OpenStack Works!</h1> | 317 | <h1>OpenStack Works!</h1> |
186 | <p class='fragment'>Why should you care?</p> | 318 | <p class='fragment'>Why should you care?</p> |
187 | </section> | 319 | </section> |
@@ -218,7 +350,7 @@ | |||
218 | <li>Put it near your users</li> | 350 | <li>Put it near your users</li> |
219 | <li>Don't put it in an NSA data center</li> | 351 | <li>Don't put it in an NSA data center</li> |
220 | <li>Locality Requirements</li> | 352 | <li>Locality Requirements</li> |
221 | <li class='fragment'>What if you have customers in Suriname?</li> | 353 | <li class='fragment'>What if you have customers in Hungary?</li> |
222 | </ul> | 354 | </ul> |
223 | </section> | 355 | </section> |
224 | 356 | ||
@@ -273,17 +405,23 @@ | |||
273 | <p>CityCloud: Sweden, UK</p> | 405 | <p>CityCloud: Sweden, UK</p> |
274 | <p>Elastx: Sweden</p> | 406 | <p>Elastx: Sweden</p> |
275 | <p>Datacentred: UK</p> | 407 | <p>Datacentred: UK</p> |
276 | <p>Ultimum: Prague</p> | ||
277 | <p>Enter Cloud Suite: Italy, Germany, Frankfurt</p> | 408 | <p>Enter Cloud Suite: Italy, Germany, Frankfurt</p> |
278 | <p>Internap: Netherlands, US</p> | 409 | <p>Internap: Netherlands, US</p> |
279 | <p>Ultimum: Prague</p> | 410 | <p>Ultimum: Czech Republic</p> |
411 | <p>Zetta: Norway</p> | ||
412 | </section> | ||
413 | |||
414 | <section class="slide level2"> | ||
415 | <h1>Managed Private Cloud</h1> | ||
416 | <h2>Bluebox: an IBM Company</h2> | ||
417 | <ul> | ||
418 | <li>Blue Box Dedicated: In any Softlayer Data Center Worldwide</p> | ||
419 | <li>Blue Box Local: In your data center</p> | ||
280 | </section> | 420 | </section> |
281 | 421 | ||
282 | <section class="slide level2"> | 422 | <section class="slide level2"> |
283 | <h1>Global Reach</h1> | 423 | <h1>Private Cloud Distro</h1> |
284 | <p>Blue Box Dedicated: In every Softlayer Data Center Worldwide</p> | 424 | <h3>Not listing them - I can't possibly remember them all</h3> |
285 | <h3>Including right here in Amsterdam</h3> | ||
286 | <p>Blue Box Local: Same thing, but in your DC</p> | ||
287 | </section> | 425 | </section> |
288 | 426 | ||
289 | <section class="slide level2"> | 427 | <section class="slide level2"> |