Deploy a Three Tier Web Application to Kubernetes

Saturday, June 17, 2017

Multi-tier architectures are a common way to design web applications:

  1. A frontend - presentation - tier which provides the user interface
  2. An application - logic - tier where the processing happens
  3. A backend - data - tier where different storage technologies run

The different tiers could be deployed to a single virtual machine. Configuration management tools such as Ansible, Salt, Chef, or Puppet could be used to automate the deployment process. However, if the web application needs to start handling more traffic, it is only a matter of time before the resources of that single virtual machine are consumed. The single virtual machine could be scaled up by adding more CPU, RAM, and storage, but there is usually an upper limit to doing that.

Continue reading...

Beginning to Understand Docker and Kubernetes

Tuesday, June 13, 2017

If you are just getting started with containers and container orchestration, it can be difficult to focus on what to learn with all the different technologies available. It is important to understand the basics so you can build your foundational knowledge.

Continue reading...

Use Google App Engine and Golang to Host a Static Website with Same Domain Redirects

Wednesday, March 8, 2017

There are several inexpensive ways to host a static website generated with a static site generator like Jekyll, Hugo, or Pelican:

This entire blog is statically generated using Jekyll. However, I am unable to use any of the options above, because, over the blog’s lifetime, I have changed domain names, changed URL schemes, and renamed posts, and I wanted to keep alive all of the old URLs.

Continue reading...

curl Commands Cheat Sheet

Tuesday, March 7, 2017

Anyone involved with web development, web application programming, creating REST APIs, or interfacing with REST APIs is going to have the curl command in their tool belt. It is an extremely versatile tool that can talk to many different protocols.

Continue reading...

Use Google App Engine and Python for Inexpensive Domain Redirects

Monday, March 6, 2017

This blog has existed under a few domain names: workingconfig.com, thornelaboratories.net, and, now, thornelabs.net. workingconfig.com didn’t exist for very long, and never had many - if any - backlinks to it; it didn’t make sense to keep those URLs alive. thornelaboratories.net, on the other hand, did exist for a longer period of time, and it had enough URLs I wanted to keep alive.

Continue reading...

rpm Commands Cheat Sheet

Sunday, March 5, 2017

The yum command, and now the newer dnf command, typically provide all of the functionality needed to manage packages on RPM-based Linux distributions. However, sometimes you just need to use the rpm command to fix a problem or get a piece of information about a package yum or dnf might not provide.

Continue reading...

Website Development Tools and Resources

Saturday, February 25, 2017

I have always preferred web development. I think it’s due to how quickly something can be published and made available to the world.

There are an endless number of tools and resources available for web developers. This post aggregates some of the tools and resources I have used throughout my projects.

Continue reading...

Bootstrap Resources

Saturday, February 25, 2017

Bootstrap is a popular HTML, CSS, and Javascript frontend framework to quickly develop clean, responsive, and well layed out websites. I have used Bootstrap in every web-based project I have started because it makes styling and placing of web objects easy and straightforward.

Continue reading...

Use lego, gcloud DNS, and DNS Challenge to Generate Let's Encrypt SSL Certificates

Tuesday, November 8, 2016

Since it was released to the world, Let’s Encrypt has been a boon for anyone wanting to secure their website or web application with TLS. A lot of work has been, and continues to be, done to provide HTTPS to the masses.

Because Let’s Encrypt is an open certificate authority and provides an API to generate, renew, and revoke SSL certificates, anyone can create tools to make a historically cumbersome and difficult process more efficient and easier.

Continue reading...