jeffdeville
Infrastructure as code deployment options in 2024?
Curious what people think about where to host moderately complicated applications these days. (To scope that, I’ve got 2 multi-tenant phoenix apis, 3 postgres db servers, 2 small independent little services, rabbitmq, an opentelemetry collector and log shipper at the moment) Deployed into 3 environments.
Infrastructure as Code is a requirement, which unfortunately rules out fly, which is where we are now. I’m thinking that something like DigitalOcean on Kubernetes, or taking (another) risk on a platform like Render.
Anyone have experience with either of these platforms? Are there other simple options (ahem, not AWS) out there?
First Post!
adw632
I have looked quite a lot at Vultr but I have not used them. There offering seems competitive and their network was fast when testing all the cloud providers.
Logflare is my pick either hosted or self hosted for logging using google bigquery, very economical.
Other than that I use fly for some things and getting projects up and running in non production quickly. I also host my own gitea on fly.io using sqlite backend rather than using Gitlab or GitHub. It’s very fast.
If you can qualify for the AWS startup $100k credit I wouldn’t ignore AWS.
My biggest challenge for security compliance is that only the major clouds like AWS, Azure or Google meet the requirements. So ultimately for anything of value it has to be those three.
Most Liked
adw632
Vultr has good global coverage including Australia and SE Asia and a reasonable level of security compliance as well which is also improved recently.
Vultr are also good for HA setups with floating IP which avoids the cost and upper limits on throughout of cloud service load balancers and additional latency.
Vultr also actively support FreeBSD which I prefer for servers due to better networking with Erlang BEAM as FreeBSD kqueue is more efficient and scalable than anything Linux does. The total observaility of every subsystem is something I could not pass up.
AWS also provide a good option with their Firecracker VMs which boot FreeBSD in 25ms. With such a fast boot time you can instantly demand scale and failover without paying for headroom or contingency.
For deployment I also prefer FreeBSD jail’s which are also supported by Nomad.
D4no0
I would not trust a word those companies are saying, taking in consideration their reputation at processing and collecting personal data.
drobban
I switched to FreeBSD - Have no experience in deploying elixir/freebsd to other services as I host on my own hardware.
So far, I’m so happy with the simplicity given with ZFS, jails and amazed how far I’m able to go without all the complexity added by docker.
I sure like the features given by containers like docker - and so far I’m able to solve most of the problems with jails that dock helped me with in the past. Instead of config & docker files - I use shell-scripts.
For me - it has for sure been worth it to really explore the freebsd alternative.
Last Post!
lessless
The remote builder works flawlessly on macOS; on other OSes, it may be enabled by passing --remote-only to the fly deploy.
Their support is amazing.
But
Their LHR region is the worst PaaS I ever used.
Starting from suspicious network latencies with GCP eu-west-2 region to advice from their support to redeploy until the VM is allocated on a server with enough free memory to accommodate RAM increase request
, to service disruption when clients from EU were served times faster than from UK and LiveView was timing out for them, till suspicious RAM usage spikes and OOM crashes in the out-of-office hours on the internal tool.
They have the best DX out there, and flyctl is next to perfect, but using them is what actually makes me consider self-hosting.
Going back to the topic I want to mention, Ansible for DevOps [Leanpub PDF/iPad/Kindle] can help set up reusable and declarative deployment scripts.
Popular in Discussions
Other popular topics
Chat & Discussions>Discussions
Latest on Elixir Forum
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #metaprogramming
- #security
- #hex









