{"id":2699,"date":"2024-06-09T17:00:13","date_gmt":"2024-06-09T21:00:13","guid":{"rendered":"https:\/\/matthannan.net\/blog\/?p=2699"},"modified":"2024-06-09T17:02:48","modified_gmt":"2024-06-09T21:02:48","slug":"high-availability-pi-hole-servers","status":"publish","type":"post","link":"https:\/\/matthannan.net\/blog\/high-availability-pi-hole-servers\/","title":{"rendered":"High Availability Pi-Hole Servers"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"508\" data-attachment-id=\"2700\" data-permalink=\"https:\/\/matthannan.net\/blog\/high-availability-pi-hole-servers\/image-15\/\" data-orig-file=\"https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?fit=730%2C579&amp;ssl=1\" data-orig-size=\"730,579\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"image\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?fit=300%2C238&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?fit=640%2C508&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?resize=640%2C508&#038;ssl=1\" alt=\"\" class=\"wp-image-2700\" srcset=\"https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?w=730&amp;ssl=1 730w, https:\/\/i0.wp.com\/matthannan.net\/blog\/wp-content\/uploads\/2024\/06\/image.png?resize=300%2C238&amp;ssl=1 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/figure>\n\n\n\n<p>Had been running a single Pi-Hole for a long while, but I would always have to wait until after C &amp; J were abed before I could update it.<\/p>\n\n\n\n<p>Having a second Pi-Hole server running was key. Was trying to get the second one spun up as a Docker instance on the Synology NAS, but trying to keep the two servers in sync was not going to be easy going, as ssh is key to this process.<\/p>\n\n\n\n<p>Cleaned up the old Pi 4B server, Pi5, a bit and installed Pi-Hole on it as a service.<\/p>\n\n\n\n<p>I then followed <a href=\"https:\/\/github.com\/vinanrra\/Servidor_Casa\/blob\/main\/Software\/Pi-Hole\/Tutoriales\/2_Pi-Hole_Servers.md\">this set of instructions<\/a>. This got the two servers talking, but sync was not taking place the way that I expected. I backed out the Tutorial 1 by removing the added line from <strong>\/opt\/pihole\/gravity.sh<\/strong><code>.<\/code><\/p>\n\n\n\n<p>I then found <a href=\"https:\/\/github.com\/vmstan\/gravity-sync\/blob\/master\/README.md\" target=\"_blank\" rel=\"noreferrer noopener\">this<\/a> set of instructions, which is exactly what I had in mind, as it syncs local DNS records, as well. So this is what is doing the sync, and I am using the heartbeat script from the first instructions, which are found in Tutorial 2.<\/p>\n\n\n\n<p>WINNING!!!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Had been running a single Pi-Hole for a long while, but I would always have to wait until after C &amp; J were abed before I could update it. Having a second Pi-Hole server running was key. Was trying to &hellip; <a href=\"https:\/\/matthannan.net\/blog\/high-availability-pi-hole-servers\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5],"tags":[703],"class_list":["post-2699","post","type-post","status-publish","format-standard","hentry","category-geek","tag-high-availability"],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p2NxlE-Hx","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":2254,"url":"https:\/\/matthannan.net\/blog\/installing-the-unifi-controller-on-a-synology-nas-in-5-minutes-2019\/","url_meta":{"origin":2699,"position":0},"title":"Installing the Unifi Controller on a Synology NAS in 5 minutes \u2014 (2019)","author":"matthannan","date":"9 May 2021","format":false,"excerpt":"Slowly I turned. And step by step. Inch by inch... [Step-by-Step] Installing the Unifi Controller on a Synology NAS with the use of Docker. Up and running in 5 minutes. Source: Installing the Unifi Controller on a Synology Nas in 5 minutes \u2014 (2019) Unifi Controller is now running on\u2026","rel":"","context":"In &quot;Geek&quot;","block_context":{"text":"Geek","link":"https:\/\/matthannan.net\/blog\/category\/geek\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/img.youtube.com\/vi\/MYP1OBZfFK0\/0.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":1185,"url":"https:\/\/matthannan.net\/blog\/pi-hole-a-black-hole-for-internet-advertisements-curl-ssl-httpsinstall-pi-hole-net-bash\/","url_meta":{"origin":2699,"position":1},"title":"Pi-hole\u00ae: A black hole for Internet advertisements \u2013 curl -sSL https:\/\/install.pi-hole.net | bash","author":"matthannan","date":"16 October 2017","format":false,"excerpt":"Source: Pi-hole\u00ae: A black hole for Internet advertisements \u2013 curl -sSL https:\/\/install.pi-hole.net | bash","rel":"","context":"In &quot;Geek&quot;","block_context":{"text":"Geek","link":"https:\/\/matthannan.net\/blog\/category\/geek\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1195,"url":"https:\/\/matthannan.net\/blog\/what-more-to-do-with-a-raspberry-pi\/","url_meta":{"origin":2699,"position":2},"title":"What More to Do With a Raspberry Pi?","author":"matthannan","date":"14 November 2017","format":false,"excerpt":"I am so loving the Pi. As you may recall, I have Pi-Hole running on it, and also SoftEther VPN server. I noticed my co-worker attached earlier today. A few evenings ago, I was chatting with my wife's younger cousin about installing Linux on an old (PowerPC) Power Mac.[1.\u00a0This is\u2026","rel":"","context":"In &quot;Geek&quot;","block_context":{"text":"Geek","link":"https:\/\/matthannan.net\/blog\/category\/geek\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1656,"url":"https:\/\/matthannan.net\/blog\/pi-hole-stuff\/","url_meta":{"origin":2699,"position":3},"title":"Pi-Hole Stuff","author":"matthannan","date":"29 September 2019","format":false,"excerpt":"I noticed that there were plenty of ads showing on my phone this morning, so I immediately started thinking that either the Pi-Hole Pi had an issue, or Pi-Hole itself was acting up. While reading the news, I saw that Pi-Hole is moving away from ad-block style filtering to straight\u2026","rel":"","context":"In &quot;Geek&quot;","block_context":{"text":"Geek","link":"https:\/\/matthannan.net\/blog\/category\/geek\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1796,"url":"https:\/\/matthannan.net\/blog\/pi-hole-with-unbound\/","url_meta":{"origin":2699,"position":4},"title":"Pi-Hole with Unbound","author":"matthannan","date":"21 April 2020","format":false,"excerpt":"Going right to the top on DNS lookups. I am liking Cloudflare's offerings, but I want to try this solution out for a couple of days at least. https:\/\/docs.pi-hole.net\/guides\/unbound\/","rel":"","context":"In &quot;Geek&quot;","block_context":{"text":"Geek","link":"https:\/\/matthannan.net\/blog\/category\/geek\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1597,"url":"https:\/\/matthannan.net\/blog\/raspberry-pi-sd-card-to-ssd-drive-part-2\/","url_meta":{"origin":2699,"position":5},"title":"Raspberry Pi: SD Card to SSD Drive, part 2","author":"matthannan","date":"11 August 2019","format":false,"excerpt":"Oh, brother, has this been a mess. I've certainly relearned a great deal about Linux partitions and boot sectors and a bunch of other stuff that I used to know cold, but this process has beaten me. This morning, after about a week of doing battle with this process, and\u2026","rel":"","context":"In &quot;Geek&quot;","block_context":{"text":"Geek","link":"https:\/\/matthannan.net\/blog\/category\/geek\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/posts\/2699","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/comments?post=2699"}],"version-history":[{"count":3,"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/posts\/2699\/revisions"}],"predecessor-version":[{"id":2703,"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/posts\/2699\/revisions\/2703"}],"wp:attachment":[{"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/media?parent=2699"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/categories?post=2699"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matthannan.net\/blog\/wp-json\/wp\/v2\/tags?post=2699"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}