Building Containers with Habitat
Many Containers, Many Build Systems
When working with modern container systems like Docker, Kubernetes, and Mesosphere, each provide methods for building your applications into their containers. However each build process is specific to that container system, and using similar applications across tiers of container environments would require maintaining each container’s build environment. When approaching this problem for multiple container environments, Chef Software created a tool to unify these build systems and create container-agnostic builds which could be exported into any of the containers. This tool is called Habitat which also provide some pre-built images to get applications started quickly.
I recently attended a Habitat Hack event locally in Portland (Oregon) which helped me get more familiar with the system and its capabilities. We worked together in teams to take a deeper dive into various aspects of how Habitat works, you can read about our adventures over on the Chef blog.
To examine how the various parts of the build environment work, I picked an example Node.js application from the Habitat Documentation to build and customize.
Node.js Application into a Docker …
chef containers docker devops
Postgres schema differences and views
Comparing the schemas of two or more different Postgres databases is a common task, but can be tricky when those databases are running different versions of Postgres. The quick and canonical way to compare schemas is by using the exact same pg_dump program to query each database via the –schema-only option.
This works great, but there are some gotchas, especially when dumping database views.
Background
First some background as to how this issue was discovered. We have a client that is in the process of upgrading from Postgres 9.2 to the Postgres 9.6 (the latest version as of this writing).
Using the pg_upgrade program was not an option, because not only are data checksums going to be enabled, but the encoding is being moved to UTF-8. A number of factors, especially the UTF-8 change, meant that the typical upgrade process of pg_dump old_database | psql new_database was not possible.
Thus, we have a very custom program that carefully migrates pieces over, performing some transformations along the way.
Problem
As a final sanity check, we wanted to make sure the final schema for the upgraded 9.6 database was as identical as possible to the …
postgres
Liquid Galaxy developer job opening
This position has been filled. See our active job listings here.
We are looking for a full-time, salaried engineer to help us further develop our software, infrastructure, and hardware integration for the impressive Liquid Galaxy. The Liquid Galaxy was created by Google to provide an immersive experience of Google Earth and other applications.
This position is located at either our satellite office in Bluff City, Tennessee, or in Eugene, Oregon.
What you will be doing:
- Develop new software involving panoramic video, Google Earth, a custom CMS, and ROS (Robot Operating System)
- Improve the system with automation, monitoring, and customizing configurations to customers’ needs
- Provide remote and occasional on-site troubleshooting and support at customer locations
- Build tours and supporting tools for emerging markets
- Integrate and test new hardware to work with the system
What’s in it for you?
- Flexible full-time work hours
- Benefits including health insurance and 401(k) retirement savings plan
- Annual bonus opportunity
What you will need:
- Sharp troubleshooting ability
- Experience with “devops” automation tools such as Chef
- Strong programming experience: Python, JavaScript, C/C++, Ruby, etc.
- Linux system administration skills
- A customer-centered …
jobs-closed visionport
CSSConf US 2016 — Day One
Boston Common
I attended CSSConf US 2016 last week in Boston, MA. Having been to the 2013 and 2014 (part one, part two) events in Florida then missing it in NYC last year, I was looking forward to seeing what it would be like in a new location. It was fun to see some familiar faces including Eiríkur (congrats on organizing a very successful JSConf Iceland conference earlier this year!) and to meet many new folks in the CSS community. Claudina Sarahe was our MC for two days of talks and she did a great job. After each talk she took a few minutes to interview the speaker—asking them questions from the audience and some of her own. The chats were candid and interesting on their own and gave the next speaker time to set up.
Below are my notes and some observations on the talks from Day One. Be sure to check out the videos, slides and transcripts at the CSSConf site. Many of the videos are there now and they are adding more as they become available.
Sarah Drasner — Creativity in Programming for Fun and Profit
Sarah started off the day with an inspiring keynote about creativity. She explained how writing code is a creative endeavor by showing us several drastically different solutions …
accessibility browsers conference css html javascript testing
SSH Key Access Recovery on EC2 Instances
Can’t access your EC2 instance? Throw it away and spin up a new one! Everyone subscribes to the cattle server pattern, yes?
Not quite, of course. Until you reach a certain scale, that’s not as easy to maintain as a smaller grouping of pet servers. While you can certainly run with that pattern on Amazon, EC2 instances aren’t quite as friendly about overcoming access issues as other providers are. That’s to say, even if you have access to the AWS account there’s no interface for forcing a root password change or the like.
But sometimes you need that, as an End Point client did recently. It was a legacy platform, and the party that set up the environment wasn’t available. However an issue popped up that needed solved, so we needed a way to get in. The process involves some EBS surgery and does involve a little bit of downtime, but is fairly straightforward. The client’s system was effectively down already, so taking it all the way offline had little impact.
Also do make sure this is the actual problem, and not that the connection is blocked by security group configuration or some such.
-

