Me and a few friends have been working on multy.dev, an open-source[1] cloud agnostic API that makes it easy to deploy the same infrastructure to any cloud provider using native managed services.
The motivation was the realisation that, even when using Terraform, migrating infrastructure code requires an end-to-end re-write. Even though most core resources are the same in any major cloud, developers need to learn a new provider to deploy the same infrastructure when moving providers.
We are still in early days of development and currently support core services from AWS and Azure:
- Networking (virtual_network, subnet, route_table, security_group, network_interface, public_ip)
- Compute (virtual_machine, managed kubernetes)
- Database (managed MySQL databases)
- Vault (managed secrets)
- Storage (managed storage)
- Abstraction cloud differences (Azure VM public vs AWS EC2 private by default)
- Deployment through Terraform
We’re looking for feedback from developers about our approach and messaging. Let us know your thoughts!
While Kubernetes can absolutely run your entire infrastructure stack, the biggest pain with that is that you constantly need to manage and maintain it as it grows.
Think about the difference in running your own database vs using a cloud managed one. With a managed service you don’t need to think about scaling, availability or replication. Cost is usually higher when you run it yourself as it might not be optimised.
4 comments
[ 1.3 ms ] story [ 159 ms ] threadThe motivation was the realisation that, even when using Terraform, migrating infrastructure code requires an end-to-end re-write. Even though most core resources are the same in any major cloud, developers need to learn a new provider to deploy the same infrastructure when moving providers.
We are still in early days of development and currently support core services from AWS and Azure:
We’re looking for feedback from developers about our approach and messaging. Let us know your thoughts![1] https://github.com/multycloud/multy
Think about the difference in running your own database vs using a cloud managed one. With a managed service you don’t need to think about scaling, availability or replication. Cost is usually higher when you run it yourself as it might not be optimised.