The contents of this site are my personal thoughts, works, and opinions and do not reflect those of my current or previous employers.

All Posts

Grant's Green Smoothies

Grant’s Green Smoothie Years ago I began making green smoothies for my morning breakfast. Admittedly it was a bit of a hurdle the first few times. Green goop first thing in the morning seems rather gross.

Getting Started With Bigtable on GCP

Bigtable is a fully managed NoSQL database on Google Cloud. It’s designed for low latency data access, where scalability and reliability really matter. And it’s actually the same technology behind the majority of Google products, including Gmail, Maps, YouTube; Each of which serves multi-billion users.

DIY Pool Chiller

Hot as Bathwater When we first got our pool years ago I was considering installing a heater so we could enjoy swimming a bit longer. What no one told me was that here in Texas you really should consider a pool chiller.

Simple Container Deploys on Google Cloud Platform

Google has been working with containers internally since 2003. In 2006 they introduced cgroups to the linux kernel. Kubernetes and GKE are introduced to the world in 2014. Today Google deploys 4 billion containers every week.

Managing Clusters with Cluster Registry

The Cluster Registry is part of the kubernetes foundation but is not included in the distribution by default. It’s added through a simple kubectl apply command. The cluster registry provides a simple yet powerful feature in that it enables a new resource type of Cluster to be added to your api calls.

Multicluster Istio on GKE

In this example we’ll create a single Istio mesh across multiple regionally separated GKE clusters. Once setup, we’ll demonstrate the installation using Istio’s BookInfo application. While you can accomplish this on your laptop, I’ll be demonstrating through Google Cloud Shell, which already includes many of the tools we’ll be using, as well as a standard environment we can all work from.

Using the ESP8266 WiFi Module with Arduino Uno publishing to ThingSpeak

I’ve got this ESP8266 WiFi module hanging around that I’ve never really used. I also have a few Arduino UNOs sitting here not getting any use at the moment. I thought this would be a great time to put the two together for a project I’m working on.

About a blog

About this blog This blog will someday be something awesome. For now it’s more of a playground for me to work with hugo and github pages. Why Hugo? Good Question. All the cool kids are out there publishing static sites free using github pages.

Global ingress in practice on Google Container Engine - Part 2- Demo

This article is a follow up to a couple previous ones, namely Global Kubernetes in 3 Steps on GCP which walks through setting up a global cluster, and Global ingress in practice on Google Container Engine — Part 1: Discussion which discusses how you would use a Global cluster with a Google LoadBalancer for Ingress.

Global ingress in practice on Google Container Engine - Part 1- Discussion

In this article I’ll cover a variety of challenges I faced and solutions I figured out when deploying a real app to a Global Federated cluster using GCE ingress controller. In part 1 I’ll discuss the concepts, and in part 2 we’ll do an end to end deployment with real code.

Global Kubernetes in 3 Steps

Global Kubernetes in 3 Steps Creating a globally federated kubernetes cluster may sound daunting but it really only takes a few small steps. Create the project and clusters Install and Join to kubefed Deploy globally The kubefed utility takes most of the effort out of this process.

Deis on Google Container Engine with Private GCR.io registry

Deis allows you to quickly deploy applications using just a few short commands: Create, Configure and Pull. Since your app is deployed as standard Kubernetes pods, you can take advantage of all the robust capabilities k8s offers, coupled with the simplicity of deploying to a Paas.

Using Google’s Private Container Registry with Docker

Overview Using Google’s Private Container Registry with Docker Google’s Container Registry provides a managed and private repository for storing your Docker images. With a simple gcloud command you can push and pull to your private google project repository.

7 Tips For a Better Resume

Someone just asked me for some advice about their resume. After writing it up I figured you all might find some value from it as well. Here are 7 tips I’ve picked up after years and years of writing and reviewing resumes.

Analyzing Google Billing Data with Bigquery

In this tutorial we’ll walk through how to export your billing data to big query. We’ll then explore the schema and answer some common questions by querying the data. Before you begin You’ll need to setup billing export to big query for your project.

Google Cloud Initial Project Creation

Overview Google Cloud Platform offers a free tier for many of their products. Additionally they offer a $300 credit on top of that. Its a great way to dip your toes in and try out everything they offer.

Deployment Strategies and Release Best Practices

In this article we’ll be covering various options and considerations for deploying code and releasing features. We’ll discuss patterns for deploying to a fixed set of servers as well as variations where multiple groups of servers can be utilized.

Deis Workflow, a Paas on Kubernetes?

Deis Workflow is a great addition to the Kubernetes ecosystem. I know what your asking though, why would you want to stack a Paas on containers which are already on top of Iaas .

Getting Started with Google Container Engine - Tutorial

Kubernetes provides orchestration for running containerized applications. In this tutorial we’ll walk through the basics of using Google Container Engine, or GKE, which provides managed Kubernets services for your use.

Golang oAuth2 Google Example for Web and API

Introduction The oAuth2 protocol has almost become a standard for securing websites and API services. Developers no longer need to store and manage userIDs and passwords for their users. Offloading the authentication to oAuth providers such as Google, Facebook, Linkedin, Github keeps the authentication with username and password, within those providers rather than passing through the developer’s application.

Developing a simple CRUD API with Go, Gin and Gorm

Introduction Golang is an exciting language but newcomers can be overwhelmed by the new semantics and variety of frameworks available. Getting started with the basics can feel like a challenge.

Getting started with go

Overview Golang (or just Go) is a great language for building simple and reliable applications. Over the past years there has been a visible shift in the tooling community as teams throughout the internet rewrite their apps from ruby or python to Go.

One Click Jenkins Install With Google Cloud Launcher

Google Cloud Launcher from Christopher Grant on Vimeo.

How to Deploy a Java Application to Google Compute Engine

The following walkthrough is a short example of how very simple scripting can bootstrap development on Google Compute Engine. Source All the source code for this example can be found here on github

Creating an instance in Google Cloud

Google Cloud Developer Console Overview from Christopher Grant on Vimeo.

All Posts

All Posts