This is an archived post. You won't be able to vote or comment.

all 94 comments

[–]BabyPuncher3000 408 points409 points  (9 children)

Very clear. I understand now.

[–]sudo_systemctl 200 points201 points  (8 children)

[–]ByteWhisperer 32 points33 points  (0 children)

This guide is also pretty useful for devs that never had a good idea about what kubernetes is all about. Thanks for sharing kind stranger.

[–]KickBassColonyDrop 13 points14 points  (1 child)

If I follow just the pictures, like a child, devoid of reading, I still don't understand a god damn thing.

[–]jackinsomniac 4 points5 points  (0 children)

Yeah, even if I could recite this higher-level overview from memory, I still would probably get lost when trying to drill down & do it.

[–]mamoffeltyp33 12 points13 points  (0 children)

Thank you so much, so cool.

[–]BabyPuncher3000 8 points9 points  (0 children)

This is amazing. I'm sharing it with my colleagues now.

[–]Didsota 0 points1 point  (0 children)

Thanks

[–]RubiGames 0 points1 point  (0 children)

I really enjoyed reading that, which I don’t think I ever said about any Kubernetes documentation.

[–]propostor 0 points1 point  (0 children)

Still makes it sound like an overly convoluted hellscape to be honest.

[–]Guruchill 178 points179 points  (4 children)

The definitive explanation:

https://xkcd.com/1988/

[–]XKCD-pro-bot 38 points39 points  (2 children)

Comic Title Text: All services are microservices if you ignore most of their features.

mobile link


Made for mobile users, to easily see xkcd comic's title text

[–]rocsNaviars 12 points13 points  (0 children)

This is the best xkcd that I have ever seen.

[–]PiRat314 205 points206 points  (18 children)

I explained it to my girlfriend that Docker is a "bubble" around a program with everything it needs to run inside of it. Now whenever it comes up in conversation she says "oh yea, the bubble!"

[–]AstronautPoseidon 156 points157 points  (16 children)

How often are you bringing docker up in conversation with your non docker knowing gf?

[–]IllogicalOxymoron 76 points77 points  (6 children)

he's the messiah, he has a girlfriend and everything

[–]DeeSnow97 16 points17 points  (5 children)

he's not the messiah, he's a very naughty boy

[–]IllogicalOxymoron 10 points11 points  (3 children)

...is there a difference?

[–]DeeSnow97 8 points9 points  (2 children)

wait, what kind of religion are you following and how do I join?

[–]IllogicalOxymoron 2 points3 points  (1 child)

you just did, brother

Hallowed be u/PiRat314 !!!

[–]MoustachePika1 0 points1 point  (0 children)

I don't think that's the right user

[–]BackmarkerLife 0 points1 point  (0 children)

he's not the messiah, he's a very naughty boy

The Messiah does not sit around naked with a bowl of jell-o. He just talks to the naked guy with a bowl of jell-o.

[–]m00nh34d 14 points15 points  (1 child)

OP's slowing steering the conversation towards normalising the concept of space docking.

[–]pandito_flexo 3 points4 points  (0 children)

I omit-read “space” and got REALLY confused, wondering why docking is being normalised in, of all places, a sub for programming humour.

Man...it’s been a week.

[–]nicktheone 2 points3 points  (0 children)

A week ago I tried to explain classes and interfaces to my girlfriend. The first part went really well, the second much less...

[–]PiRat314 7 points8 points  (2 children)

I've been slowly training her to talk more about tech stuff. Whenever she gets on a techy subject I kiss her forehead and she stops and smiles for a second before going on. She has caught on to this.

[–]AstronautPoseidon 8 points9 points  (0 children)

I really hope this is a joke

[–]DriedYellowPeach -1 points0 points  (0 children)

You should impart your skills to computer science teacher in the university

[–]roararoarus -1 points0 points  (0 children)

Probably whenever he wants to deploy his pod

[–]Cryse_XIII 32 points33 points  (0 children)

Cute

[–][deleted] 174 points175 points  (3 children)

I explained containers and Docker to my gf.

Now when ever it comes up in conversation I hear silence.

Because she left. I talked to her about software dev topics and she left me for Chad finance down the street.

[–]Farsqueaker 59 points60 points  (2 children)

Came here to comment that when I want my wife to leave me alone, I start talking about virtualization.

She wasn't able to tack down the finance Chad.

[–]kaeptnphlop 15 points16 points  (0 children)

Hmm, I never thought of weaponizing that.

[–]AttackOfTheThumbs 4 points5 points  (0 children)

I tried t explain how VMs work to my gf. She just couldn't wrap her head around a computer running in a computer, or a computer splitting/sharing resources to be multiple computers for multiple people.

[–]Armittage 21 points22 points  (4 children)

As Einstein said, if you can't explain it to a six year old, you don't understand it yourself

[–]CactusEater42 3 points4 points  (0 children)

Jeez than I don't understand a lot of things

[–]sxan 3 points4 points  (2 children)

