Prefetch Technologies // Keeping your cache lines cozy

Archive

Posts from 2020

Using grpcurl to interact with gRPC applications

developmentApr 22, 2020 2 min read

The past couple of weeks I have been digging into gRPC and HTTP2 in my spare time. I needed a way to review the requests and responses, and an easy way to explore gRPC servers. I also wanted something to dump protocol buffers in a human readable format. It turns out grpcurl was written for just this purpose, and has been super useful for groking gRPC…

$ read more →

Listing Kubernetes nodes by label

kubernetesApr 20, 2020 1 min

When you support large Kubernetes clusters, you need efficient methods to list pods, nodes, and deployments when you are troubleshooting issues. Kubectl has a number of built-in methods to do this. You can use jsonpath, selectors and sort-by statements to return the exact data you need. In addition, you can use the kubectl "-l" option to list objects that contain (or don't contain) a label…

$ read more →

Using the Ansible async module to perform synthetic health tests during playbook runs

ansibleApr 11, 2020 2 min

I've become a huge fan of Ansible's async support. This is incredibly useful for performing synthetic health tests on services after a task completes. A common use case is patching a server that hosts one or more applications. You ideally want to gracefully stop your application, update packages, reboot, and then test the application to ensure its healthy…

$ read more →

Using the profile module to time Ansible playbook runs

ansibleApr 11, 2020 1 min

This past weekend I spent some time revamping a few playbooks. One of my playbooks was taking a while to run, and I wanted to see how much actual time was spent in each task. Luckily for me, Ansible has a profiling module to help with this. To enable it, you can add the following directive to the default section in your ansible.cfg configuration file: Future playbook runs will result in a timestamp being printed for each task: And a global summary will be produced once the playbook completes: Super useful feature, especially when you are trying to shave time off complex playbook runs.

$ read more →

Using audit2rbac to create RBAC policies from Kubernetes audit log

kubernetesFeb 1, 2020 3 min

When I first started with Kubernetes, it took me some time to understand two things. One, how do I generate manifests to run my service. I tackled this in a previous blog post. The second was wrapping my head around RBAC policies…

$ read more →