CoreOS rkt, an underdog in the container world.
Use Cases and Deployment Scope
We use CoreOS rkt in as developers and as an organization. My department uses CoreOS rkt to compartmentalize all of our developer operation tools and to keep systems homogeneous across hardware. My organization as a whole use CoreOS rkt to containerize and scale customer instances.
As a developer CoreOS rkt is a lifesaver, it has allowed us to write tools focused on developer productivity and use them across the department regardless of underlying operating system. We have hundreds of compilers, linters, and unit tests across dozens of languages stored in CoreOS rkt.
As an organization we use CoreOS rkt when spinning up new customers. This has been advantageous because we can run multiple customers from one VPC. It also means we can scale up a customers environment almost instantaneously. We often have customers who's resource needs change on a daily basis, CoreOS rkt has allowed us to scale with our customers.
Pros
- Containerization, CoreOS rkt is particularly well suited when running multiple processes on one server.
- Simplicity, CoreOS rkt is easy and quick to get up and running.
- Speed, CoreOS rkt takes few resources and performs with little overhead.
- The API, gRPC is a wonderfully easy framework to use.
Cons
- Market share, it's often very difficult to find new talent who use CoreOS rkt.
- Lack of wow features, CoreOS rkt doesn't necessarily offer any immediate advantages over other container solutions.
Likelihood to Recommend
CoreOS rkt is well suited for any development environment where operating systems and hardware are not homogeneous. CoreOS rkt allows us to write code on one machine with the confidence that it will work on any other. This has been immensely helpful as our developers are often switching to the latest and greatest machines and operating systems.
CoreOS rkt is less suited for environments that are not Software as a Service. There is often no need to bring the entire developer environment and associated dependencies when delivering a one time product. In these environments CoreOS rkt just adds unneeded overhead.