Posts

Showing posts with the label containers

How do YOU validate the structure of your containers?

Image
Speaking for myself, the phases I went through looked something like 1)   “Wut?” 2)   “Notify me if/when the build fails” 3)   “Notify me if/when it fails during use” 4)   “I’ve done all that I can do, now leave me the f**k alone.” The thing is, going from   -1-   to   -4-   is really pretty damn rapid, since,   at scale all ”IF”s become “WHEN”s (and rapidly at that) And now, finally, a solution (or a very promising start to one) —  Google’s Container Structure Test  —  https://goo.gl/spNXEq  — which promises to verify and validate the contents and structure of containers. It’s declarative (YAML!), and is really quite clever covering the following aspects  •   File Existence and Contents  : Checks that a file exists (or doesn’t!) in the image, and has the correct contents/metadata  •   Commands  : It’ll run a command inside the image (with setup/teardown!) and validate the output  •   Metadata ...

Brigade — Scripting for Kubernetes

Image
(aka: “Scripting is to Operating Systems as   #Brigade   is to   #Kubernetes ”) If you think of Kubernetes as a “distributed OS” that runs containers on the individual hosts, then think of Brigade as providing the scripting around the containers — flow control, information gathering, event handling, etc. The key here is to maintain the separation of concerns, and not get opinionated about what the scheduling, functionality, and so forth — after all, that’s what Kubernetes is there for! Where things get somewhat different is that containers are really not “programs” in the OS sense — and towards managing that, Brigade looks at scripting in an Event-Oriented form, not unlike Applescript. Read on for more   at   http://technosophos.com/2018/01/04/why-brigade-doesn-t-do-yaml.html

containerd namespaces — yessss

Namespaces are a-coming —  moby has a beta release , and kubernetes an alpha  — and I, for one, couldn’t be happier. Why? Because finally two different clients can have a container with the same ID/name without conflicting with each other. , making the dev flow so much more seamless. In practice, if Jack and Jill both create the same container in their own namespace, and Jack deletes it, Jill will have no issues creating it again. The point being that the delete applied only to Jack’s namespace. To quote Everything in containerd is namespaced, except for the namespace API, because it would be something out of a Christopher Nolan film and hard to reason about. —  https://goo.gl/DTF8Lx Mind you, I look forward to the inevitable Garbage-Collection issues 🤣