敏捷與DevOps

自動化建置靜態網站基礎設施之二

自動化建置靜態網站基礎設施之二

在自動化建置靜態網站基礎設施之一中,我們介紹了如何全面使用 Google 來打造靜態網站的基礎設施,但以一個單純作為靜態網站來說,起初的用戶量與使用情節必然是不太複雜,但全面使用 GCP 的解決方案也就代表了採用負載均衡與 CDN 等相關服務元件,而採用這些元件由於服務水準匹配的原因,也很難降低相關元件(e.g. 負載均衡)的等級,因此,即便流量再小,也必須支付一個月約莫 2x 美元的費用。因此,本文章將介紹利用 Cloudflare 來取代 GCP 的負載均衡與 CDN 相關服務,由於 Cloudflare 有提供免費級別的用量,這對於單純的初期靜態網站來說,應該十分夠用了!接下來,我們就來看看如何用 GCP + Cloudflare,並且基於 Pulumi 打造一個零元的靜態網站基礎設施吧! 在開始之前 擁有一個 GCP 的帳號,更重要的是,它必須設定好如何付 $$ 建立一個具有合適權限的服務帳號 安裝 Google Cloud SDK,並且確認已經設定好 application-default Python 為 3.

繼續閱讀
Lean Coffee

Lean Coffee

議程總是與會議內容不符? 會議冗長,重要的卻沒談到? 參加的人很多,意見卻少的可憐? 開到意識脫離? Lean Coffee 是由 Jim Benson 和 Jeremy Lightsmith 所發想,而發想後的最初實踐空間的確就在一間咖啡廳內!Lean Coffee 的議程安排是由參與者所共同決定,所以會議前,相關議題並不明確,但唯一明確的是聚集在一起的人,有共同的目標與興趣,也具備此目標下的相關討論背景知識。雖說議題是由會議進行過程決定,但議程的推進過程卻十足具有結構,並且能有效地針對提出的議題,產生結論與後續行動。 整個開會的基礎概念是基於敏捷、看板與 Lean ,並且以人為優先來考量整個會議的安排,民主式地抉擇討論,並且提高參與感和個人的貢獻,以便形塑真實的共識。 環境與工具 便於走動與張貼的環境,可以善用團隊常用的戰情室; 白報紙一張或白板一個; 建議人數 <= 10 人/組; 白板筆 x 三種顏色 ; 便利貼一包 x 兩種顏色; 點點貼紙 >= 30 點/組; 計時器; 安全可開放討論的氛圍。 流程 利用 3 ~ 5 分鐘的時間,讓參與者透過腦力激盪將感興趣的議題寫在便條紙上; 輪流到白板前,用一至兩句簡短的描述自己的主題; 將相同或者相似的主題進行整合; 一人三點進行議題投票; 將看板 (e.

繼續閱讀
最小可行治理 (MVG, Minimum Viable Governance)

最小可行治理 (MVG, Minimum Viable Governance)

一聽到治理(Governance),大多數的第一反應肯定是流程、簽核、惱人等待與時程拖延等那些讓人提不起勁的事兒,但偏偏這些要求都是來自天上避也避不了,只能無奈含著淚,進行著說不上認同的流程:vomiting_face: 組織在面對治理的時候,常會陷入頭痛醫頭腳痛醫腳的狀況,在遭遇外部事件或內部事件後,就逐漸增加治理活動,先不論員工是否喜歡,對組織最大的影響就是價值交付的能力,而這也是組織競爭力的基礎。治理是企業內進行任何活動都無法免去的要素,畢竟它確保著組織的願景與目標,但如何有效地運用治理達成企業目標,同時又能讓創新與響應變化保持彈性,而不是迎頭痛擊成長的機會呢?考慮一下最小可行治理 (MVG, Minimum Viable Governance),相信這個概念一定能為您帶來啟發與裨益。 首先! 什麼是好的治理呢? 好的治理就是讓公司內的生產活動(包括專案、產品等)能夠在組織應允的人力、物力等資源情況下,被成功的交付,達成預期的設定。治理的目標是保證公司利害關係人的權益,確保組織有效地利用資源,達成所設定的願景與策略。治理活動通常是由公司內的XX委員會或PMO等團體進行,而主要的管理點則由公司內的高管們來進行授權,以便讓整個治理能實質落地。另外,治理相關的資訊都應該被充分地描述與解釋,並且文件化,以便讓員工取得一致的共識。 因此,在考慮治理又希望能夠降低治理成本時,應該要思考的是 — 所進行的產品與專案需要滿足組織相關利害關係人哪些需求,而這些需求又重要到讓您深刻地銘記在心,值得日以繼夜地為它苦惱! 以下條列一些思考治理時的一些關鍵要素。 治理的關鍵要素 1. 願景一致 這邊的所謂願景一致,有幾個面向。 第一個面向,產品與專案的主要負責人,需要確保產品與專案的願景與公司原本的治理目標相符,並且能夠循著被預期的治理活動進行,進一步讓所有利害關係人買單。 第二個面向,願景如何落到團隊中每個成員上時,而且是否體現結果上的一致。 第三個面向,更高階的管理人員由於能觀察到公司內所有的生產活動,因此必須確保所有專案與產品與公司策略方向一致。這邊的重點是方向上的指引與關注,但並不是進行微管理!因為其結果一方面會降低團隊的自主性,另一方面則會讓整體生產活動效率低落。組織內不同角色有不同的關注要項,多給組織內的專才一些信任,往往好處會大於專案失敗或遲延所帶來的懲罰。 2. 理解不確定性 大部分的組織對於預算的審定與安排大多按年,或者是按專案初期規劃,一次性的配置預算。根據 2019 Gartner Research,有 89% 的專案是採用傳統的預算編列方式,但根據 PMI Research,2019 年的專案中,也僅有 20% 的專案真的在錢與時間上準確。實務上,不管是因為怎樣的理由,我們很難看見因為採用敏捷,在專案上的預算編列就有所調適,最終您仍要落到鉅細靡遺的前期計畫,然後期待一切都對。

繼續閱讀
自動化建置靜態網站基礎設施之一

自動化建置靜態網站基礎設施之一

對於形象與分享用途的網站來說,靜態網站可以說是首選。各大公雲都有對應的支持做法和文件。Pulumi 作為基礎設施即程式碼工具的新秀,相關範例與分享還是比較少,但 Pulumi 所提供的一般程式開發體驗,卻是讓我無法捨棄它。目前所瀏覽的網站建置也是基於 Pulumi 完成並且進行管理的。鑒於目前網路上的資源稀缺,身為知識愛好者的我來說,當然要毫不猶豫地將這過程分享出來!:triumph: **在開始之前 擁有一個 GCP 的帳號,更重要的是,它必須設定好如何付 $$ 建立一個具有合適權限的服務帳號 安裝 Google Cloud SDK,並且確認已經設定好 application-default Python 為 3.x <== 這非常重要!! 準備好 DNS (本網站是使用Google Domain) 架構說明 如同此篇文章的開頭圖片一般,整體結構極為簡潔。就是在 Google Cloud Storage 前,設定導流規則的負載均衡器,並且搭配 CDN。如此一來,一方面可以直接選擇使用 us-west1、us-central1、或 us-east1 的免費額度,也能兼顧用戶從不同地區存取網站的速度。 開始著手實作 Pulumi 程式 1.

繼續閱讀