MrPointy's journey designing, building and deploying private clouds
2016-07-31
Modifying the default port on Chef 12

Just a quick blog, probably more to help me remember in the future if I have a ‘Goldfish’ moment.

2016-07-30
New Video: Installing Chef Server 12

This video is my first go at creating a youtube video. Just trying out some different technology.

2015-10-24
Managing vSphere with pyVmomi - Part 4 - Adding a NFS share to a Cluster of Hosts

This post is part 4 of a small series of articles about how to use pyVMomi to build, configure and manage vmware vsphere environments.

2015-10-17
pyVmomi - Adding Hosts to Clusters

This post is part 3 of a small series of articles about how to use pyVMomi to build, configure and manage vmware vsphere environments.

For more information on the earlier posts please refer to Part 1 or Part 2

2015-10-15
pyVmomi - Creating Datacenters and Clusters

This post is part 2 of a small series of articles about how to use pyVMomi to build, configure and manage vmware vsphere environments.

For more information on the earlier posts please refer to Part 1

2015-10-13
PyVmomi - Connecting to the VCSA

This blog post is the first is a small series of articles about how to use pyVMomi to build, configure and manage vmware vsphere environments.

What is pyVmomi?

pyVmomi is the Python SDK for the VMware vSphere API that allows you to manage ESX, ESXi, and vCenter.

The website for pyVmomi can be found at :
[https://github.com/vmware/pyvmomi]

2015-05-07
SALT: Minions in Docker containers

This blog post quickly outlines getting a salt minion running in a Docker container. Why? There are many reasons, but i’m doing some scaeability testing and Docker containers provide me with the ‘volume’ of minions I need to test out some topologies and scenarios. Don’t worry, i’ll blog the results.

I need a mixture of platforms so i’ve decided to create a Centos6 and Centos7 Docker container, just to see what Salt thinks about all this.

2014-07-21
CHEF: setting user attributes on Linux users

This is just a quick blog post on something that was annoying me for a couple of hours.
I needed to set the Maximum number of days between password changes AND the Minimum number of days, BUT only for userids that weren’t locked or disabled.
Of course I wanted to do this via Chef.

2014-07-17
Using Linux CGroups with Docker containers

Introduction to Control Groups

Starting at the source of all information - The Linux kernel documentation for cgroups cgroups.txt.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Control Groups provide a mechanism for aggregating/partitioning sets of
tasks, and all their future children, into hierarchical groups with
specialized behaviour.
Definitions:
A *cgroup* associates a set of tasks with a set of parameters for one
or more subsystems.
A *subsystem* is a module that makes use of the task grouping
facilities provided by cgroups to treat groups of tasks in
particular ways. A subsystem is typically a "resource controller" that
schedules a resource or applies per-cgroup limits, but it may be
anything that wants to act on a group of processes, e.g. a
virtualization subsystem.
A *hierarchy* is a set of cgroups arranged in a tree, such that
every task in the system is in exactly one of the cgroups in the
hierarchy, and a set of subsystems; each subsystem has system-specific
state attached to each cgroup in the hierarchy. Each hierarchy has
an instance of the cgroup virtual filesystem associated with it.
At any one time there may be multiple active hierarchies of task
cgroups. Each hierarchy is a partition of all tasks in the system.
User-level code may create and destroy cgroups by name in an
instance of the cgroup virtual file system, specify and query to
which cgroup a task is assigned, and list the task PIDs assigned to
a cgroup. Those creations and assignments only affect the hierarchy
associated with that instance of the cgroup file system.
On their own, the only use for cgroups is for simple job
tracking. The intention is that other subsystems hook into the generic
cgroup support to provide new attributes for cgroups, such as
accounting/limiting the resources which processes in a cgroup can
access. For example, cpusets (see Documentation/cgroups/cpusets.txt) allow
you to associate a set of CPUs and a set of memory nodes with the
tasks in each cgroup.

I’ve quoted that in its entirety because it’s important to keep the definitions in your mind as i’m going to refer to them several times during this post. Especially take note of the last sentence “…. cpusets allow you to associate a set of CPUs and a set of memory nodes with the tasks in each cgroup.” CGroups need to be combined with cpusets and other subsystems (controllers) to restrict compute resources. Make sure you check out the other CGroup controller documentation at [2] .

2012-04-20
KVM vCPU Scheduling

KVM vCPU Scheduling