goofys
Nomad
Our great sponsors
goofys | Nomad | |
---|---|---|
16 | 93 | |
4,995 | 14,347 | |
- | 0.9% | |
0.0 | 9.9 | |
about 1 month ago | about 15 hours ago | |
Go | Go | |
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
goofys
-
Is Posix Outdated?
The author needs to ask themselves: in this cloud technology stack, is there POSIX involved somewhere lower down, where I can't access it? The answer is, of course, "yes". The sort of cloud storage systems described all run on top of POSIX APIs. They provide convenience (cost efficiency is more debatable) compared to the POSIX alternative, but that's because they exist at an entirely different conceptual layer (hence the presence of POSIX anyway, just buried).
Your point about surfacing a POSIX that's actually there but hidden and thus visible to low-level Amazon employees building the S3 service which makes it invisible to S3 end customers is true but isn't the the point of the article. The author is saying there are motivations for a POSIX-like api visible also the end user.
So your explanation of stack looks like 2 layers: POSIX api <-- AWS S3 built on top of that
Author's essay is actually talking about 3 layers: POSIX <-- AWS S3 <-- POSIX
That's why the blog post has the following links to POSIX-on-top-of-S3-objects :
https://github.com/s3fs-fuse/s3fs-fuse
-
AWS Announces Open Source Mountpoint for Amazon S3
How is this different than these other solutions?
-
Introducing Mountpoint for Amazon S3 - A file client that translates local file system API calls to S3 object API calls like GET and LIST.
But now I ask.. why not s3fs? Is it the GPL licensing? Or even goofys that also have Apache2 licensing and seems to hit similar goals (non fully POSIX compliant)? Why build your own?
- Merge my S3 with Mac Finder Folder
- How should I go about creating a program that holds various MP4 files?
- Raft Consensus Animated
-
Mount S3 Objects to Kubernetes Pods
We're using goofys as the mounting utility. It's a "high-performance, POSIX-ish Amazon S3 file system written in Go" based on FUSE (file system in user space) technology.
-
What you gonna add to your selfhost stack this year?
will probably experiment with https://github.com/kahing/goofys and https://litestream.io/ to make services more easily moved between the devices :) Also, will continue working on https://synpse.net/ to make the operations easier.
-
File Systems implemented in Go
goofys - A high-performance, POSIX-ish Amazon S3 file system written in Go.
-
Scalable PostgreSQL Connection Pooler
> We've had some ideas around using this for distributed querying: in our case, each node responsible for a given partition of a dataset would be able to download just the objects in that partition on the fly (though constraint pruning), so we wouldn't need to knowingly seed each worker with data.
IMHO, if you're going to do this, I'd recommend not doing this in Postgres itself, but rather doing it at the filesystem level. It's effectively just a tiered-storage read-through cache, and filesystems have those all figured out already.
You know how pgBackRest does "partial restore" (https://pgbackrest.org/user-guide.html#restore/option-db-inc...), by making all the heap files seem to be there, but actually they're empty sparse files that just happen to have the right allocated length to make PG happy?
Imagine taking one of the object-storage FUSE filesystems, e.g. https://github.com/kahing/goofys, and modding it so that it represents all not-yet-fetched files under readdir(2) with an equivalent representation.
Then just make your pg_base dir an overlayfs mount for:
• top layer: tmpfs (only necessary if you don't give temp tables their own tablespace)
Nomad
-
Running Docker based web applications in Hashicorp Nomad with Traefik Load balancing
In previous post, we discussed creating a basic Nomad cluster in the Vultr cloud. Here, we will use the cluster created to deploy a load-balanced sample web app using the service discovery capability of Nomad and its native integration with the Traefik load balancer. The source code is available here for the reference.
-
Building HashiCorp Nomad Cluster in Vultr Cloud using Terraform
Nomad is really awesome!
-
Embracing Simplicity: The Advantages of Nomad over Kubernetes
In the rapidly evolving landscape of container orchestration and management, two prominent players have emerged: Kubernetes and HashiCorp's Nomad. While Kubernetes has gained widespread adoption and popularity, Nomad provides a compelling alternative that stands out for its simplicity and efficiency. In this blog post, we'll explore the advantages of using Nomad over Kubernetes and why it might be the right choice for certain use cases.
-
HashiCorp Vault Forked into OpenBao
I can't discern how many are just those "dependabot" bumps but the 1400 forks show some are active https://github.com/hashicorp/nomad/forks?include=active&page... including CircleCI who I would think have a stake in a libre Nomad https://github.com/circleci/nomad/tree/circleci/release-1.5....
Now maybe their goals don't align with the community, and/or they don't want to be in the maintainer business for such a project, but better than nothing
-
Remote execution of code
Could this be a solution? nomad
- Google Kubernetes Engine incident spanning 9 days
-
Homebrew deprecate and add caveat for HashiCorp
It worth noting that Nomad UI(a official web admin panel) has log tailing utility built-in so maybe partial work has already been done. The developers may have other concerns.
The related issue is https://github.com/hashicorp/nomad/issues/10220
Nomad, along with the rest of Hashicorp's flagship products, transitioned to the BUSL-1.1: https://github.com/hashicorp/nomad/blob/main/LICENSE
-
HashiCorp Adopts Business Source License
While I do understand the reasoning in their FAQ on the subject (https://www.hashicorp.com/license-faq). I however failed to noticed those intentions in their license text (https://github.com/hashicorp/nomad/commit/b3e30b1dfa185d9437...).
Specifically the part in FAQ which says "internal production use is fine", but then license says that "non-production use only" and then "You may make production use of the Licensed Work, provided such use does not include offering the Licensed Work to third parties on a hosted or embedded basis which is competitive with HashiCorp's products.".
IANAL, but even to me this statement is full loopholes. WHO do we consider 3rd party? WHAT do we consider "hosted or embedded basis"? WHEN do we consider it "competitive with Hashicorps products"?
-
Share your reproducibility / infra-as-code schemes
You'll probably want to take https://www.nomadproject.io/ and layer it on top of jails with pot:
What are some alternatives?
s3fs-fuse - FUSE-based file system backed by Amazon S3
k3s - Lightweight Kubernetes
Rundeck - Enable Self-Service Operations: Give specific users access to your existing tools, services, and scripts
Dkron - Dkron - Distributed, fault tolerant job scheduling system https://dkron.io
rclone - "rsync for cloud storage" - Google Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Wasabi, Google Cloud Storage, Yandex Files
Docker Compose - Define and run multi-container applications with Docker
dapr - Dapr is a portable, event-driven, runtime for building distributed applications across cloud and edge.
podman - Podman: A tool for managing OCI containers and pods.
gcsfuse - A user-space file system for interacting with Google Cloud Storage
kubernetes - Production-Grade Container Scheduling and Management
SaltStack - Software to automate the management and configuration of any infrastructure or application at scale. Get access to the Salt software package repository here:
Juju - Orchestration engine that enables the deployment, integration and lifecycle management of applications at any scale, on any infrastructure (Kubernetes or otherwise).