Blog Posts
- 18 Dec 2023 » My Cyberpunk Weekend - Part 3: Using Docker and GPUs
- 10 Dec 2023 » My Cyberpunk Weekend - Part 2: The Llama
- 04 Dec 2023 » My Cyberpunk Weekend - Part 1: The Video Card (Or Neural Core, Take Your Pick)
- 23 Nov 2023 » Restarting Kubernetes Pods When There Are New Secrets With Reloader
- 02 Sep 2023 » Understanding Kubernetes Pod Security: runAsNonRoot and runAsUser
- 02 Sep 2023 » Why My Flask App Refused to Crash: Understanding PID 1 in Containers and Kubernetes
- 12 Aug 2023 » Three Steps to a Default Secure Kubernetes
- 02 Aug 2023 » Making Pod Security Standards the Default in Kubernetes
- 30 Jul 2023 » Chain-Link - A Chain of Services in Kubernetes
- 29 Jul 2023 » blockfriday - Blocking Kubernetes Deployments with an Admission Controller
- 28 Jul 2023 » Cert Manager's CA Injector and Validating Webhooks
- 31 Mar 2023 » Command Collections/Groups in Bash Scripts
- 16 Jan 2023 » Using AWS Nuke
- 22 Dec 2022 » Jenkins and Kubernetes: Getting the plugin working
- 08 Nov 2022 » Things I learned: Computer Security Acronyms
- 06 Jun 2022 » Homelab - Hardware and Layout
- 11 May 2022 » Creating CUSTOM Secure Software Supply Chains with Tanzu
- 10 May 2022 » Secure Software Supply Chains and the Tanzu Application Platform
- 03 May 2022 » Deploy Tanzu Kubernetes Grid in an Offline/Airgapped Environment
- 26 Apr 2022 » Tanzu Application Platform on a Windows Workstation
- 12 Jan 2022 » Tanzu Application Platform, knative, and a NodeJS App
- 11 Jan 2022 » Tanzu Application Platform and knative
- 21 Dec 2021 » Azure Functions, Managed Identity, NodeJS, and Key Vault
- 13 Dec 2021 » Dev Experience: My First Look at Azure Functions
- 01 Dec 2021 » Dev Experience: Managing Secrets with Doppler
- 29 Nov 2021 » Dev Experience: Writing a NodeJS REST API with Firebase
- 10 Sep 2021 » Deploy Tanzu Build Service into a vSphere with Tanzu Workload Cluster
- 24 Aug 2021 » Using kubectl run to create privileged container
- 30 Jul 2021 » Software Supply Chain Security Part 1 - Container Images
- 27 Jul 2021 » Thoughts on the Certified Kubernetes Security Specialist Certification Exam
- 03 Jul 2021 » How to Fix a Blinking Cursor on Ubuntu Boot
- 31 May 2021 » OpenBSD 6.9 on Protecli 6 Port Firewall
- 10 Feb 2021 » Using xfreerdp from Linux to Windows (with i3)
- 15 Dec 2020 » Linux Budget Workstation
- 25 Nov 2020 » Install Tanzu Kubernetes Grid in Azure
- 06 Nov 2020 » Merge Kubernetes Config Files
- 04 Nov 2020 » Upgrade Tanzu Kubernetes Grid Multicloud 1.1.3 to 1.2
- 03 Oct 2020 » Deploy Harbor with Helm
- 17 Aug 2020 » Use a Github Personal Access Token with the Concourse CI/CD System
- 12 Aug 2020 » Remove Recent Commits from a Git Repo
- 06 Aug 2020 » Quick Look at the Tanzu Build Service
- 20 Jul 2020 » vSphere 7 with Kubernetes and NSXT 3.0
- 03 Jul 2020 » Simple NSX-T Design - Dual N-VDS and Edge VM on VDS
- 02 Jun 2020 » Kubernetes Tips and Tricks
- 28 May 2020 » TUF, Notary, and Harbor Registry
- 21 May 2020 » Deploy Harbor with Helm and Custom CA Certs
- 18 May 2020 » A Week with Ubuntu 20.04
- 13 May 2020 » Virtual NSX-t and TKGI Lab
- 06 May 2020 » Spring Cloud Gateway - Animal Rescue
- 05 May 2020 » GraalVM Native Images
- 02 May 2020 » Tanzu Kubernetes Grid and Antrea
- 28 Apr 2020 » Install the Harbor Container Image Registry Locally
- 28 Mar 2020 » Use .local Domain in Ubuntu 18.04
- 25 Mar 2020 » Change or Rewrite cluster.local in Kubernetes
- 21 Mar 2020 » PKS and Persistent Volumes
- 01 Mar 2020 » Wireguard, Dante, and Firefox
- 22 Feb 2020 » Overriding Docker Entrypoint when Running from CLI
- 16 Feb 2020 » 20 Tools to Manage Kubernetes Manifests
- 15 Feb 2020 » Kubernetes and Mimesis - The YAML is not the (M)App
- 02 Feb 2020 » Investigating Curl Bash Installs with Docker
- 16 Dec 2019 » Cloud Native Buildpacks
- 27 Nov 2019 » Speedy Software Distribution
- 29 Sep 2019 » Mikrotik CRS326-24G-2S+RM
- 01 Jul 2019 » Mikrotik RB2011 Won't Reset to Default Configuration
- 01 Jul 2019 » The Hard Thing About Hard Things
- 31 May 2019 » WIFI - Error Connection activation failed, Secrets were required, but not provided.
- 20 May 2019 » What is StarlingX?
- 19 May 2019 » Install and Use Podman (Instead of Docker)
- 18 May 2019 » DevOps - You Need a Factory
- 17 May 2019 » Install and Boot an Older Kernel in Ubuntu
- 17 May 2019 » Install a Linux Rootkit to Test Security Systems With
- 10 Apr 2019 » First Look - Kubeaudit
- 01 Feb 2019 » Check Host Keys in Ansible Tower/AWX
- 31 Dec 2018 » Ten Million Packets per Second with Moongen
- 24 Nov 2018 » Book Review - Leading the Unleadable
- 18 Nov 2018 » Configure Bind to Respond with a Single IP to Any Query
- 14 Nov 2018 » OpenStack Zun and Kata Containers
- 10 Oct 2018 » Inverting, Reversing, or Mirroring a Binary Tree
- 06 Oct 2018 » How to Study for the Certified Kubernetes Administrator (CKA) Exam
- 27 Sep 2018 » Add a User to Kubernetes
- 19 Sep 2018 » Local Persistent Volumes with Kubernetes
- 03 Sep 2018 » Vent - Kubernetes the Hard Way with Ansible and Packet.net
- 18 Jul 2018 » Infinite Regress - Dependencies All the Way Down
- 02 Jul 2018 » Using OpenShift's Docker Remote Registry
- 26 Jun 2018 » Using Cloud Images With KVM
- 14 Jun 2018 » An Introduction to 5G Network Slicing
- 10 Jun 2018 » The Four Major Components of NFV
- 28 May 2018 » OpenStack Vancouver Summit 2018
- 13 May 2018 » Service Providers and Telecoms Must Accept Complexity
- 31 Mar 2018 » Open Networking Summit North America 2018
- 15 Mar 2018 » Jinja2 Namespaces and Variable Scope
- 19 Feb 2018 » Juniper vSRX MPLS Lab
- 24 Jan 2018 » Connecting to Juniper with Ansible
- 14 Jan 2018 » Setting Up Google Cloud DNS with gcloud
- 06 Jan 2018 » My Thoughts on Meltdown and Spectre
- 30 Dec 2017 » Three Things About 2017
- 22 Nov 2017 » Fedora 27 Automatic Updates
- 09 Nov 2017 » Three Toronto Tech Meetups
- 05 Nov 2017 » Three Pillars of Modern Networking
- 25 Sep 2017 » Forms of Service Functioning Chaining and a BigSwitch Example
- 28 Aug 2017 » Clean Keystone Catalog URLs
- 15 Aug 2017 » Create an OpenStack Load Balancer
- 11 Aug 2017 » Install the Ocatvia Loadbalancing System into an OpenStack Cloud
- 28 Jul 2017 » Install easy-rsa on Ubuntu
- 10 Jun 2017 » Setting up a Sensu Slack Handler
- 06 Jun 2017 » Setting the Default MTU in Neutron VXLAN Networks to be 1500
- 05 Jun 2017 » Build a Docker Private Registry with Self-Signed SSL
- 02 Jun 2017 » Installing Kubernetes with Kubeadm
- 02 Jun 2017 » Installing Weave Scope into Kubernetes
- 13 May 2017 » OpenStack Boston Summit 2017
- 09 May 2017 » OpenStack Multi-site, Multi-clouds, and Distributed Clouds
- 24 Jan 2017 » SDN on All Interfaces
- 09 Jan 2017 » OpenDaylight Boron, OpenStack, and Networking-ODL
- 21 Dec 2016 » What OpenStack Distros?
- 17 Dec 2016 » Tracing or Logging RabbitMQ
- 11 Dec 2016 » OpenStack Bifrost
- 03 Dec 2016 » Moore's Law and the Datacenter
- 23 Nov 2016 » The First OpenStack Days Canada
- 23 Nov 2016 » Demystifying Kubernetes and OpenStack
- 11 Nov 2016 » Rsyslog to Elasticsearch
- 02 Nov 2016 » OpenStack and ETSI MANO
- 18 Oct 2016 » Distributed Cron With Nomad
- 01 Oct 2016 » Getting an AWS Instance's Region with Boto
- 05 Sep 2016 » Kubernetes the Hard Way in AWS with Ansible
- 05 Sep 2016 » Installing ZFS in an AWS EC2 Instance Using User-Data
- 16 Aug 2016 » Ansible and Ubuntu 16.04 Xenial - Get Python 2.7
- 23 Jul 2016 » RedHat OpenStack Director - Part 1 - Overview
- 08 Jul 2016 » Glance with Multiple Backend Stores
- 24 Jun 2016 » Split OpenStack Keystone Catalog
- 24 Jun 2016 » OPNFV Summit 2016
- 22 Jun 2016 » Getting a Data Simcard while Travelling in Germany
- 11 Jun 2016 » OpenStack Provider Networks
- 01 May 2016 » Austin 2016 OpenStack Summit
- 14 Apr 2016 » Analysis of OpenStack Austin 2016 NFV/Telco Track
- 25 Mar 2016 » Edgecore 5712 Switch
- 24 Mar 2016 » Packaged OpenVSwitch with DPDK on Ubuntu Trusty
- 11 Mar 2016 » Infrastructure Zero
- 23 Feb 2016 » OpenStack Operators Midcycle, OpenStack Ansible Midcycle, and Ansible Fest
- 25 Jan 2016 » GRE point to point and AWS VPC
- 31 Dec 2015 » A Year with Midokura's Midonet and OpenStack
- 23 Dec 2015 » Easy VPN or Proxy for Firefox with SSH
- 22 Dec 2015 » Docker Machine, OpenStack, and Neutron LBaaS
- 05 Dec 2015 » DevOps is a Useful Label
- 07 Nov 2015 » OpenStack Tokyo Summit
- 18 Oct 2015 » Thoughts on Redhat buying Ansible
- 17 Oct 2015 » Mariadb Galera 5.5.42 Crash
- 03 Oct 2015 » First look at ZeroTier
- 29 Sep 2015 » MariaDB MaxScale Read and Write Splitting
- 25 Sep 2015 » Notes on MySQL, MariaDB, and Galera
- 25 Aug 2015 » Why I like SDN
- 23 Aug 2015 » Bin Packing with Python
- 19 Aug 2015 » Palo Alto OpenStack Operators Meetup
- 25 Jul 2015 » The Layers of OpenStack
- 15 Jul 2015 » Dealing with Zombie Cinder Volumes
- 23 Jun 2015 » Rabbitmq Server with SSL/TLS
- 21 Jun 2015 » Monitorama 2015
- 05 Apr 2015 » ucarp Virtual IP Addresses
- 02 Feb 2015 » Trying OSPF with Quagga and OpenBGP
- 29 Jan 2015 » Tinc VPN (and Ansible)
- 27 Jan 2015 » Ansible Custom Facts
- 25 Jan 2015 » Non-Cartesian OpenStack
- 21 Jan 2015 » OpenStack - Bridge not replying to ARP Requests
- 13 Dec 2014 » Providing gems as debs using fpm and Package Cloud
- 06 Dec 2014 » Inaugural Vancouver OpenStack and Ansible Meetups
- 14 Nov 2014 » SimpleStack
- 04 Nov 2014 » 8 Months with So You Start (OVH) - A review
- 15 Oct 2014 » Also Blogging at flatlinesecurity.com
- 23 Aug 2014 » Why OpenStack Swift is Great for Platform as a Service
- 19 Aug 2014 » Provision and Configure OpenStack Instances in One Ansible Run
- 17 Jul 2014 » Basic Configuration of a Cisco 1000V CSR
- 14 Jul 2014 » Using the Cisco 1000v CSR with Libvirt and KVM
- 09 Jul 2014 » Nested Virtualization and KVM
- 07 Jul 2014 » Fake OpenStack with Dwarf
- 03 Jul 2014 » Add SSD as cache to ZFS on Linux
- 01 Jul 2014 » Install ZFS on Ubuntu Trusty 14.04
- 26 Jun 2014 » Deploy OpenStack Swift OnlyOne to Digital Ocean
- 22 Jun 2014 » Automated deployment of the Wordpress database
- 16 Jun 2014 » Build your own platform as a service with Docker
- 12 Jun 2014 » Swift OnlyOne - Run OpenStack Swift in Docker
- 09 Jun 2014 » Docker and btrfs
- 05 Jun 2014 » Using Docker with Python and iPython
- 31 May 2014 » Wordpress with FORCE_SSL_ADMIN behind a reverse proxy
- 29 May 2014 » Environment variables with Docker
- 25 May 2014 » Manage docker hosts with shipyard
- 24 May 2014 » Swiftacular - Install OpenStack Swift on Ubuntu Trusty 14.04
- 04 May 2014 » gpg-zip
- 26 Apr 2014 » First look at Digital Ocean
- 26 Apr 2014 » Adding networks to libvirt
- 12 Apr 2014 » Swiftacular - deploy OpenStack Swift with Ansible on CentOS
- 29 Mar 2014 » Use squid to cache RedHat/CentOS yum repositories
- 26 Mar 2014 » boot2docker on OSX
- 21 Mar 2014 » Swiftacular - deploy OpenStack Swift with Ansible
- 20 Mar 2014 » ssh read from socket failed
- 17 Mar 2014 » Boot Ubuntu Trusty Tahr 14.04 with libvirt
- 13 Mar 2014 » boot2docker and libvirt
- 12 Mar 2014 » hipache
- 04 Mar 2014 » /dev/random, OSX and Yarrow
- 21 Feb 2014 » Book Review - The Phoenix Project
- 20 Dec 2013 » Deploy Pound with Ansible or Puppet
- 09 Dec 2013 » Deploy Swift All in one with Puppet
- 16 Nov 2013 » apt-cacher-ng
- 13 Nov 2013 » OpenStack Keystone with SSL
- 13 Nov 2013 » MetalOps - IPMI serial-over-lan and Supermicro systems
- 11 Nov 2013 » Truncate command and sparse disks
- 11 Nov 2013 » MetalOps - OpenStack Swift reference hardware
- 21 Oct 2013 » A year with OpenStack Essex
- 18 Oct 2013 » Dark days in information security
- 12 Aug 2013 » Georgia Tech Coursera SDN MOOC
- 27 Jun 2013 » Deploying a boundary.com meter with ansible
- 25 Apr 2013 » Where to find vagrant boxes
- 12 Apr 2013 » More over committing with kvm
- 11 Apr 2013 » Vagrant and vmware
- 11 Apr 2013 » Vagrant and openstack
- 10 Apr 2013 » Thoughts on "no reliable cloud"
- 13 Mar 2013 » First look at PackStack
- 21 Feb 2013 » Software defined networking, Openvswitch, and Ubuntu 12.04
- 20 Feb 2013 » Over committing with KVM
- 20 Feb 2013 » Canadian OpenStack Users Group - CanStack!
- 08 Feb 2013 » tcpflow
- 26 Nov 2012 » Converting VMWare Windows images to OpenStack with virt-v2v
- 11 Nov 2012 » KSM and KVM
- 18 Oct 2012 » OpenStack 2012 Summit Day #4
- 17 Oct 2012 » OpenStack 2012 Summit Day #3
- 16 Oct 2012 » OpenStack 2012 Summit Day #2
- 16 Oct 2012 » ipmitool and BIOS Access
- 15 Oct 2012 » OpenStack 2012 Summit Day #1
- 13 Jun 2012 » My OpenBSD Lab
- 07 Jun 2012 » 36 hot swappable hard-drive bay Supermicro server specs
- 23 May 2012 » Installing IBM high-iops FusionIO Cards in Redhat/Centos 6
- 15 May 2012 » Bottle, Elixir, Bootstrap and Datatables - Instant Admin Backend
- 08 May 2012 » OCZ Z-Drive R4 Installation and Performance
- 13 Apr 2012 » What 11 OCZ Z-Drive R4 Cards Look Like
- 17 Jan 2012 » Deploying Ruby-on-Rails applications using RPM packaging
- 13 Oct 2011 » Quickly building command line apps to create files from templates in python
- 28 Sep 2011 » Getting the number of commits in mercurial, git, and svn
- 12 Sep 2011 » OpenBSD pf and set limit states
- 12 Sep 2011 » Cacti, Better Cacti Graphs, and SSH Original Command
- 18 Aug 2011 » Packaging code is about sharing
- 09 Aug 2011 » Booting partitions bigger than 2TB on a HP DL160 G6 with RHEL5
- 21 Jul 2011 » ksplice bought out by Oracle, RHEL desupported
- 20 Jul 2011 » Basic infrastructure to support production linux servers
- 27 Jun 2011 » Using fusion-io drives on Redhat Enterprise 5
- 11 May 2011 » Installing chef on Centos 5
- 09 May 2011 » Installing Jekyll on Ubuntu 10.04
- 13 Apr 2011 » Using LVM hosttags
- 11 Apr 2011 » What is serverascode.com?