Suraj Deshmukh https://suraj.io/ Recent content on Suraj Deshmukh Suraj Deshmukh https://suraj.io/images/papermod-cover.png https://suraj.io/images/papermod-cover.png Hugo -- 0.157.0 en Sun, 22 Feb 2026 10:00:00 +0530 Suraj Deshmukh's talks at conferences https://suraj.io/post/surajd-talks-links/ Sat, 30 Mar 2024 01:00:51 +0530 https://suraj.io/post/surajd-talks-links/ List of all the talks presented by me Setting Up OpenClaw with Azure AI Foundry https://suraj.io/post/2026/openclaw-with-azure/ Sun, 22 Feb 2026 10:00:00 +0530 https://suraj.io/post/2026/openclaw-with-azure/ Learn how to configure OpenClaw to use Azure AI Foundry models, giving you a self-hosted AI assistant accessible from Telegram and other chat apps. Running Linux Containers Natively on macOS with Apple's Container CLI https://suraj.io/post/2026/using-osx-containerization/ Fri, 20 Feb 2026 10:00:00 +0530 https://suraj.io/post/2026/using-osx-containerization/ Learn how to use Apple&#39;s container CLI tool to run Linux containers as lightweight VMs on macOS with sub-second startup times Deploying Kimi K2.5 on Azure: A Complete Guide to Running MoonshotAI's Model https://suraj.io/post/2026/deploying-kimi-k2-on-azure/ Mon, 09 Feb 2026 10:00:00 +0530 https://suraj.io/post/2026/deploying-kimi-k2-on-azure/ Learn how to deploy and configure Kimi K2.5 on Azure AI Foundry with this step-by-step guide. Running Docker Commands on a Remote Machine via SSH https://suraj.io/post/2026/remote-machine-as-docker-runner/ Sun, 01 Feb 2026 10:00:00 +0530 https://suraj.io/post/2026/remote-machine-as-docker-runner/ Learn how to execute Docker commands on a remote machine from your local terminal using SSH and Docker contexts Using Claude Code with GitHub-Hosted Anthropic Models https://suraj.io/post/2026/use-claude-code-with-gh-models/ Sat, 31 Jan 2026 10:00:00 +0530 https://suraj.io/post/2026/use-claude-code-with-gh-models/ Learn how to use Claude Code CLI with GitHub Models by proxying requests through litellm-proxy Using LLMs to write meaningful commit messages from CLI https://suraj.io/post/2025/llm-commit-messages/ Thu, 17 Jul 2025 15:21:07 -0800 https://suraj.io/post/2025/llm-commit-messages/ Learn how to use the llm CLI tool with GitHub Copilot models to generate meaningful commit messages directly from your terminal. Deploying Grok-3 on Azure: A Complete Guide to Running xAI's Latest Model https://suraj.io/post/2025/deploying-grok-3-on-azure/ Tue, 24 Jun 2025 09:21:07 -0800 https://suraj.io/post/2025/deploying-grok-3-on-azure/ Learn how to deploy and configure Grok-3 on Azure AI Foundry with this step-by-step guide. Set up your own instance of xAI&#39;s powerful language model in the cloud. Deploying OpenAI Text-to-Speech (TTS) Model on Azure: A Step-by-Step Guide https://suraj.io/post/2025/opeai-tts-on-azure/ Sat, 31 May 2025 09:21:07 -0800 https://suraj.io/post/2025/opeai-tts-on-azure/ Learn how to quickly and effectively deploy an OpenAI text-to-speech (TTS) model on Azure with easy-to-follow Azure CLI commands. Boost your applications with advanced speech generation capabilities. Open Source Confidential Containers (CoCo) on Azure https://suraj.io/post/2024/coco-on-azure/ Fri, 05 Apr 2024 09:21:07 +0530 https://suraj.io/post/2024/coco-on-azure/ Explore how Azure’s support for nested confidential compute unlocks a straightforward path to deploying Confidential Containers (CoCo), ensuring enhanced data security in the cloud with ease. Fight Your Instincts — Your Default Behaviour is Hurting You https://suraj.io/post/2021/10/dont-be-default/ Fri, 29 Oct 2021 11:05:07 +0530 https://suraj.io/post/2021/10/dont-be-default/ <p>We behave in a certain way. It is shaped by various factors like our upbringing, environment, privilege, etc. But most of the time, it is shaped by our instincts. Until pointed out, we continue to act with our instincts. This instinct-driven behavior is our default behavior.</p> <p>I am making a case that <strong>anyone who has never rebelled against or resisted their default behavior will find it hard to achieve success in this world. All the successful people we see have done something that required fighting the default behavior, which led them to achieve something exceptional and become successful.</strong></p> Learnings from 'Atomic Habits' https://suraj.io/post/2021/10/atomic-habits/ Tue, 26 Oct 2021 09:21:07 +0530 https://suraj.io/post/2021/10/atomic-habits/ Atomic Habits: An Easy &amp; Proven Way to Build Good Habits &amp; Break Bad Ones Unchanging Contexts and Degrading Productivity https://suraj.io/post/2021/09/unchanging-context/ Sat, 11 Sep 2021 17:09:07 +0530 https://suraj.io/post/2021/09/unchanging-context/ How doing everything from the same place has affected the the productivity of everything. Certified Kubernetes Security Specialist CKS exam tips https://suraj.io/post/2021/09/cks-tips/ Sat, 04 Sep 2021 13:30:07 +0530 https://suraj.io/post/2021/09/cks-tips/ Things to keep in mind to clear exam effortlessly. Learnings from 'Sapiens' https://suraj.io/post/2021/08/sapiens/ Sat, 14 Aug 2021 10:45:07 +0530 https://suraj.io/post/2021/08/sapiens/ Sapiens: A Brief History of Humankind Reading Devices https://suraj.io/post/2021/06/reading-devices/ Wed, 30 Jun 2021 01:45:00 +0530 https://suraj.io/post/2021/06/reading-devices/ Pros and Cons of various reading devices How to 'automatically' generate a self-signed TLS certificate for Kubernetes Admission Webhook Servers? https://suraj.io/post/2021/06/automatic-cert-gen/ Fri, 25 Jun 2021 09:00:00 +0530 https://suraj.io/post/2021/06/automatic-cert-gen/ A simple Helm chart to generate TLS x509 certificates. How to create a Systemd daemon quickly? https://suraj.io/post/2021/06/systemd-service/ Sat, 19 Jun 2021 16:16:00 +0530 https://suraj.io/post/2021/06/systemd-service/ <p>If you have a script or a binary and want to run it as a Systemd service, keep following. This blog will show you how to take any such executable code and run it using Systemd. Sure, you can do similar stuff using Docker as well. Although there are certain downsides of using Docker (alone) for managing the daemons. Systemd is good at log management on the node over a Docker container. If a container fails, you may or may not have access to the logs. Systemd provides constructs in managing dependencies quite well. And finally, you may not be using Docker on the machine, while Systemd is quite ubiquitous on any Linux.</p> How to import 'any' Kubernetes package into your project? https://suraj.io/post/2021/05/k8s-import/ Sun, 30 May 2021 09:40:00 +0530 https://suraj.io/post/2021/05/k8s-import/ <p>The client libraries that Kubernetes ships are meant to be imported, and you definitely don&rsquo;t need this post explaining how to import them in your Golang based project. A simple <code>go get ...</code> should do the trick. But, what about the packages that are not meant to be imported? Or the ones that cannot be imported because of <em>&ldquo;technical reasons&rdquo;</em> ? Could you simply add them to your import statements in the <code>.go</code> file, and the <code>go</code> binary will do the right thing when you build the code? Well, let&rsquo;s find that out!</p> How to generate a self-signed TLS certificate for Kubernetes Admission Webhook Servers? https://suraj.io/post/2021/05/self-sign-k8s-cert/ Fri, 21 May 2021 15:33:07 +0530 https://suraj.io/post/2021/05/self-sign-k8s-cert/ A simple binary to generate TLS x509 certificates. Learnings from 'The Psychology of Money' https://suraj.io/post/2021/05/learnings-psychology-of-money/ Thu, 20 May 2021 12:15:07 +0530 https://suraj.io/post/2021/05/learnings-psychology-of-money/ <h2 id="synopsis-of-the-book">Synopsis of the Book</h2> <p><a href="https://amzn.to/3B383Cl">The Psychology of Money</a>, written by <a href="https://twitter.com/morganhousel">Morgan Housel</a>, published in 2020, could be categorised under Psychology, Finance, and Nonfiction. The author wrote <a href="https://www.collaborativefund.com/blog/the-psychology-of-money/">an article</a> three years ago which got a lot of traffic hence decided to write a book out of it. Last year I saw that the book was recommended by many folks in my network and on Twitter. All of the recommenders were highly impressed by the book and spoke intensely of it. Now that I have finished it, I can understand why!</p> Mitigation of: Access Any Kubernetes Secret https://suraj.io/post/2021/05/access-k8s-secrets-mitigation/ Thu, 20 May 2021 08:47:07 +0530 https://suraj.io/post/2021/05/access-k8s-secrets-mitigation/ A Validating Admission Webhook Server to deny anyone accessing forbidden Kubernetes Secrets! Access Any Kubernetes Secret https://suraj.io/post/2021/05/access-k8s-secrets/ Sat, 08 May 2021 12:17:07 +0530 https://suraj.io/post/2021/05/access-k8s-secrets/ A little trickery and access any Kubernetes Secret! Religious Rituals Don't Scale With Population https://suraj.io/post/2021/04/rituals-dont-scale/ Mon, 12 Apr 2021 07:07:07 +0530 https://suraj.io/post/2021/04/rituals-dont-scale/ How Hindus need to introspect and evolve! Monitor your PC with Prometheus Grafana stack https://suraj.io/post/2021/03/node-monitor/ Fri, 02 Apr 2021 07:07:07 +0530 https://suraj.io/post/2021/03/node-monitor/ Get a fine grained view of the happenings on your system! Kubernetes The Hard Way in "Vagrant"? https://suraj.io/post/2021/03/kthw-vagrant/ Tue, 23 Mar 2021 07:07:07 +0530 https://suraj.io/post/2021/03/kthw-vagrant/ The first step in your CKA preparation! How we manage Kubernetes Bangalore Meetup? https://suraj.io/post/2021/03/k8s-blr-meetup/ Wed, 17 Mar 2021 07:07:07 +0530 https://suraj.io/post/2021/03/k8s-blr-meetup/ The method of stress-free event management! On Compounder Skills https://suraj.io/post/2021/03/compounder-skills/ Tue, 16 Mar 2021 07:07:07 +0530 https://suraj.io/post/2021/03/compounder-skills/ The foundational skills which improves everything else. Importance of Typing Skills https://suraj.io/post/2021/02/typing-skills/ Sun, 28 Feb 2021 07:07:07 +0530 https://suraj.io/post/2021/02/typing-skills/ The foundational skill which improves everything else. My Knowledge Management Journey https://suraj.io/post/2021/02/kms-journey/ Tue, 23 Feb 2021 09:07:07 +0530 https://suraj.io/post/2021/02/kms-journey/ The story of various tools I have used over last five years. Book: How Innovation Works https://suraj.io/post/2021/02/book-hiw-learnings/ Wed, 10 Feb 2021 21:43:07 +0530 https://suraj.io/post/2021/02/book-hiw-learnings/ And Why It Flourishes in Freedom by Matt Ridley Enable TLS bootstrapping in a Kubernetes cluster https://suraj.io/post/2021/02/k8s-bootstrap-token/ Sat, 06 Feb 2021 10:25:41 +0530 https://suraj.io/post/2021/02/k8s-bootstrap-token/ Add a new node using a bootstrap token to Kubernetes Kubernetes Cluster using Kubeadm on Flatcar Container Linux https://suraj.io/post/2021/01/kubeadm-flatcar/ Fri, 29 Jan 2021 22:02:41 +0530 https://suraj.io/post/2021/01/kubeadm-flatcar/ Simple steps to install the cluster based on Flatcar Container Linux Exec in container environment https://suraj.io/post/2021/01/shell-exec/ Sat, 23 Jan 2021 10:10:41 +0530 https://suraj.io/post/2021/01/shell-exec/ The correct way to use exec and the signal passing. Monitor releases of your favourite software https://suraj.io/post/monitor-releases-of-your-favourite-software/ Sun, 17 Jan 2021 12:28:51 +0530 https://suraj.io/post/monitor-releases-of-your-favourite-software/ Be on top of the releases of the software you rely upon! Mental models for understanding Kubernetes Pod Security Policy https://suraj.io/post/mental-models-for-understanding-kubernetes-pod-security-policy/ Sat, 16 Jan 2021 13:10:51 +0530 https://suraj.io/post/mental-models-for-understanding-kubernetes-pod-security-policy/ Getting the game of PSP right! Linux Partitioning Guide https://suraj.io/post/fedora-partitioning/ Mon, 11 Jan 2021 17:00:51 +0530 https://suraj.io/post/fedora-partitioning/ How to create partitions for Linux? Book Review: How to Take Smart Notes https://suraj.io/post/book-review-how-to-take-smart-notes/ Sat, 28 Nov 2020 21:30:07 +0530 https://suraj.io/post/book-review-how-to-take-smart-notes/ One Simple Technique to Boost Writing, Learning and Thinking – for Students, Academics and Nonfiction Book Writers by Sönke Ahrens Book Review: Algorithms to Live by — The Computer Science of Human Decisions https://suraj.io/post/book-review-algorithms-to-live-by-the-computer-science-of-human-decisions/ Sun, 11 Oct 2020 17:30:07 +0530 https://suraj.io/post/book-review-algorithms-to-live-by-the-computer-science-of-human-decisions/ Authors: Brian Christian and Tom Griffiths How to gracefully kill Kubernetes Jobs with a sidecar? https://suraj.io/post/how-to-gracefully-kill-kubernetes-jobs-with-a-sidecar/ Sat, 29 Aug 2020 15:33:51 +0530 https://suraj.io/post/how-to-gracefully-kill-kubernetes-jobs-with-a-sidecar/ A sidecar in a Kubernetes Job, what? Yeah you might need one and here is how to shut it. Use Configmap for Scripts https://suraj.io/post/use-configmap-for-scripts/ Sat, 22 Aug 2020 21:00:51 +0530 https://suraj.io/post/use-configmap-for-scripts/ A new way to ship scripts to container images. Being Productive with Git https://suraj.io/post/being-productive-with-git/ Sun, 16 Aug 2020 22:00:51 +0530 https://suraj.io/post/being-productive-with-git/ Tips and tricks to make your day to day usage easier. Being Productive with Kubectl https://suraj.io/post/being-productive-with-kubectl/ Sun, 02 Aug 2020 16:00:51 +0530 https://suraj.io/post/being-productive-with-kubectl/ Tips and tricks to make your day to day usage easier How to backup and restore Prometheus? https://suraj.io/post/how-to-backup-and-restore-prometheus/ Fri, 31 Jul 2020 19:00:51 +0530 https://suraj.io/post/how-to-backup-and-restore-prometheus/ Backing up Prometheus??!! Book Review: Getting Things Done https://suraj.io/post/book-review-getting-things-done/ Thu, 30 Jul 2020 16:00:07 +0530 https://suraj.io/post/book-review-getting-things-done/ The Art of Stress-free Productivity - David Allen Framework for managing random scripts and binaries https://suraj.io/post/framework-for-scripts-and-binaries/ Sat, 18 Jul 2020 19:00:51 +0530 https://suraj.io/post/framework-for-scripts-and-binaries/ This is an explanation of the framework that I have created to manage scripts and binaries. Opinion: Contemporary world vis-à-vis 1984 by George Orwell https://suraj.io/post/opinion-contemporary-world-1984-by-george-orwell/ Sun, 05 Jul 2020 11:30:07 +0530 https://suraj.io/post/opinion-contemporary-world-1984-by-george-orwell/ The Unsettling Similarity of Timeless Dystopian Novel. Book Review of Einstein: His Life and Universe https://suraj.io/post/book-review-einstein/ Sat, 20 Jun 2020 11:30:07 +0530 https://suraj.io/post/book-review-einstein/ Authored by Walter Isaacson Watch Container Traffic Without Exec https://suraj.io/post/snoop-on-pod-traffic/ Sat, 06 Jun 2020 20:30:07 +0530 https://suraj.io/post/snoop-on-pod-traffic/ How to watch the traffic of a container or a pod without execing into the pod/contaienr? Enabling Seccomp on your Prometheus Operator and related Pods https://suraj.io/post/seccomp-in-kube-state-metrics/ Tue, 14 Apr 2020 11:57:07 +0530 https://suraj.io/post/seccomp-in-kube-state-metrics/ This post shows how you can enable seccomp on all the Pods that are deployed with Prometheus Operator Capabilities on executables https://suraj.io/post/linux-cap-note/ Tue, 25 Jun 2019 15:15:07 +0530 https://suraj.io/post/linux-cap-note/ Note on Linux Kernel capabilities Root user inside container is root on the host https://suraj.io/post/root-in-container-root-on-host/ Tue, 25 Jun 2019 11:57:07 +0530 https://suraj.io/post/root-in-container-root-on-host/ The easiest way to prove that root inside the container is also root on the host Project specific scripts https://suraj.io/post/project-specific-scripts/ Sun, 23 Jun 2019 11:57:07 +0530 https://suraj.io/post/project-specific-scripts/ Instead of polluting your PATH the easier way to put project specific scripts Copying files to container the generic way https://suraj.io/post/copy-to-container-without-docker-cp/ Fri, 21 Jun 2019 11:57:07 +0530 https://suraj.io/post/copy-to-container-without-docker-cp/ No docker cp needed to copy files from host to your container Writing your own Seccomp profiles for Docker https://suraj.io/post/docker-seccomp-manual/ Mon, 10 Jun 2019 11:57:07 +0530 https://suraj.io/post/docker-seccomp-manual/ Understanding the seccomp profile json format Kubernetes Bangalore March 2019 Event Report https://suraj.io/post/k8s-blr-event-report-2019-03-16/ Thu, 21 Mar 2019 01:00:51 +0530 https://suraj.io/post/k8s-blr-event-report-2019-03-16/ Event Report for Kubernetes Bangalore Meetup Make static configs available for apiserver in minikube https://suraj.io/post/apiserver-in-minikube-static-configs/ Sun, 20 Jan 2019 01:00:51 +0530 https://suraj.io/post/apiserver-in-minikube-static-configs/ Dealing with apiserver in minikube can be tricky Recreate Kubernetes CVE-2017-1002101 https://suraj.io/post/cve-2017-1002101-subpath-volume-mount-recreate/ Mon, 14 Jan 2019 01:00:51 +0530 https://suraj.io/post/cve-2017-1002101-subpath-volume-mount-recreate/ Subpath Volume Mount could give you access to node Cobra and Persistentflags gotchas https://suraj.io/post/cobra-persistent-flag/ Fri, 04 Jan 2019 01:00:51 +0530 https://suraj.io/post/cobra-persistent-flag/ How wrong usage of persistent flags can burn you Old laptop setup reference https://suraj.io/post/old-laptop-setup/ Sun, 30 Dec 2018 01:00:51 +0530 https://suraj.io/post/old-laptop-setup/ Links and things to do while setting up older Dell Inspiron 1525 Add new Node to k8s cluster with Bootstrap token https://suraj.io/post/add-new-k8s-node-bootstrap-token/ Wed, 24 Oct 2018 01:00:51 +0530 https://suraj.io/post/add-new-k8s-node-bootstrap-token/ Use this technique to add new node to the cluster without providing any certificates and without having to restart the kube-apiserver PodSecurityPolicy on existing Kubernetes clusters https://suraj.io/post/psp-on-existing-cluster/ Tue, 23 Oct 2018 00:00:51 +0530 https://suraj.io/post/psp-on-existing-cluster/ Burnt by enabling PSPs on existing Kubernetes and wondering why everything still works Road to CKA https://suraj.io/post/road-to-cka/ Sun, 21 Oct 2018 00:00:51 +0530 https://suraj.io/post/road-to-cka/ My experience with CKA exam preparation How to disable your Chrome Ctrl + W keybinding https://suraj.io/post/disable-ctrl-w/ Tue, 16 Oct 2018 22:00:51 +0530 https://suraj.io/post/disable-ctrl-w/ Learn how to disable the shortcut Ctrl + W altogether on your GNOME Add new Node to k8s cluster with cert rotation https://suraj.io/post/add-new-k8s-node-cert-rotate/ Tue, 16 Oct 2018 01:00:51 +0530 https://suraj.io/post/add-new-k8s-node-cert-rotate/ Use this technique to add node to the cluster without providing any certificates Adding new worker to existing Kubernetes cluster https://suraj.io/post/add-new-k8s-node-manually/ Sun, 23 Sep 2018 01:00:51 +0530 https://suraj.io/post/add-new-k8s-node-manually/ Step by step guide to add new node Single node Kubernetes Cluster on Fedora with SELinux enabled https://suraj.io/post/single-node-k8s-fedora-selinux/ Tue, 11 Sep 2018 01:00:51 +0530 https://suraj.io/post/single-node-k8s-fedora-selinux/ Kubeadm to install Single Node K8S with SELinux HostPath volumes and it's problems https://suraj.io/post/k8s-hostpat-nuke-nodes/ Mon, 10 Sep 2018 01:00:51 +0530 https://suraj.io/post/k8s-hostpat-nuke-nodes/ Kubernetes HostPath volume good way to nuke your Kubernetes Nodes HTTPS during development using 'mkcert' https://suraj.io/post/mkcert-using-python-http-server/ Tue, 14 Aug 2018 01:00:51 +0530 https://suraj.io/post/mkcert-using-python-http-server/ Use https even during your development Golang struct tags gotchas https://suraj.io/post/golang-struct-tags-space/ Sun, 12 Aug 2018 01:00:51 +0530 https://suraj.io/post/golang-struct-tags-space/ Struct tags can give you problems you didn&#39;t see coming ;-) Access etcd in OpenShift origin https://suraj.io/post/accessing-oc-cluster-up-etcd/ Wed, 11 Jul 2018 01:00:51 +0530 https://suraj.io/post/accessing-oc-cluster-up-etcd/ Access the etcd in OpenShift started by oc cluster up Change namespaces in Kubernetes https://suraj.io/post/changing-k8s-ns/ Mon, 02 Jul 2018 08:00:51 +0530 https://suraj.io/post/changing-k8s-ns/ Easy way to change namespace in Kubernetes Prometheus with existing application on OpenShift https://suraj.io/post/using-prometheus/ Wed, 04 Apr 2018 08:00:51 +0530 https://suraj.io/post/using-prometheus/ Setting up Prometheus with any application Notes on talk - Advanced testing in golang by Mitchell Hashimoto https://suraj.io/post/advanced-golang-testing-mitchellh-talk-notes/ Wed, 07 Mar 2018 02:21:49 +0530 https://suraj.io/post/advanced-golang-testing-mitchellh-talk-notes/ This talk has really great takeaways which are worth considering while writing your tests Methods that satisfy interfaces in golang https://suraj.io/post/golang-methods-interfaces/ Fri, 23 Feb 2018 08:00:51 +0530 https://suraj.io/post/golang-methods-interfaces/ What receiver type methods satisfy which interface, can be understood here. vscode Shortcuts https://suraj.io/post/vscode-shortcuts/ Thu, 22 Feb 2018 08:00:51 +0530 https://suraj.io/post/vscode-shortcuts/ Shortcuts for vscode and some notes Using private container registries from minikube https://suraj.io/post/private-registry-from-minikube/ Fri, 06 Oct 2017 19:32:33 +0530 https://suraj.io/post/private-registry-from-minikube/ A guide to how would you download image from private container registry in minikube Static Pods using Kubelet on Fedora https://suraj.io/post/static-pods/ Sat, 23 Sep 2017 13:10:14 +0530 https://suraj.io/post/static-pods/ Extension to the Kelsey Hightower&#39;s tutorial on &#39;Standalone Kubelet&#39; Sharing Vagrant Box offline https://suraj.io/post/move-vagrant-boxes/ Mon, 18 Sep 2017 10:43:46 +0530 https://suraj.io/post/move-vagrant-boxes/ Share Vagrant boxes like you shareed Operating System ISOs Add new Maps to Counter Strike https://suraj.io/post/add-new-map-to-cs/ Fri, 01 Sep 2017 16:03:58 +0530 https://suraj.io/post/add-new-map-to-cs/ Steps to add new maps to CS List of Kubernetes Bangalore meetup event report https://suraj.io/post/list-all-k8s-meetups/ Fri, 01 Sep 2017 15:51:16 +0530 https://suraj.io/post/list-all-k8s-meetups/ List of all the Kubernetes and OpenShift meetup event reports Kubernetes Learning resources https://suraj.io/post/k8s-learning-resources/ Thu, 17 Aug 2017 23:12:18 +0530 https://suraj.io/post/k8s-learning-resources/ Places you can find learning material for Kubernetes Bangalore Kubernetes Meetup July 2017 https://suraj.io/post/blr-k8s-meetup-july-2017/ Thu, 13 Jul 2017 22:46:40 +0530 https://suraj.io/post/blr-k8s-meetup-july-2017/ Kubernetes Meetup presentation and talks Clean Node setup https://suraj.io/post/node-no-sudo/ Tue, 04 Jul 2017 22:50:43 +0530 https://suraj.io/post/node-no-sudo/ This will help in intalling node without sudo Bangalore Kubernetes Meetup May 2017 https://suraj.io/post/blr-k8s-meetup-may-2017/ Wed, 24 May 2017 02:21:49 +0530 https://suraj.io/post/blr-k8s-meetup-may-2017/ Kubernetes and OpenShift 101 hands-on workshop Enabling local development with Kubernetes https://suraj.io/post/enabling-local-development-with-k8s/ Sun, 23 Apr 2017 15:57:07 +0530 https://suraj.io/post/enabling-local-development-with-k8s/ If you are doing development and want to use kubernetes for it, then here is how you can do it. Quick PV for local Kubernetes cluster https://suraj.io/post/quick-pv-for-local-k8s/ Tue, 18 Apr 2017 23:56:15 +0530 https://suraj.io/post/quick-pv-for-local-k8s/ A hostPath based local PV creation process for using via PVC Bangalore Kubernetes Meetup April 2017 https://suraj.io/post/blr-k8s-meetup-april-2017/ Sat, 08 Apr 2017 14:31:33 +0530 https://suraj.io/post/blr-k8s-meetup-april-2017/ <p>Like many Saturday mornings, <a href="https://www.google.co.in/search?q=red&#43;hat&#43;bangalore&amp;oq=red&#43;ha&amp;aqs=chrome.0.69i59j69i61l3j69i57j69i59.5776j0j7&amp;sourceid=chrome&amp;ie=UTF-8#q=red&#43;hat&#43;bangalore&amp;rflfq=1&amp;rlha=0&amp;rllag=12949018,77600064,1885&amp;tbm=lcl&amp;tbs=lf_pqs:EAE,lf:1,lf_ui:3&amp;rldoc=1&amp;rlfi=hd:;si:1155840882052252649;mv:!1m3!1d18064.656204115003!2d77.600064!3d12.949018050000001!2m3!1f0!2f0!3f0!3m2!1i91!2i446!4f13.1;tbs:lf_pqs:EAE,lf:1,lf_ui:3">Red Hat Bangalore</a> office was once again abuzz with enthusiasm on 8th of April, for hosting yet another successful chapter of <a href="https://www.meetup.com/kubernetes-openshift-India-Meetup/events/238335903/">Bangalore Kubernetes Meetup</a>. The Meetup had a good turnaround of about 40 people who gave up on their early morning saturday sleep to attend it despite the sweltering hot season and in line were four awesome talks.</p> <p><a href="https://twitter.com/surajd_">Suraj Deshmukh</a> set the stage with his opening talk, <em>Kubernetes on CRI-O</em>, wherein he explained different jargons like OCI, CRI, etc., introduced CRI-O and it’s architecture. Explaining how it glues Kubernetes and OCI compliant runtimes and concluding it with a demo showing how Kubernetes uses CRI-O. Link to <a href="https://docs.google.com/presentation/d/1tP7b1e1fy-n3_v5bilDLjOAheZGu602B3WK-1kxXkVo/edit?usp=sharing">slides</a>, <a href="https://youtu.be/_E7foB4kVGM">video</a>.</p> k8s on CRI-O - single node https://suraj.io/post/using-crio-with-k8s-single-node/ Sat, 08 Apr 2017 00:11:37 +0530 https://suraj.io/post/using-crio-with-k8s-single-node/ How to make kubernetes use CRI-O as container runtime TODOs for new project https://suraj.io/post/starting-a-new-opensource-project-requirements/ Sun, 26 Mar 2017 18:19:15 +0530 https://suraj.io/post/starting-a-new-opensource-project-requirements/ Things to do to make a project successful rpm Notes https://suraj.io/post/rpm-notes/ Fri, 24 Mar 2017 10:35:54 +0530 https://suraj.io/post/rpm-notes/ General notes about rpm packaging and references to upstream docs Git Notes https://suraj.io/post/git-notes/ Tue, 21 Mar 2017 22:03:48 +0530 https://suraj.io/post/git-notes/ Contains notes about using git Intellij Shortcuts https://suraj.io/post/intellij-shortcuts/ Fri, 17 Mar 2017 14:41:51 +0530 https://suraj.io/post/intellij-shortcuts/ Shortcuts of intellij and also some short notes Packaging 'kompose' for centos paas sig https://suraj.io/post/packaging-kompose-for-centos-paas-sig/ Wed, 15 Mar 2017 14:16:43 +0530 https://suraj.io/post/packaging-kompose-for-centos-paas-sig/ <p><strong>Note</strong>: This is a living document and will be updated from time to time.</p> <p>Following are steps to package kompose for <a href="https://wiki.centos.org/SpecialInterestGroup/PaaS">CentOS PAAS SIG</a>. CentOS PAAS SIG is a repository of packages where rpms related to OpenShift and eco-system around it are delivered.</p> <h2 id="setup-your-machine">Setup your machine</h2> <p>Install packages needed</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">sudo yum update -y <span class="o">&amp;&amp;</span> <span class="se">\ </span></span></span><span class="line"><span class="cl">sudo yum install -y epel-release <span class="o">&amp;&amp;</span> <span class="se">\ </span></span></span><span class="line"><span class="cl">sudo yum install -y rpm-build go redhat-rpm-config make koji <span class="se">\ </span></span></span><span class="line"><span class="cl"> gcc byobu rpmlint rpmdevtools centos-packager </span></span></code></pre></div><p>Setup certs</p> Testing 'fedora' and 'CentOS' kompose package https://suraj.io/post/test-kompose/ Tue, 14 Mar 2017 00:31:57 +0530 https://suraj.io/post/test-kompose/ <p>I generally do <code>kompose</code> package testing for <code>fedora</code> and <code>CentOS</code>. So here are the steps I follow.</p> <h2 id="fedora">Fedora</h2> <p>For respective fedora version use the tag respectively for e.g. <code>25</code> for <code>fedora 25</code>.</p> <p>Starting the environment:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">docker run -it registry.fedoraproject.org/fedora:26 bash </span></span></code></pre></div><p>Running tests:</p> <div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl"><span class="c1"># Inside the container</span> </span></span><span class="line"><span class="cl"><span class="c1"># Pull packages from the testing repository</span> </span></span><span class="line"><span class="cl">dnf --enablerepo updates-testing -y install kompose </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Check the kompose version</span> </span></span><span class="line"><span class="cl">kompose version </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Install the testing dependencies</span> </span></span><span class="line"><span class="cl">dnf install -y jq make </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Pull the git repository to run the functional tests</span> </span></span><span class="line"><span class="cl">git clone https://github.com/kubernetes/kompose/ </span></span><span class="line"><span class="cl"><span class="nb">cd</span> kompose </span></span><span class="line"><span class="cl">git reset --hard <span class="k">$(</span>kompose version <span class="p">|</span> cut -d <span class="s2">&#34;(&#34;</span> -f2 <span class="p">|</span> cut -d <span class="s2">&#34;)&#34;</span> -f1<span class="k">)</span> </span></span><span class="line"><span class="cl"> </span></span><span class="line"><span class="cl"><span class="c1"># Run cmd tests</span> </span></span><span class="line"><span class="cl">make test-cmd </span></span></code></pre></div><h2 id="centos-epel-repo">CentOS <code>epel</code> repo</h2> <p>Spin the CentOS environment in container.</p> First post https://suraj.io/post/first-post/ Mon, 13 Mar 2017 00:31:57 +0530 https://suraj.io/post/first-post/ <p>This is the new home for my blog. I use to write on wordpress before. You can find the older blog at <a href="https://deshmukhsuraj.wordpress.com/">https://deshmukhsuraj.wordpress.com</a>. But I wanted to have my own domain and wordpress was charging exorbitantly to connect a custom domain to wordpress, so I just ditched it and started writing here. This is much more convenient.</p> About me https://suraj.io/about/ Mon, 01 Jan 0001 00:00:00 +0000 https://suraj.io/about/ <h2 id="bio">Bio</h2> <p>I am a Senior Software Engineer at Microsoft, where I work on the Confidential Containers project, a CNCF sandbox initiative that aims to provide a secure and private way to run containerized workloads on Kubernetes. I have been involved in the Kubernetes space for over six years and has worked for Red Hat and <a href="https://twitter.com/kinvolkio">Kinvolk</a> on various Kubernetes technologies such as OpenShift, service-meshes, Helm, Lokomotive, etc. I have also contributed to several Kubernetes upstream projects, including Kubernetes, Kubernetes docs, Contour, Podman, and Crio. I hold CKA and CKS certifications, and I was also an organizer of the Kubernetes Bangalore meetup group from 2017 to 2022. I have spoken at numerous conferences and events, such as Kubecon, Pycon India, DevOpsDays Bangalore, FOSDEM, Cloud Native Rejekts, and DevConf.</p>