Slide 1

Slide 1 text

Miha Rekar Lightning talk Kamal 2.x

Slide 2

Slide 2 text

Migration Expert • Last several blog posts all about migrations: • SES -> Postmark and (ab)using generates_token_for for List-Unsubscribe Headers • Pagy -> Turbo with in inite scrolling* • Devise to native Rails 8 Auth* • Fly.io to Hetzner with Kamal 2† *on Radan’s blog † WIP

Slide 3

Slide 3 text

ECT Business • https://business.europeancoffeetrip.com/ • Postgres DB • Small number of users • Café Awards • Huge traffic spike • Fly gets expensive real fast • How hard can it be?

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

All the metrics

Slide 6

Slide 6 text

Just add accessories • kamal accessory boot prometheus • kamal accessory boot node_exporter • kamal accessory boot cadvisor • kamal accessory boot grafana • Add a simple prometheus.yml

Slide 7

Slide 7 text

Hetzner • All in a single CAX11 ARM VM • 4f the RAM and 2f CPU of Fly • 1/8th the price • Response times slashed in half • No traffic bottlenecks (yet) • Much faster and zero-downtime deploys

Slide 8

Slide 8 text

Just Do It # • Already hosted a couple of tiny services • This gave me con idence • Visualizer next • What are you migrating? • 20× Hetzner credits $

Slide 9

Slide 9 text

Thank you!