Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Automating CrateDB with Habitat

Automating CrateDB with Habitat

This session will take you through the journey of learning how we write, build and run packages for Habitat, before exploring the packaging of CrateDB. CrateDB, of course, is not just another database and special consideration must be given to packaging CrateDB in a CrateDB-friendly manner. In this session we will explore the the endocode/cratedb package that is available for download through Habitat and future improvements to this package.

Paul Finlayson Adams

June 28, 2017

More Decks by Paul Finlayson Adams

Other Decks in Technology



    L O Y M E N T A N D C O N F I G U R AT I O N A U TO M AT I N G C R AT E D B W I T H H A B I TAT 0 6 - 2 0 1 7 D R . PA U L J A M E S A D A M S
  2. [email protected] @therealpadams baggerspion.net D R . PA U L J

    A M E S A D A M S Search & Personalisation Engineering Lead 0 6 - 2 0 1 7
  3. X • Engineering Lead • Zalando: Search & Personalisation •

    Crate.io • KDAB • Kolab Systems… • Free Software Lifer • Zope / Plone / KDE / Kolab / CrateDB / Habitat • FSFE / KDE eV / OpenForum Academy Chef Meetup, Berlin A L I T T L E A B O U T M E
  4. X TA B LE OF 
 C O N T

    E N T S Chef Meetup, Berlin • Intro (You Are Here) • Habitat • Why? How? • CrateDB • Why? How?
  5. X S O , W H Y D O W

    E N E ED HAB I TAT ? • Build • Deploy • Configure • Run Chef Meetup, Berlin
  6. X So you know what I mean when I’m talking

    about: • Application Artefacts • Habitat Studio • Habitat Supervisor • Depot • Builder Chef Meetup, Berlin S O ME K E Y C ON C EP TS
  7. X A P P L I C AT I O

    N A R T E FA C T S • The binary • Or the code and an interpreter • Libraries • The configuration • The application • The environment • Dependencies • Signed! Chef Meetup, Berlin
  8. X H A B I TAT S T U D

    I O • Clean environment for building your application artefact • “But it built for me!” • Platforms • Linux - chroot • OSX/Windows - Docker Chef Meetup, Berlin
  9. X H A B I TAT S U P E

    RV I S O R • Application manager service which supports application artefacts • Can be multi-tenant • Communicates with other supervisors • e.g. configuration sharing Chef Meetup, Berlin
  10. X D E P O T • A repository of

    Application Artefacts and their dependencies • Public (Willem) • Private • Support for: • Origins • Channels Chef Meetup, Berlin
  11. X B U I L D E R • Service

    for building your artefacts • Public • Private • Will upload to the specific depot • Can also trigger Docker Hubs builds, too! Chef Meetup, Berlin
  12. X • Nothing! • Habitat will export application artefacts to

    Docker images! • But… what’s on the inside? • `from: ubuntu:latest` • `from: alpine:latest` • Habitat gives you exactly what your application needs. Nothing more. Chef Meetup, Berlin OK, SO WHAT’S WRONG WITH DOCKER?
  13. X Chef Meetup, Berlin A R T E FA C

    T D E F I N I T I O N : T H E S H O W D O W N
  14. X S O , W H Y D O W

    E N E ED CRAT ED B ? • Distributed SQL database • Horizontal scaling • Shared-nothing • Somewhat leaderless • Crate SQL • 100% standard-compliant • …but not 100% of the standard • ALL THE JOINZ! Chef Meetup, Berlin
  15. X C O N F I G U R I

    N G C R AT E D B ( I ) • A feast of configurability! • Based upon completely sane defaults • Nice set of node names • Discovery • Every node is electable • Every node performs all tasks • A gazillion other options that nobody ever touches Chef Meetup, Berlin
  16. X C O N F I G U R I

    N G C R AT E D B ( I I ) • In the real world there is some configuration we really need to provide: • List of IPs to connect to (technically one is enough) • Am I the lead? • Cluster size (we’ll get back to this one) Chef Meetup, Berlin
  17. X H A B I TAT C O M M

    U N I T Y Chef Meetup, Berlin • Slack • http://slack.habitat.sh • Tutorial • https://www.habitat.sh/tutorials • Public Depot • https://bldr.habitat.sh • GitHub • https://github.com/habitat-sh • Blog • https://www.habitat.sh/blog
  18. X C R AT E D B C O M

    M U N I T Y Chef Meetup, Berlin • Slack • https://crate.io/docs/support/slackin • Documentation • https://crate.io/docs • GitHub • https://github.com/crate • Blog • https://crate.io/blog