DevOpsPorto Meetup17: The Return of the Dull Stack Engineer by Kris Buytaert

DevOpsPorto Meetup17: The Return of the Dull Stack Engineer by Kris Buytaert

Talk delivered by Kris Buytaert

A2c14a1c4e16aa337c7d36abe7d1cf8f?s=128

DevOpsPorto

June 19, 2018
Tweet

Transcript

  1. The Return of the Dull The Return of the Dull

    Stack Engineer Stack Engineer Kris Buytaert @krisbuytaert
  2. Kris Buytaert Kris Buytaert • I used to be a

    Dev, I used to be a Dev, • Then Became an Op Then Became an Op • CTO and Open Source Consultant CTO and Open Source Consultant @ @inuits.eu inuits.eu • Everything is a freaking DNS Everything is a freaking DNS Problem Problem • Evangelizing devops Evangelizing devops • Organiser of #devopsdays, Organiser of #devopsdays, #cfgmgmtcamp, #loadays, …. #cfgmgmtcamp, #loadays, ….
  3. C(L)AMS C(L)AMS • Culture Culture • (Lean) (Lean) • Automation

    Automation • Measurement Measurement • Sharing Sharing Damon Edwards and John Damon Edwards and John Willis
  4. A global movement to improve the A global movement to

    improve the quality of software delivery leveraging quality of software delivery leveraging Open Source experience, started in Gent Open Source experience, started in Gent in 2009 in 2009
  5. Because the old days: Because the old days: • “

    “Put this Code Live, here's a tarball” Put this Code Live, here's a tarball” NOW! NOW! • What dependencies ? What dependencies ? • No machines available ? No machines available ? • What database ? What database ? • Security ? Security ? • High Availability ? High Availability ?
  6. 10 days into operations 10 days into operations

  7. Topic Evolution : Culture Topic Evolution : Culture • Agile,

    Kanban, Lean Agile, Kanban, Lean • Startups as examples Startups as examples • Unicorns Unicorns • Poster Childs Poster Childs • Agile, Fake Agile, Less, Agile, Fake Agile, Less, Safe, Safe, • Enterprises as Enterprises as examples examples • Engage management Engage management • Burnout Burnout
  8. Topic Evolution : Automation Topic Evolution : Automation • Cfengine,

    Puppet, Chef Cfengine, Puppet, Chef • Mcollective, Noah, Mcollective, Noah, Rundeck Rundeck • Hudson, Jenkins Hudson, Jenkins • EC2, OpenStack, EC2, OpenStack, Cloudstack, Cloudstack, Eucalyptus,OpenNebul Eucalyptus,OpenNebul a, openQRM a, openQRM • Bash in Yaml “Basic” Bash in Yaml “Basic” • Ansible, Rundeck, Ansible, Rundeck, Choria Choria • Jenkins, GitlabCI, Jenkins, GitlabCI, CircleCI, TravisCI CircleCI, TravisCI • EC2, GCE, Azure, EC2, GCE, Azure, OpenStack, OpenStack,
  9. Topic Evolution : Automation Topic Evolution : Automation • Xen,

    KVM, openVZ, lxc Xen, KVM, openVZ, lxc • Vagrant Vagrant • Linux-HA, CoroSync Linux-HA, CoroSync • Ceph, Gluster, DRBD, Ceph, Gluster, DRBD, • Docker , Docker, Docker , Docker, Docker, Docker, Moby, Docker, Docker, Moby, Rkt, lxc Rkt, lxc • CR-IO CR-IO • Docker , Docker, Docker , Docker, Dockrer,Mesos, Dockrer,Mesos, Kubernetes Kubernetes • NFS NFS
  10. Topic Evolution : Monitoring Topic Evolution : Monitoring • Nagios

    Nagios • Cacti Cacti • Munin Munin • RRD RRD • Zenoss, Zabbix Zenoss, Zabbix • #monitoringsucks #monitoringsucks • Icinga Icinga • ELK ELK • Graphite + Grafana Graphite + Grafana • Collectd Collectd • Prometheus Prometheus • #monitoringlove #monitoringlove
  11. Culture vs Tools Culture vs Tools

  12. These Days These Days • “ “Put this Code Live,

    here's a Docker Put this Code Live, here's a Docker Container ” Container ” • No machines available ? No machines available ? • What database ? Where to store the What database ? Where to store the data ? data ? • Security ? What distro is this even ? Security ? What distro is this even ? Bad Cows ? Bad Cows ? • How do we monitor his ? How do we monitor his ? • Backups ? Backups ? • How did you build this ? How did you build this ?
  13. Tools will not fix your Tools will not fix your

    broken culture broken culture Tooling hype is not helping Tooling hype is not helping
  14. Hype Season Hype Season • Conference Visitors numbers skyrocket Conference

    Visitors numbers skyrocket • OpenStack 3000+ marketeers OpenStack 3000+ marketeers • DockerCon : 1000+ devs & unicorns DockerCon : 1000+ devs & unicorns • Kube Con : 1500+ unicorns & vendors Kube Con : 1500+ unicorns & vendors • Everybody claims to be doing it , nobody Everybody claims to be doing it , nobody is actually doing it. is actually doing it.
  15. Why adopt shiny new stuff ? Why adopt shiny new

    stuff ? • Attention Span ? Attention Span ? • Resume building ? Resume building ? • 0.5 year = novice in 20 techs 0.5 year = novice in 20 techs vs vs • 7 year = expert in 4 techs 7 year = expert in 4 techs
  16. Works on My Machine Works on My Machine

  17. New != Better New != Better • It’s called Bleeding

    edge for a It’s called Bleeding edge for a reason reason • Missing Features Missing Features • Operatability Operatability • Stability Stability
  18. Hello world today Hello world today • Micro service architecture

    Micro service architecture • Displaying content in a file Displaying content in a file • Kubernetes 2.6+ Storage Kubernetes 2.6+ Storage • OpenStack OpenStack
  19. Complexity is the Complexity is the enemy of reliability enemy

    of reliability
  20. U are not facebook U are not facebook

  21. U are not Linkedin U are not Linkedin • Kafka

    is awesome Kafka is awesome • But you have 100 messages an hour But you have 100 messages an hour
  22. Welcome to Europe Welcome to Europe

  23. Why don’t ops adopt ? Why don’t ops adopt ?

    • They do .. They do .. • It just takes more time It just takes more time • More worries More worries • More care More care
  24. Improve your sleep Improve your sleep Put your {devs,managers,qa} Put

    your {devs,managers,qa} ON CALL ! ON CALL !
  25. Why don’t ops adopt ? Why don’t ops adopt ?

    • We already fixed that problem We already fixed that problem • We have a different use case We have a different use case • That won’t work because That won’t work because • A A • B B • C C • Cool lets try it .. Cool lets try it ..
  26. Puppet Adoption Puppet Adoption • Focus on the wrong part

    Focus on the wrong part • Expert in Puppet Expert in Puppet • Doesn’t understand apache config Doesn’t understand apache config
  27. Operations trying to adopt Operations trying to adopt

  28. $$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$ • We don’t have time We don’t have

    time • Initial Budget was too low, Initial Budget was too low, unrealistic unrealistic • Existing Technical Debt Existing Technical Debt • Firefighting Firefighting • Time pressured project Time pressured project
  29. Operations Developers Security

  30. Workload is inverted Workload is inverted • X devs work

    on 1-2 concurrent X devs work on 1-2 concurrent projects projects • X/20 ops/security work on all the X/20 ops/security work on all the projects the devs touched over the projects the devs touched over the past 5 years past 5 years • AND need to build the next gen AND need to build the next gen platform platform
  31. • Grumpy Grumpy • Woken up one Woken up one

    to many times to many times for the wrong for the wrong reason reason • Old , aka Old , aka Experienced Experienced Typical Ops Dude Typical Ops Dude
  32. None
  33. None
  34. Devops = Cool Devops = Cool • All the cool

    kids are doing this All the cool kids are doing this • We want to be cool We want to be cool • People only want to work for cool People only want to work for cool companies companies • Banks etc are boring Banks etc are boring
  35. FOMO FOMO • We need to do something Cool We

    need to do something Cool • Docker Docker Docker Docker Docker Docker • Bi Modal Bi Modal
  36. Broken Strategies Broken Strategies • Hiring Devops Engineers Hiring Devops

    Engineers • Building Devops Teams Building Devops Teams • Docker Docker Docker => VM’s as Docker Docker Docker => VM’s as Containers Containers s/ops/oops/g; s/ops/oops/g;
  37. Tools will not fix your Tools will not fix your

    broken culture broken culture Tooling hype is not helping Tooling hype is not helping
  38. None
  39. YOLO YOLO • Startup Startup • VC VC • Exit

    Strategy Exit Strategy • Business Business • Customer Customer • Survival Survival
  40. Late Adoption Late Adoption • You need to do IAC

    You need to do IAC • We don’t need IAC We don’t need IAC • You really need to do IAC You really need to do IAC • IAC is too difficult for us .. IAC is too difficult for us .. • Really you need to do IAC Really you need to do IAC • We’re doing Ansible now … We’re doing Ansible now …
  41. None
  42. 0 day software 0 day software 0900: “Whow Hashicorp released

    0900: “Whow Hashicorp released Consul X.Y” Consul X.Y” Let’s have this in prod by this Let’s have this in prod by this afternoon afternoon Ego driven development Ego driven development
  43. R&D vs Prod R&D vs Prod • Schedule time to

    Research new topics Schedule time to Research new topics • Not all of them are irrelevant Not all of them are irrelevant • But limit the number of patterns you need to manage But limit the number of patterns you need to manage • e.g Limited number of OS Variants, Deployment e.g Limited number of OS Variants, Deployment Patterns, Storage Backends Patterns, Storage Backends
  44. Stop Dreaming Stop Dreaming There is no way your 3

    person ops team can manage There is no way your 3 person ops team can manage and scale VMWare, EC2, Azure, OpenStack, RHEV, and scale VMWare, EC2, Azure, OpenStack, RHEV, Gluster, DRBD, LibVirt,NFS, Ceph, Mongo, MySQL, Gluster, DRBD, LibVirt,NFS, Ceph, Mongo, MySQL, PgSQL, Cassandra, mcollective, Rabbit, collectd, PgSQL, Cassandra, mcollective, Rabbit, collectd, dhcpd, sonar, aptly,ActiveMQ, Kafka, Nomad, dhcpd, sonar, aptly,ActiveMQ, Kafka, Nomad, zookeeper, haproxy, iptables, Consul, Etcd, Puppet, zookeeper, haproxy, iptables, Consul, Etcd, Puppet, Cacti, corosync, Docker Distribution, vault, bind, Cacti, corosync, Docker Distribution, vault, bind, owncloud, openswan,Nexus, Redmine, diamond, owncloud, openswan,Nexus, Redmine, diamond, Jenkins,Mule, GoCD, Chef, memcached, foreman, PHP, Jenkins,Mule, GoCD, Chef, memcached, foreman, PHP, Java,Ruby, nextcloud, Kubernetes, pulp, Spring Boot, Java,Ruby, nextcloud, Kubernetes, pulp, Spring Boot, Ansible, Django, Apache Storm, redis, Nginx, Apache Ansible, Django, Apache Storm, redis, Nginx, Apache httpd, Jboss, Jetty, Hadoop, Elastic, Graphite, Grafana, httpd, Jboss, Jetty, Hadoop, Elastic, Graphite, Grafana, freeswan, Graylog, Apache Spark, Bamboo, Jira freeswan, Graylog, Apache Spark, Bamboo, Jira
  45. Stop Dreaming Stop Dreaming There is no way your 3

    person ops team can manage There is no way your 3 person ops team can manage and scale and scale VMWare, VMWare, EC2, EC2, Azure, Azure, OpenStack, OpenStack, RHEV, RHEV, Gluster, DRBD, LibVirt, Gluster, DRBD, LibVirt,NFS, NFS, Ceph, Mongo, MySQL, Ceph, Mongo, MySQL, PgSQL, PgSQL, Cassandra, Cassandra, mcollective, Rabbit, collectd, mcollective, Rabbit, collectd, dhcpd, sonar, aptly,ActiveMQ, dhcpd, sonar, aptly,ActiveMQ, Kafka Kafka, , Nomad, Nomad, zookeeper, haproxy, iptables, Consul, Etcd, Puppet, zookeeper, haproxy, iptables, Consul, Etcd, Puppet, Cacti, Cacti, corosync, corosync, Docker Distribution, Docker Distribution, vault, bind, vault, bind, owncloud, openswan,Nexus, Redmine, owncloud, openswan,Nexus, Redmine, diamond, diamond, Jenkins, Jenkins,Mule, GoCD, Chef, memcached, Mule, GoCD, Chef, memcached, foreman, PHP, foreman, PHP, Java,Ruby, nextcloud, Kubernetes, pulp, Java,Ruby, nextcloud, Kubernetes, pulp, Spring Boot, Spring Boot, Ansible, Django, Apache Storm, redis, Nginx, Apache Ansible, Django, Apache Storm, redis, Nginx, Apache httpd, httpd, Jboss, Jetty, Jboss, Jetty, Hadoop, Hadoop, Elastic, Graphite, Grafana, Elastic, Graphite, Grafana, freeswan, Graylog, Apache Spark, Bamboo, Jira freeswan, Graylog, Apache Spark, Bamboo, Jira
  46. Full Stack Engineer Full Stack Engineer • Knows the MEAN

    Stack Knows the MEAN Stack • Is still confused about Is still confused about the Javascript the Javascript framework he wants to framework he wants to use yesterday use yesterday • Is familiar with all the Is familiar with all the previously mentioned previously mentioned tools tools • Understands the Linux Understands the Linux Kernel Kernel • Debugs Java Code Debugs Java Code • Understands Networking Understands Networking and Security and Security • Understands deployment Understands deployment • Tunes Databases Tunes Databases
  47. Dull Stack Engineer Dull Stack Engineer

  48. Dull Stack Engineer Dull Stack Engineer • Knows the stack

    in depth Knows the stack in depth • Invests in people Invests in people • Knows his coworkers in depth Knows his coworkers in depth • Is there for the business, not for the Is there for the business, not for the fun of the new tool fun of the new tool
  49. $value $value • Devops is about generating value Devops is

    about generating value for your organisation , together for your organisation , together • What’s the value of shiny $tool vs What’s the value of shiny $tool vs boring tool ? boring tool ?
  50. Back to the roots Back to the roots • Collaborating

    for a better platform Collaborating for a better platform • Open Source Open Source • Empathy Empathy • Common Sense Common Sense
  51. Contact Contact Kris Buytaert kris.buytaert@inuits.eu Kris Buytaert kris.buytaert@inuits.eu Further Reading

    Further Reading @krisbuytaert @krisbuytaert http://www.krisbuytaert.be/blog/ http://www.krisbuytaert.be/blog/ http://www.inuits.eu/ http://www.inuits.eu/ Find Inuits in Find Inuits in Brasschaat,Ghent Brasschaat,Ghent , , Rotterdam,Pragu Rotterdam,Pragu e, e,