各位邦友…小編差點就陣亡了。為了讓自己對各工具有一個「基礎認識的過程」,所以最花時間的就是「流程示意圖」的製作。因為要看到「一定範圍」的文件,才會出那些結構與流程。一方面擔心了解不夠深(而表達錯誤),又擔心鐵人文章的難產。但是小編覺得畫流程圖(加上實作)。可以加強對「學習標的」的概念性了解。總算是撐到把這三個工具都講完了。還記得一開始的時候…跟大家提到…只能按照前同事的「基礎」(複製/貼上/執行),先完成「後台機器」的設定。每個工具的範例都只是點到為止。事實上,每個工具,都有進階的運用與細節。所以有以下的簡單補充:
小編工作上Ansible的設定有一個部份就是談如何把「重覆性」的工作重覆利用。當然它一定是基於基本的Playbook中的task的,如何把「相關的」工作,組合在一起。這個部份可以參考Creating Reusable Playbooks,其中我們有使用的是Roles,如:nodejs安裝、監控設定、proxy設定。其中nodejs安裝的「角色」裡,又相依一些角色(如機器基本安裝、AWS程式佈署、github設定、AWSlog設定…等)。就可以達到重覆利用的目的。
雖然小編的範例,一下子就把EC2給建立起來。除了上一段Ansible的細節外。要讓「後台機器」可以運作。還需要很多服務的建立。實際工作上的Plan在執行過程中,總共需要建立27個資源(@@)先來看張圖吧。
PS:上面的圖未表達要設定的「所有資源」,只是示意而已…
有非常多AWS服務,除了知道其原理及設定外,也要知道Terraform對應的設定要如何達成。所以Terraform的「重覆利用」的module的使用也很重要。如果都用人工一個一個設定。那也是很可觀的時間。而且小編還有三個環境(開發|測試|線上)要設定。這時候只要搞定好「環境變數」及特定條件。就可快速完成(測試|線上)的架構建立。所以有相同條件需求的邦友們,可以好好研究一下。
後續文章可能會依日常發生的主要事件,再針對AWS服務主要介紹。
待續…