MySQL continues to be one of the most popular databases used in cloud-native applications. In fact, MySQL is so popular that other cloud databases such as AWS Aurora maintain wire protocol compatibility with MySQL. For SREs and DevOps engineers running MySQL database in production, it is crucial to understand how to monitor MySQL. MySQL poor health can lead to cascading effects on other application components. For example, slow queries can impact page load times for an application, or missing indexes can result in high-latency and application time-outs. By effectively monitoring the performance of databases and query executions, SREs and DevOps can identify if there are bottlenecks in the database tier which affect the overall application performance. With this appreciation for the importance of MySQL monitoring, let us quickly survey what techniques are commonly used for MySQL monitoring and then discuss …[Read more]
10 Older Entries »
Vadim Tkachenko recently released Docker images for Group Replication (thank you for that ).
As not everybody is already using Docker or just because having multiple choices is also nice (this is an OpenSource world isn’t it ?), I decided to share a Vagrant environment that you can use to evaluate Group Replication.
This environment provides also a module that can be used to deploy GR on any other environment managed by Puppet.
The repository is available on my github account: mysqlGR-vagrant
This is a quick demo on how to use it:
Tadam ! You have a MySQL Group of 3 members ready to use !
Docker presents new levels of portability and ease of use when it comes to deploying systems. We have for some time now released Dockerfiles and scripts for MySQL products, and are not surprised by it steadily gaining traction in the development community.…
Docker has been consuming my life in the last few weeks. I have half a dozen projects in progress that use containers in some fashion, including my Visualizing MySQL’s Performance Schema project.
Since I prefer to work from a Mac laptop, I have to utilize a Linux Virtual Machine (VM) which runs the Docker daemon. Luckily, Docker Machine makes this a very simple process.
However, interacting both with Docker and Docker Machine does introduce some additional commands that I would rather simplify for the repeatable use-cases I’ve come across. With BASH aliases, this is not a problem.
Is My Docker Environment Setup?
When …[Read more]
I have been working for a very large Australian website for over
six years and during this period have been fortunate enough to
hire many Infrastructure Operations Engineers that now work for
that company. I want to detail the evolution of the hiring
process and what I have driven it to over the last six
How was I hiredThis is the interview process I went through at my current company:
- A technical and cultural pre-screening from a recruiter
- A short phone interview with a small set of adhoc questions around technical skill set. How does DNS work?
- An hour long face to face interview with the hiring manager and another senior engineer testing both technical capability and culture fit
- Another hour long face to face interview with a HR representative testing cultural fit
- Lastly, a reference check to confirm technical capability and cultural fit performed over …
Have you ever had a case where you needed to find a process which sent a HUP/KILL/TERM or other signal to your database? Let me rephrase. Did you ever have to find which process messed up your night? If so, you might want to read on. I’m going to tell you how you can find it.
Granted, on small and/or meticulously managed systems tracking down the culprit is probably not a big deal. You can likely identify your process simply by checking what processes have enough privileges to send mysqld a HUP/KILL/TERM signal. However, frequently we see cases where this may not work or the elimination process would be too tedious to execute.
We recently had a case where a process was frequently sending SIGHUPs to mysqld and the customer asked us to see if we could get rid of his annoyance. This blog is the direct result of a discussion I had with my colleague …[Read more]
Thanks to everyone who attended and participated in last week’s webinar on 'Galera Cluster for MySQL vs MySQL (NDB) Cluster: A High Level Comparison'. If you missed the sessions or would like to watch the webinar again & browse through the slides, they are now available online.
In this webinar, Severalnines VP of Products, Alex Yu, who was part of the team at Ericsson who originally developed the NDB storage engine in 2001, gave an overview of the two clustering architectures and discussed their respective strengths and weaknesses:
- MySQL Cluster architecture: strengths and limitations
- Galera Architecture: strengths and limitations
- Deployment scenarios
- Data migration
- Read and write workloads (Optimistic/pessimistic locking)
- WAN/Geographical replication
- Schema changes
- Management and monitoring …
November 14, 2014 By Severalnines
Thanks to everyone who attended and participated in this week's webinar on '9 DevOps Tips for Going in Production with Galera Cluster for MySQL'. If you missed the sessions or would like to watch the webinar again & browse through the slides, they are now available online.
In this webinar, Severalnines CTO Johan Andersson discussed 9 key aspects to consider before taking Galera Cluster for MySQL into production:
- 101 Sanity Check
- Operating System
- Backup Strategies
- Galera Recovery
- Query Performance
- Schema changes
- Security / Encryption
- Protecting from Disasters
Watch the replay 9 DevOps Tips for Going in …[Read more]
September 22, 2014 By Severalnines
Need to add phone and SMS alerting to ClusterControl? ClusterControl 1.2.8 introduces support for PagerDuty, an alerting service for Ops teams to schedule on-calls and add phone and SMS notifications to IT tools. By integrating PagerDuty with ClusterControl, you can start receiving phone, SMS and email notifications for all important database events as monitored by ClusterControl. Alerts go directly to the right person who can solve the issue.
This integration is possible thanks to a new plugin interface, that takes ClusterControl alarms in JSON format and outputs to an external system via plugins. Plugins can be either scripts or executable binaries.
We have built a few example …[Read more]
Join 27,000 others and follow Sean Hull on twitter @hullsean. I was shocked to find this article on ReadWrite: The Truth About DevOps: IT Isn’t Dead; It’s not even Dying. Wait a second, do people really think this? Truth is I have heard whispers of this before. I was at a meetup recently where the […]
10 Older Entries »