The only reason they're pursuing this strategy is because they think they can get a piece of the kubernetes market. If that doesn't pan out, they will dump nomad like a bad habit.
For-profit companies aren't open source charities.
One of the best features is that you can bundle a CR to request a MySQL database and it will be satisfied with whatever config is in your cluster so that app only declares the need but not care how it’s done.
Disclaimer: I’m one of the maintainers of Crossplane.
Isn't exactly declarative, nor really imperative, mostly but not entirely idempotent, and worst of all, it has faux-state that may or may not reflect the actual state of the services.
I used to love Terraform, but it broke my heart. Now we're done.
- no quotas for teams/projects/organizations
- no preemption (ie higher priority job preempts lower priority job)
- no namespacing
So generally it's somewhat useless in organizations where there are multiple different teams that should be able to coexist on a cluster without stepping on eachothers' toes, or even where you want a CI system to access the cluster in a safe manner.
We fully intend to migrate more features to OSS in the future -- especially as we build out more enterprise features. As you can imagine building a sustainable business is quite the balancing act, and there's constant internal discussion.
(I'm the Nomad Team Lead at HashiCorp)
It's also going to make the operators very unhappy because it'll be harder to monitor actual memory utilization (allocated memory vs memory really in use) in order to plan cluster extensions. Are there some tools around or work planned to make this kind of scaling and utilization easier?
Please file an issue or link me to an existing issue of you have time. This seems really compelling!
For my personal use I don't need them and for a business Enterprise won't break the bank. You'd be surprised how much your management might be interested in having an escalation path if everything goes south and you need a hot fix. I can vouch that Enterprise support is worth it if you're on a small team that can't spend all day on this stuff
Also, we run on bare metal, so there really isn't a way to request extra capacity within seconds.
* No autoscaling
* Can't reserve entire CPU core: https://github.com/hashicorp/nomad/issues/289
* No way to run jobs sequentially: https://github.com/hashicorp/nomad/issues/419
Disclaimer: I work at HashiCorp in Product Management.
I hope you'll also consider sequential tasks in a single jobfile. Without it it's kind of awkward because you have to be passing shell scripts around just to run a setup step before your actual workload.
https://learn.hashicorp.com/nomad/task-deps/interjob
There’s more work going on there to further improve the feature in upcoming releases.
Disclaimer: I’m an engineer on the Nomad team.
https://www.nomadproject.io/docs/job-specification/lifecycle...
I like the quality of products from HashiCorp, but k8s is far, far, ahead of where nomad is.
What I really want is better integration for Terraform and kubernetes. The current TF k8s support leaves much to be desired, too many things are missing or broken and I find there are several bugs that result in deployment flapping (i.e., constantly re-deploying the same thing when there are no changes).