For safe keeping, it’s recommended to create a snapshot of the original root volume. If …
cloud ssh sysadmin
Liquid Galaxy featured in Realtor Magazine
Liquid Galaxy was recently featured in Realtor Magazine as new mapping technology that can benefit real estate companies. The article was featured online as well as in their print magazine. The online version can be found here.
The article discussed how new innovations in mapping technology have led to new and exciting tools for real estate professionals to connect with current and future clients. Liquid Galaxy is a prime example of that.
In a section titled “Amping up Office Offerings,” author Meg White writes “Web traffic is nice, but what about bringing more clients into the office? Maybe it’s time your brokerage built its very own map room. New York–based tech development company End Point has installed its Liquid Galaxy mapping display at dozens of companies worldwide. The first real estate firm to use Liquid Galaxy was CBRE, followed by other commercial firms, including ProLogis and JLL.”
The article continues by mentioning the Liquid Galaxy’s standard configuration of an array of 55-inch screens. Users have the ability to enter any address they’d like, as well as explore the world using a 3D joystick. In addition, the Liquid Galaxy can display key information to real estate …
visionport
Liquid Galaxy at the National Weather Center
The National Weather Center (NWC) recently deployed a 7-screen Liquid Galaxy system in their Visitor’s Center, the first room visitors see as they enter the breathtaking NWC building on the University of Oklahoma campus in Norman, Oklahoma.
Compared to some temporary installations that require actual architectural changes to the building, this installation was fairly simple because the open space was already available and we did not need to coordinate with building contractors.
In order to most efficiently assemble and test the Liquid Galaxy, our build, customization, and testing staff in Tennessee prepared the Liquid Galaxy in accordance with the details requested by the NWC. They then shipped the Liquid Galaxy in our custom flight cases that protect the system in transit.
Our expert installer, Will Plaut, flew on site to Oklahoma and got the electrical, power, networking, frames, navigation podium, and calibration aligned. Will has assembled Liquid Galaxy systems in four different countries and is very comfortable with system assembly.
Content has already been built for the system, including scenes with videos and supplementary weather information, as well as a weather game …
visionport
pg_healer: repairing Postgres problems automatically
Sometimes, the elephant gets hurt—inducing database errors! Data corruption is a fact of life in working with computers, and Postgres is not immune. With the addition of the “data checksums” feature, detecting such corruption is now much easier. But detection is not enough—what happens after the corruption is detected? What if Postgres could fix the problem all by itself—what if we could give the elephant a mutant healing power?!?
Now we can. I wrote an extension named pg_healer that does just that—detects corruption issues, and automatically repairs them. Let’s see how it works with a demonstration. For this, we will be purposefully corrupting the “pgbench_branches” table, part of the venerable pgbench utility.
For the initial setup, we will create a new Postgres cluster and install the pgbench schema. The all-important checksum feature needs to be enabled when we initdb, and we will use a non-standard port for testing:
$ initdb --data-checksums dojo
The files belonging to this database system will be owned by user "greg".
...
Data page checksums are enabled.
creating directory dojo ... ok
creating subdirectories ... ok
...
$ echo …postgres