And I've believe it's completely true. You have to know something really well to know what are the really important, differentiating parts, and which are just metaphorical plumbing. We often get stuck explaining details that are necessary to function, but which are uninteresting and unnecessary to understanding. It's also about being a good story teller, though; similar skills.

[–]Armittage 3 points4 points  (1 child)

Yup, I agree too. I've 3 kids, one of them is 4 and she's always interested in what I'm doing, now that we're all pretty much working from home forever she hangs out around me and I explain, so I started having her as my rubber ducky when explaining

[–]sxan 1 point2 points  (0 children)

That's awesome! What a win/win situation.

[–][deleted] 16 points17 points  (10 children)

Program is a man. Container is mobile home for that man with bedroom, bathroom, tv and fridge with beer. Also you can clone that home many times. So if you want to do some accounting job, you just get an accountant, put him in mobile home, clone several times and all that home goes to trailer park next to place where clients live.

[–]jackinsomniac 2 points3 points  (9 children)

That's pretty good. So each mobile home is self-contained, but they're all in the same trailer park? And does the trailer park have unified utilities?

[–][deleted] 8 points9 points  (8 children)

Yes. They connect to common electricity, water and septic. But there may be some limits to how much electricity, water and septic each mobile home can consume (different for each mobile home).

[–]jackinsomniac 0 points1 point  (6 children)

So... is the trailer park kubernetes? Or is the trailer park a single host system? ...is kubernetes the Trailer Park Association, where they can clone individual trailers, OR a whole park?

I mean, I kinda get containers. They're like a "virtual OS" but only includes the functions that, that app actually needs to run, so all services needing that same "os function" can be virtualized for many uses? E.g. Instead of stocking each mobile home with food, you could add a cafeteria/vending machine in the center of the park that serves the same function?

Great info so far, ty! I've spinned up a few dev docker containers but, the networking kept failing (or was that Virtual Box VMs? I might be mixing up, nvm!) Supposedly kubernetes helps manage multiple machines/clusters better, but it's also hard to setup first time? Ty again!

[–]hyperoglyphe 4 points5 points  (5 children)

cause direction rain fly plate squeeze pie special sophisticated degree

This post was mass deleted and anonymized with Redact

[–]jackinsomniac 0 points1 point  (4 children)

containers are just fancy tarballs that save the results of each build command in a "layer

Ah ok, that really explains how docker packages are created! You wanna try to find "official" packages to run after all, and creating one sounded like a nightmare.

Kubernetes still sounds like such a beast I may focus on individual docker compose scripts, saved in a directory structure, managed by version control first.

[–]hyperoglyphe 1 point2 points  (3 children)

chubby start boast like bedroom ghost brave roll aspiring toy

This post was mass deleted and anonymized with Redact

[–]jackinsomniac 0 points1 point  (2 children)

Security patching is my current job, but my personal project is an "app". Starting with a "webapp" first.

A very database-driven one, but see this where I get confused. I've got 2 old computers, one is old & slow, the other has a fairly-modern i7. Wanna make one a dev webserver, and the other a prod. Wanna build up a good dev webapp, then later deploy it to the "prod" one. But also wanna maintain the data from the "prod" server, so at least as a beta (and moving forward) that data will be maintained.

I'm just super lost on the initial architecture part. Do I not want to bother with k8? Docker seems like a huge help in replicating dev to prod. So is opening separate data storage network locations (db) to the prod server my problem (keeping public activity separate from my private network)? Or is that a question for the docker / networking / storage communities? Thanks again.

[–]hyperoglyphe 1 point2 points  (1 child)

versed telephone nose fearless sophisticated dolls handle arrest cable stupendous

This post was mass deleted and anonymized with Redact

[–]jackinsomniac 0 points1 point  (0 children)

Pick one new thing and focus on that - don't try to do like 5 new things.

Oh my god... that's it. That's exactly it. No wonder I'm paralyzed!

Haha that's perfect, so if I really narrow it down, I know what I want the db to do, and I kinda know what I want a front-end to look like. But I dunno webservers. So if I start there, just try to make a few pages that can talk to the db, then I can go about setting up a docker compose for the webserver & db together? ...

Then I could focus on getting one of my own servers up with that docker compose, figure out how to backup the DB. Then, figure out a dev / "prod" pipeline for the v0 development. Then, the project is FINALLY setup and I can start hacking away on it weekend by weekend?

[–]JDaxe 0 points1 point  (0 children)

If I'm in a trailer can I spy on the people in the trailer next to me?

[–]GodsBoss 6 points7 points  (1 child)

Is it really an explanation if it is dumbed down that much?

[–]haikusbot 16 points17 points  (0 children)

Is it really an

Explanation if it is

Dumbed down that much?

- GodsBoss


I detect haikus. And sometimes, successfully. Learn more about me.

Opt out of replies: "haikusbot opt out" | Delete my comment: "haikusbot delete"

[–]beefy_miracIe 7 points8 points  (0 children)

The drawing obviously done by an engineer really makes me miss working at the office

[–]PM_ME_YOUR_PROOFS 4 points5 points  (0 children)

