slider

Category: System Administration

How we manage WordPress website with Terraform, Chef and GitHub

Our website twindb.com is built on WordPress software and has always been. A while ago we decided the website needs a better look. But not only that. Managing our old website was quite laborious and manual process which goes strongly against our culture at TwinDB to do things right. Few weeks ago we migrated to […]

Read More

Show differences found by pt-table-checksum

pt-table-checksum perfectly solves problem of checking if master and its slaves are in-sync. It answers the question “Are the slaves consistent with the master?”. However if the answer is “No” pt-table-checksum doesn’t actually tell what exactly is different.

pt-table-sync may give a partial answer. It can print SQL statements to sync the replication cluster. Reading the SQL […]

Read More

Working with CloudFlare DNS in python

Last week I wrote about aDNS discovery feature in Etcd. As a step in the whole process we need to create DNS records in twindb.com zone. CloudFlare provides rich API to work with it. We wrapped it into a Python module twindb_cloudflare and opensourced it: Source code: https://github.com/twindb/twindb_cloudflare Documentation: https://twindb-cloudflare.readthedocs.io PyPi package: https://pypi.python.org/pypi/twindb_cloudflare In the […]

Read More

Setting up Etcd cluster with DNS discovery

Setting up an etcd cluster with DNS discovery may be challenging. There are several building blocks: Etcd – a distributed key value store Amazon EC2 – cloud computing provider Cloudflare – DNS provider Chef – for configuring individual nodes Each of them has their pitfalls, we will guide you through whole process. DNS discovery Any clustered system needs […]

Read More

Data loss after MySQL restart

Not so long ago I had a customer who experienced data loss after MySQL restart. It was really puzzling. MySQL was up & running for many months, but after the customer restarted MySQL server all tables have gone. The tables were still visible in SHOW TABLES output, but they were not readable:

Read More

Encrypting MySQL Backups

Encryption is important component of secure environments. While being intangible property security doesn’t get enough attention when it comes to describing various systems. “Encryption support” is often the most of details what you can get asking how secure the system is. Other important details are often omitted, but the devil in details as we know. […]

Read More

Xtrabackup and MySQL 5.6 on Amazon instance

Have you ever tried to install Xtrabackup on Amazon EC2 instance with Oracle’s MySQL 5.6? Dependencies hell strikes when you ask pretty common and reasonable thing – run the GA version of MySQL and backup it with the most popular open-source tool – XtraBackup. From this post you will learn how to resolve the conflicts […]

Read More

Setting up authentication en masse

Managing many hosts is a quite challenging task. There are many tools to solve the problem. My favorite is pdsh. Running a command across a set of hosts is as simple as following:

Together with dshbak (which is a part of pdsh package) you can do even cooler things. Like, check which systems have […]

Read More

About Nagios monitoring in real example

Now it’s time to setup proper monitoring to avoid unpleasant surprises in future. There are two major problems the monitoring solves: alerting and trending. Alerting is to notify a responsible person about some major event like service stopped working. Trending is to track the change of something over time – disk or memory usage over […]

Read More