Tim Hockin (thockin.yaml) Profile Banner
Tim Hockin (thockin.yaml) Profile
Tim Hockin (thockin.yaml)

@thockin

28,106
Followers
787
Following
161
Media
6,812
Statuses

SW Engineer: Kubernetes, GKE, Google Cloud. Dad. Foodie. Star Wars nerd. Expanse fan. @thock .in on bluesky @thockin @hachyderm .io

Joined October 2008
Don't wanna be here? Send us removal request.
Pinned Tweet
@thockin
Tim Hockin (thockin.yaml)
2 years
I wrote a little bit about how to do deployment updates without serving errors in #Kubernetes . Since I don't have a blog, I'll just tweet. You have some pods, and maybe an load-balancer, too. You want to update the deployment. How to do this "best" in K8s today? 1/
19
116
525
@thockin
Tim Hockin (thockin.yaml)
5 years
If *I* get confused by #Kubernetes kube-proxy iptables rules, then surely other people do, too. So I documented them in the form of a flowchart. Any ideas how to make this more comprehensible are welcome.
25
456
1K
@thockin
Tim Hockin (thockin.yaml)
4 years
Programming in bash is like rubbing a cat's tummy. You know it's going to end with bloodshed, but you also know you're going to do it again.
12
247
1K
@thockin
Tim Hockin (thockin.yaml)
4 years
Coders often talk about refactoring, but I'd like to see more "prefactorings" - refactoring done to make a subsequent change simpler. Put these into their own commits (or even PRs!) which are verifiably "no-impact". Use them to make your "real" change more obvious and surgical.
47
115
811
@thockin
Tim Hockin (thockin.yaml)
4 years
People who WFH regularly: What motivates you to like, shower, and stuff ?
305
28
517
@thockin
Tim Hockin (thockin.yaml)
3 years
I need to take some time off work so I can focus on doing my job.
12
34
497
@thockin
Tim Hockin (thockin.yaml)
4 years
A little something I threw together. Work in progress, feedback welcome. I have seen too many people fail to reason about or communicate clearly about how #kubernetes clusters integrate with their larger network.
22
127
487
@thockin
Tim Hockin (thockin.yaml)
4 years
What do we have to do to get people to stop running their containers as root?
131
40
443
@thockin
Tim Hockin (thockin.yaml)
5 years
I've updated my slides on reconciliation in #Kubernetes . I fixed a few bugs and added a section on finalizers and custom resources. Somehow it is almost 100 slides, but it's mostly animation, so don't be scared.
6
116
425
@thockin
Tim Hockin (thockin.yaml)
5 years
Best slide ever at #Rejekts2019
Tweet media one
6
83
418
@thockin
Tim Hockin (thockin.yaml)
4 years
People who are stuck at home WITHOUT kids: Is it as nice as it sounds?
67
24
413
@thockin
Tim Hockin (thockin.yaml)
1 year
Kubernetes 1.27.0 has landed. Congrats to all the contributors and super thanks to the hard-working release team. Now, on to 28!
7
75
378
@thockin
Tim Hockin (thockin.yaml)
2 years
I believe in the Broken Window Theory for APIs. Once you allow bad designs into an API, they serve as permanent examples that it's OK to cut corners. :( API design deserves attention.
9
49
375
@thockin
Tim Hockin (thockin.yaml)
5 years
My slides from #Rejekts2019 today. Kubernetes already has many properties of a service mesh, and what we can do with that knowledge.
10
96
358
@thockin
Tim Hockin (thockin.yaml)
5 years
Kubernetes the project doesn't always take a strong stand on how to use it. After a conversation this week I'd like to share one nugget: don't share namespaces. Most selector-based constructs are bounded by the namespace. If you don't trust someone, don't share an NS with them!
6
80
334
@thockin
Tim Hockin (thockin.yaml)
8 years
I've meant to write this for a while. An illustrated guide to #Kubernetes networking. It's not as pretty as I hoped.
13
178
331
@thockin
Tim Hockin (thockin.yaml)
4 years
Friends and followers who work at Facebook, especially tech folks - this is NOT OK. Walk out. Quit now. This is your moment. Use your powers for good.
11
48
330
@thockin
Tim Hockin (thockin.yaml)
4 years
Hey Mozillans? Mozillians? Mozillers? ..people who got bad news. First, that sucks. Sorry to hear it. Second, if you are interested in applying at Google, especially Google Cloud, ESPECIALLY Kubernetes and GKE... My DMs are open. Happy to talk, advise, or whatever you need.
9
64
329
@thockin
Tim Hockin (thockin.yaml)
5 years
A quick something I threw together after a conversation today. I have been meaning to do this for a long time. A very brief look at what we mean when we talk about "reconciliation" in #Kubernetes . I hope it is useful!
5
107
328
@thockin
Tim Hockin (thockin.yaml)
1 year
@kelseyhightower Kelsey, Thank you for everything you have done for Kubernetes and all of the market spaces you have touched. You have an inimitable energy and your insights are like laser beams to the heart of so many issues. Congratulations and best luck.
2
2
319
@thockin
Tim Hockin (thockin.yaml)
4 years
I've mostly stayed away from tech topics the last few weeks, for fairly obvious reasons. I'm going to pause that today, because I am proud as hell of the teams and customers behind this one. 15,000 node mega-clusters on GKE. #GKE @GCPcloud
16
58
309
@thockin
Tim Hockin (thockin.yaml)
4 years
Another one (first draft). Specifically focused on how to bring traffic into your cluster from "elsewhere". Feedback welcome.
17
74
305
@thockin
Tim Hockin (thockin.yaml)
7 years
#GitHub on #Kubernetes . #Kubernetes on #GitHub . A cool article from the real world.
1
157
273
@thockin
Tim Hockin (thockin.yaml)
6 years
GKE Private Clusters is now Beta! You can now create fully managed #Kubernetes clusters without requiring public IPs on your nodes. Thanks to all involved, and to all you EAP customers who give such great feedback.
8
128
274
@thockin
Tim Hockin (thockin.yaml)
5 years
I am honestly very excited about #Anthos . I think it strikes a cool balance between OSS technology and managed solutions, starting with a premise I have come to accept as truth - hybrid is reality, and will be for a long time, if not forever. #GoogleNext19
11
51
270
@thockin
Tim Hockin (thockin.yaml)
6 years
Slides from my lightning talk tonight at #KubeCon Worth noting: this vision is absolutely NOT mine alone. BIG props to @originalavalamp , @bgrant0607 , @erictune4 , and many other people (hi sig-api-machinery!) who are helping to make this possible.
4
86
270
@thockin
Tim Hockin (thockin.yaml)
6 years
w00t! Kubernetes v1.10.0 just landed. This makes 11 releases in less than 3 years. Exhausting! Nice work to the release team. Serious super-heroes, every one.
4
89
270
@thockin
Tim Hockin (thockin.yaml)
4 years
Code review is great, but have you tried actually just talking to someone? So much more efficient.
12
22
262
@thockin
Tim Hockin (thockin.yaml)
3 years
I got my new desk today!
Tweet media one
21
0
262
@thockin
Tim Hockin (thockin.yaml)
3 years
Kubernetes is going to hit issue or PR #100 ,000 in O(days). What a wild ride...
6
22
250
@thockin
Tim Hockin (thockin.yaml)
3 years
I'm excited to see GKE Autopilot launch today! I think that this will be an even easier, more streamlined option for a LOT of users to operate. I know I will be moving my tiny personal cluster to it. :)
9
54
241
@thockin
Tim Hockin (thockin.yaml)
5 years
To celebrate the 5th birthday of #Kubernetes , I'll be doing an AMA on Reddit tomorrow at 12:30pm California time. Bring your hardest and most random questions, and I'll do my best to get them answered (not that I don't do "random" here :)
5
82
234
@thockin
Tim Hockin (thockin.yaml)
9 months
A lesson that I keep learning over an over. Avoiding complexity isn't about saying no to hard things or things that seem "niche" or controversial. It's about saying no to obvious, easy things because eventually it all adds up.
6
33
230
@thockin
Tim Hockin (thockin.yaml)
3 years
I feel like I used to be better at my job than I am now. Faster. Sharper. More insightful, more decisive. I think what is really happening is that I used to be more confident in my first impressions, and less willing to question myself. Now I know how big of a moron I am.
15
9
229
@thockin
Tim Hockin (thockin.yaml)
2 years
I am a visual-thinker, so I really appreciate diagrams. I spent a bit of time thinking about pod probes in Kubernetes and drew it up.
4
28
227
@thockin
Tim Hockin (thockin.yaml)
7 years
A little something I slapped together this morning. How I think about composing Containers and Pods in #Kubernetes .
4
93
224
@thockin
Tim Hockin (thockin.yaml)
2 years
If you write a tool that takes pathname arguments, and one of those paths is a directory, and the presence or absence of a trailing slash matters, there's a special place in hell for you.
16
12
209
@thockin
Tim Hockin (thockin.yaml)
3 years
Kubernetes w/ static pod IPs is like peanut-butter and potatoes. Potatoes resemble apples in some ways, but they are not apples. Using them like apples is likely to disappoint. I'd love to hear about why people NEED to have static IPs? It's 180 degrees from "cloud native".
28
24
205
@thockin
Tim Hockin (thockin.yaml)
1 year
Lessons about API design that I internalized thru k8s. 1) Breaking changes are easy to do by mistake 2) Explicit > implicit 3) Don't make nothing mean something 4) Version skew is hard 5) Painting yourself into a corner is easy 6) Think hard before guaranteeing non-empty lists
5
40
203
@thockin
Tim Hockin (thockin.yaml)
5 years
So, I guess I have a dog now.
Tweet media one
18
0
201
@thockin
Tim Hockin (thockin.yaml)
5 months
Go Workspaces support for the Kubernetes repo has merged. All of the crazy GOPATH crap is gone. I am 100% sure this will cause some downstream pain. If you are impacted, please let me know.
7
29
200
@thockin
Tim Hockin (thockin.yaml)
3 years
A big "thank you" to everyone who works on Kubernetes!! That includes docs and tests and tools and releng and community and outreach and education and everything else.
@K8sContributors
K8sContributors
3 years
Kubernetes crossed 100,000 issues/PRs a few hours ago! That is 100,000 times the project has been improved by contributors like you. Thank you all for contributing :tada:
3
83
545
1
33
194
@thockin
Tim Hockin (thockin.yaml)
2 years
Best prop at KubeCon. I told them that if they gave it to me I would walk around all week and send people to their booth. They were not buying it. I am not going home with a shield.
Tweet media one
15
9
189
@thockin
Tim Hockin (thockin.yaml)
4 years
I have seen this make the rounds over and over, and I watch it every time. And every time it tears me up.
@alvinfoo
Alvin Foo
4 years
If somebody doesn’t understand privilege, show them this clip.
46
863
1K
4
62
187
@thockin
Tim Hockin (thockin.yaml)
5 years
#Kubernetes people! I need your help. One of the hats I wear is the "infra workgroup", wherein we attempt to run the things that run the project (DNS, CI, web redirects). Our plate runneth over. We need more volunteers... 1/3
11
67
183
@thockin
Tim Hockin (thockin.yaml)
4 years
Kid comes into my office: "Dad, we're doing a scavenger hunt and I need something really old. Can you come?" Thanks, kid.
9
0
183
@thockin
Tim Hockin (thockin.yaml)
6 years
@jbeda @stephenaugustus @littleidea @Google @cmcluck @brendandburns @bgrant0607 Borg "alloc" -> Omega "scheduling unit" -> Kubernetes "pod". The name itself was from a brainstorm. Docker's logo is a whale. A group of whales is called a ... Also, it was short. The network model was explored in Borg a few years prior, but wasn't feasible at the time.
7
39
181
@thockin
Tim Hockin (thockin.yaml)
7 years
#KubeCon 2017 is gonna be HUGE. I'm more than a little overwhelmed by this thing we've created...
6
20
179
@thockin
Tim Hockin (thockin.yaml)
6 years
Best warm-fuzzy-feeling in a while: CERN say that #kubernetes makes their lives easier and helps them focus on the physics.
2
35
181
@thockin
Tim Hockin (thockin.yaml)
2 years
Staying up late to "get some things done" is just borrowing against the next day's productivity. I know this, and yet I do it anyway.
7
16
177
@thockin
Tim Hockin (thockin.yaml)
2 years
OMG. I just read the man page for systemd configs for the first time in a few years. Wow...and people say Kubernetes is complicated!
11
12
177
@thockin
Tim Hockin (thockin.yaml)
6 years
#Kubernetes v1.11.0 is released! MEGA thanks to the release team. This is our 12th consecutive release with no major explosions in the process.
4
61
178
@thockin
Tim Hockin (thockin.yaml)
6 years
#KubeCon keynote room is ... BIG
Tweet media one
9
31
177
@thockin
Tim Hockin (thockin.yaml)
5 years
Wow, this iptables->nftables transition is bungled. Anyone using kubernetes on sufficiently new distributions that have iptables-1.8.x need to switch to iptables legacy mode. The kernel impl changed and there's no stable API to it. So if you mix tool versions you are hosed.
10
65
175
@thockin
Tim Hockin (thockin.yaml)
4 years
I have update a couple of my slide decks that got a few views. For folks who need some help understanding #Kubernetes network integration options.
3
43
173
@thockin
Tim Hockin (thockin.yaml)
5 years
The awesome @directxman12 and @misterikkit made these dope earrings for me for #KubeCon . Printed inside is the git hash of my very first commit to k/k. I was touched, guys. Thanks.
Tweet media one
4
3
175
@thockin
Tim Hockin (thockin.yaml)
7 years
Good piece on adopting microservices (or not!) I dislike how people tend to conflate #Kubernetes with microservices, though. Kube can do monoliths, too. And stateful!
3
73
172
@thockin
Tim Hockin (thockin.yaml)
4 years
At a hotel. 10 year old asks what happens if he picks up the phone: does it call someone automatically? He picks up the phone, curious. Puts it to his ear: "What's that sound?". It dawn's on me that he has NEVER in his WHOLE LIFE used a wired phone.
11
7
173
@thockin
Tim Hockin (thockin.yaml)
4 years
Cilium and the team around it have impressed me from the beginning. My mind is spinning with the possibilities of eBPF.
@tgraf__
Thomas Graf 🐝
4 years
4 years ago we started the @ciliumproject . Today, Google announced the availability of Cilium as the new GKE networking dataplane. What a great honor for everyone who has contributed to the Cilium project and to eBPF overall. The background story:
Tweet media one
23
163
711
1
23
173
@thockin
Tim Hockin (thockin.yaml)
2 years
yassss
Tweet media one
11
3
170
@thockin
Tim Hockin (thockin.yaml)
4 years
@ashleymcnamara I am first to admit I am working on instinct and hand-waiving at least 50% of the time. The more "senior" I get, the less confident I am in what I say, most of the time.
14
8
164
@thockin
Tim Hockin (thockin.yaml)
4 years
Zoom is total trash. I should not need to download and run a random binary to have a working experience. Google Meet works fine MS Teams works fine Zoom is a flipping MESS. Consumes 2x the CPU in the same circumstances and it is still unusable.
23
12
166
@thockin
Tim Hockin (thockin.yaml)
3 years
I wrote some C code today, and I have to say...I enjoyed it. Don't hate me...
20
2
167
@thockin
Tim Hockin (thockin.yaml)
3 years
Apparently the great debate is still going. "kyoob cuttle" vs "kyoob control" vs "kyoob see tee ell" vs... The fight rages on!
39
12
167
@thockin
Tim Hockin (thockin.yaml)
5 years
I am using #Twitter to tell #Kubernetes tweeple about how #Twitter uses #Kubernetes . :-P
9
14
167
@thockin
Tim Hockin (thockin.yaml)
5 years
Since #KubeCon is in San Diego, and (until now) Comic Con was the pinnacle of awesome SD cons, why not give them a nod and have a cosplay day at KubeCon? What think? Can you imagine: Darth Vader presenting on how to use CRDs to control nuclear reactors? I'd go to that.
9
10
158
@thockin
Tim Hockin (thockin.yaml)
6 years
Great news: GKE now supports pod autoscaling based on custom metrics, including Pub/Sub queue. This was a frequently requested capability. #Kubernetes keeps delivering. Congrats to all the people involved!
1
69
159
@thockin
Tim Hockin (thockin.yaml)
2 years
Buying a physical, hardcover book should automatically come with an ebook license. Harump.
5
6
159
@thockin
Tim Hockin (thockin.yaml)
6 years
Best thing I have read all week: "This proposal keeps the best parts of go get, adds reproducible builds, adopts semantic versioning, eliminates vendoring, deprecates GOPATH in favor of a project-based workflow, and provides for a smooth migration from dep and its predecessors."
5
30
156
@thockin
Tim Hockin (thockin.yaml)
4 years
Kubernetes people, especially contributors: We're moving a key piece of infrastructure - - into community hands soon. We're pretty confident in our planning, but there's always a SLIGHT chance things go FUBAR. Feedback welcome.
1
44
155
@thockin
Tim Hockin (thockin.yaml)
5 years
What I love about #KubeCon : Finish your talk and then spend the next hour in the hallway discussing. :). Thanks everyone who came this year. 8000 of my best friends, all in one place.
3
13
154
@thockin
Tim Hockin (thockin.yaml)
5 years
Slides from my #KubeCon SIG_Network deep-dive talk this week:
3
38
153
@thockin
Tim Hockin (thockin.yaml)
4 years
This is one of those announcements that makes you think "wait, it wasn't GA?". Ingress is a very important (and ancient) API in Kubernetes and I am happy to see it FINALLY go GA. With some cool updates, no less.
@GoogleOSS
Google Open Source
4 years
After a long time in beta, @kubernetesio Ingress has gone GA in 1.19 🎉 Read more about how it impacts you, and your Ingress Controllers, on this blog by @MrBobbyTables 👉🏼
1
55
147
2
18
153
@thockin
Tim Hockin (thockin.yaml)
2 years
5
3
152
@thockin
Tim Hockin (thockin.yaml)
1 year
dockerhub: kubernetes/pause:latest last pushed: 4 years ago last pulled: 1 hour ago downloads: 36369788
7
12
150
@thockin
Tim Hockin (thockin.yaml)
5 years
I feel like I spend all day telling people why the thing they are trying to do can't work. I hate it. I want to be able to offer more positive suggestions, but I don't often have them these days. All the easy, obvious stuff is done. The current docket of ideas is HARD and UGLY.
15
6
145
@thockin
Tim Hockin (thockin.yaml)
7 years
GCP supports global load-balancing, across clusters and regions, but using it from #Kubernetes was tricky. Getting better! Check out this cool kubemci demo:
2
50
146
@thockin
Tim Hockin (thockin.yaml)
2 years
Kubernetes v1.26.0 has been released. Congrats to everyone on the release team (seriously!) and everyone who helped build it.
4
34
147
@thockin
Tim Hockin (thockin.yaml)
7 years
No more management fee on GKE! Masters are now free for clusters of all sizes.
3
60
142
@thockin
Tim Hockin (thockin.yaml)
7 years
Kubernetes v1.7.0 is out!
0
58
143
@thockin
Tim Hockin (thockin.yaml)
2 years
I have been at KubeCon for 10 minutes and already connected with over a dozen friends. This is why I came.
7
1
145
@thockin
Tim Hockin (thockin.yaml)
7 years
As I get ready to leave #kubecon , I just have to say one last thank you to everyone who made it happen. Planners, staff, program committee, speakers, and attendees, and everyone in between. It was humbling to be part of.
3
18
143
@thockin
Tim Hockin (thockin.yaml)
2 years
If someone from GitHub would like to see examples of how their code-review tooling utterly breaks down at scale, please ping me. I'd love to walk you thru some infuriating stuff.
9
7
143
@thockin
Tim Hockin (thockin.yaml)
2 years
Being an OSS maintainer is so much fun: "It's clear I and others here won't change your mind. Maybe in the future someone else will inherit your position and make a different decision."
15
5
139
@thockin
Tim Hockin (thockin.yaml)
5 years
@it_supertramp @try_except_ This is why I always advise: 1) Always set memory limit == request 2) Never set CPU limit (for locally adjusted values of "always" and "never")
13
29
141
@thockin
Tim Hockin (thockin.yaml)
5 years
That's 15 releases of this thing. w00t!
2
19
139
@thockin
Tim Hockin (thockin.yaml)
4 years
#Kubernetes image serving infrastructure is being converted from "accessible to Googlers only" to "community owned" RIGHT NOW. Big props to @linusarver who has done most of the heavy lifting to automate and secure the process and the Google GCR team who have been super helpful!
4
19
136
@thockin
Tim Hockin (thockin.yaml)
4 years
@vicnastea There are only 2 kinds of systems out there - the ones people complain about and the ones nobody uses. I keep this in my head EVERY DAY. :)
4
16
136
@thockin
Tim Hockin (thockin.yaml)
1 year
I am sad to have to write this. Kubernetes users & tool-builders: PLEASE DO NOT try to regex match the random suffix of auto-named API objects. The format of that IS NOT specified. Don't embed data into names and then parse it out later. That's LITERALLY what labels are for.
6
19
139
@thockin
Tim Hockin (thockin.yaml)
7 years
A quick write-up of "edge-triggered" vs "level-triggered" logic.
7
55
137
@thockin
Tim Hockin (thockin.yaml)
5 years
My #KubeCon is over. I just parted ways with the last dinner crew - old friends and new. Thanks to everyone for being awesome people and for keeping me excited and proud of this project for so long. See you in Amsterdam!
2
0
135
@thockin
Tim Hockin (thockin.yaml)
3 years
I like this article. It's a little academic, but that's the point. It made me look at the model in a different way.
1
36
133
@thockin
Tim Hockin (thockin.yaml)
3 years
I have used bash for 25 years and I *just* learned that "local" variables are dynamically scoped. Despite the name, they aren't local by any sane definition. And of course, k8s' build depends on this. Sigh.
10
10
131