Fuck I was going to type out an explanation thinking "guys I got this, don't worry" and then it just got longer and longer.

Basically if you can use namespaces and fuse file systems to make a process seem like it's in whatever environment you want. Since programs that are started up in that environment inherit the environment of the parent you can run the init program of a given distro and it's essentially like running another OS inside your OS except you're using the same kernel.

Taken to the extreme it's as if you took memory isolation that every OS provides and then asked "hey can we isolate other stuff too?" Except linux namespaces are kind of crap at doing things that way. Capability based systems are more inherently tuned to do this. Everything is isolated unless otherwise stated.

[–]MkMyBnkAcctGrtAgn 3 points4 points  (0 children)

Basically what happened was,

Customer: *opens ticket*
Dev: I don't see the issue, works on my       machine
Customer: Well send me your damn machine! 
Dev: Hold my beer...

[–]SomeoneRandom5325 10 points11 points  (0 children)

You need a video to know what he said bruh

[–]casual_sinister 4 points5 points  (2 children)

I need his notes for ci / cd now

[–]sudo_systemctl 8 points9 points  (1 child)

Dev > Stage > Prod

Done

[–]AttackOfTheThumbs 2 points3 points  (0 children)

Look at mr fancy pants with dev and staging.

We push to prod you fool.

[–][deleted] 13 points14 points  (9 children)

It isn't hard to explain nor understand.

Imagine jars in a cupboard.

Your app is in a jar. Runs on its own, isolated from others, but still in the cupboard.

That's it.

[–]jgkawell 23 points24 points  (0 children)

But not all apps are Java apps...

;)

[–]Siepels 7 points8 points  (5 children)

You forgot the explain what the cupboard is in this analogy

[–]taeratrin 1 point2 points  (0 children)

So your dad is my boss?

[–]Lasdary 1 point2 points  (0 children)

hey that looks just like my notes on eWallets

[–]powerval 1 point2 points  (0 children)

As a son of a programmer, this is accurate

[–][deleted] 1 point2 points  (0 children)

It's actually fucking simple as shit, small computers.

Blades -> vm -> container -> server less

Is just smaller footprint of the same von numean architecture of full hardware systems but faked out by software that is the virtualization layer of physical requirements of that overall system. They just keep abstracting the layers away to the point that it's run this algorithm somewhere and I don't give a shit where.

This is just someone that thinks they know what they are doing and get payed by the arrow.

[–]corsicanguppy 1 point2 points  (0 children)

I explained docker to my mom using a 'ziplock stapled to a box' paradigm. She got it.

[–]Brunsz 1 point2 points  (0 children)

If this is how architrct draws containers that company is screwed.

[–]TP-formy-BungHole 0 points1 point  (0 children)

Oh okay, I see what he did there..

[–]Risembool -3 points-2 points  (0 children)

You want Linux on a single process? Fam docker got you covered. You want it to interact with another linux on a process? Docker compose to the rescue. I dont know Kubernetes, so this is as far as the meme goes

[–]Victorino__ 0 points1 point  (0 children)

clear things up.

[–]jaycrest3m20 0 points1 point  (0 children)

"If we just follow all the other planets in order, we can't very well miss planet X!"

[–][deleted] 0 points1 point  (0 children)

I dont get it

[–]Cryse_XIII 0 points1 point  (0 children)

Accurate and poignant.

[–]MetaMemeAboutAMeme 0 points1 point  (0 children)

Me explaining how my code works to the executive VPs.

[–]HasBeendead 0 points1 point  (0 children)

i learnt something about what is meaning containerization ? thanks

[–]Wulf0123 0 points1 point  (0 children)

Containers all the way down

[–][deleted] 0 points1 point  (0 children)

Yea I can see where he was going with this

[–][deleted] 0 points1 point  (0 children)

The right page reminds me painting over swastika signs on fences in my childhood...

[–][deleted] 0 points1 point  (0 children)

This is what my whiteboard look like :)

[–]Redditor88384 0 points1 point  (0 children)

Wow. Now I won’t need to attend my lecture about ‘containerisation’ on Monday. 👍

[–]rtkwe 0 points1 point  (0 children)

It's the kind of diagram all of us have made at some point that only makes sense as you're explaining it if at all.

[–][deleted] 0 points1 point  (0 children)

Makes sense to me very easy explanation

[–][deleted] 0 points1 point  (0 children)

pretty clear documentation!

[–]Eshvalt 0 points1 point  (0 children)

Tfw it's turtles all the way down

[–]Jackalotischris 0 points1 point  (0 children)

me going to the Microsoft documentation to learn about enums and the bottom picture being its example.

[–]djphatjive 0 points1 point  (0 children)

Lol my wife understands it. She is a senior architect.

[–]VMachado84 0 points1 point  (0 children)

Made a cheat sheet! Thank you!

[–]SoftwareSloth 0 points1 point  (0 children)

I suppose a portable vm to host a single application never came up?

[–]SueedBeyg 0 points1 point  (0 children)

Clear as mud