不知道作為服務供應者的各位如果內部服務需要維護時,都會如何對外公告之後會有一個維護時間?
今天這篇文章來自於 env0 這間產品的親身體用經驗,當今天產品不論是前端或是後端需要有一個維護時間去公告來告訴使用者,這個解決方案該如何有系統性地去設計與實作。
作者希望該解決方案可以滿足
1. 能夠透過 IaC 的架構來完成,因為目前整個產品都是基於 IaC 來設定
2. 能夠輕鬆的於工作模式與維護模式中來回切換,每次的切換都能夠自動化完成,盡量減少人為操作
3. 該解決方案盡量能夠靈活彈性,針對不同雲端廠商都要能夠適用,避免未來轉移時整個方案要砍掉重練
4. 希望本身要能夠提供後門供開發人員去進行修復與測試
5. 順利地告知使用者我們正在維護
由於該公司所有的產品目前都是基於 AWS 架構下,因此作者後來想出了以下的系統設計
1. 使用 Github Pages 存放網頁,該網頁用來描述當前處於維護模式
2. 不同模式之間的切換決定透過 DNS 的方式來處理,當處於維修模式時,相關的連結都會指向 Github Pages。
3. 透過 Route53 以及 CloudFront(CDN) 的方式來設定相關操作
4. 透過產品本來的機制,當一切自動化完成後會自動通知使用者當前屬於維護模式
最後整個系統操作流程如下
1. 透過 Terraform 去創建 AWS 所需資源,包含 Route53, CloudFront
2. 透過 Terraform 去創建 GitHub Page, 這部分因為 Provider 沒有完全符合需求,還需要額外的 scripts 直接跟 Github API 溝通
3. Terraform 執行時,會透過變數來切換當前是屬於工作模式還是維護模式
4. 如果是維護模式,就會修改 Route53, 將 CNAME 給指向 Github Page,因此使用者去訪問時都會導向 Github Page
5. 如果是工作模式,就會修改 Route53, 將 CNAME 給指向 CloudFront 內的 IP,因此使用者訪問時都會導向真正的產品
如果團隊本身也有這種需求,希望能夠將公告/維護等相關操作也都整合到日常工作流中,也許可以參考這種思路去思考,該如何自動化一切設定,讓所有的操作都盡可能的減少人為介入
https://medium.com/env0/building-a-maintenance-mode-with-terraform-and-github-pages-3dadd009f7bd
dns cname 在 Blogger調校資料庫 Facebook 的最佳貼文
Blogger自訂網域名稱(domain)超完整教學、疑難排解整理
Blogger 自訂網域名稱必看教學:
1. 自訂簡單易記的網址(網域名稱domain name)有什麼好處?
2. Godaddy購買網域教學及優惠碼分享網站整理
3. Blogger自訂域名DNS CNAME設定教學,以Godaddy為例
4. 更改網域名稱(domain name)後待辦事項清單
5. Blogger 如何設定裸域名 (Naked Domain)?
網域相關疑問及疑難排解:
1. HTTP Redirect 301, 302 區別及對SEO的影響
2. DNS cname 更新要等多久、如何查詢?
3. Godaddy的Privacy Protection, Domains By Proxy (DBP)服務是什麼?
http://www.ewdna.com/2013/09/blogger-domain-name-index.html
dns cname 在 香腸炒魷魚 Facebook 的精選貼文
【免費DNS代管站】
Godaddy 提供免費DNS代管,支援A、CNAME、MX等等,功能很完善又很穩定,還在嫌棄國內DNS服務太瞎嗎?這個免費的讓你用到爽!
dns cname 在 What are CNAME records? (and how they compare to DNS A ... 的美食出口停車場
... <看更多>