Terraform Enterprise 使用與心得

2018-08-15 Terraform

由於公司全面的要推廣 IaC (infrastructure as code),所以這陣子跟 Terraform 打的火熱 … 然後也嘗試想要使用 Enterprise 的版本,簡單記錄一下使用的心得跟購買的過程。

 

先講在前面:HashiCorp 的產品真的是工程師的好幫手,這點無庸置疑

 

這次嘗試使用的是 Terraform 的 Enterprise 版本

 

User Profile

從最基本的使用者資訊的部份:

整體介面算是簡潔乾淨,該有的都有,像是 Two Fator、Tokens 之類的,然後 User Profile 是直接去 Gravatar 抓的

 

Organization

Organization 的部份就比較多了,除了基本聯絡資訊的 Profile 以外,

  • Teams 團隊管理,但是 Teams 沒有更詳細的權限管理,只能分組,然後設定每個 Workspace 的群組 Owner。
  • VCS 就是簡單的去跟一些 VCS 工具連動,但是目前看到僅限於 SaaS 服務,例如 Github、Gitlab、Bitbucket 這三種
  • API Tokens、Authentication、SSH Keys 這三個就沒什麼好說的,是工程師都該懂!
  • Sentinel Policy 比較特別的是有整合自家的 Sentinel (Policy as code),給愛用 HashiCorp 產品的人進行整合

大致上該有的都有,但第三方支援看起來有點少 …

 

主要導覽項

上方列就分四個項目:

  • Organization List
  • Workspaces:這個跟 Terraform 提倡的 Workspaces 就直接在 Enterprise 實現了

  • Modules:這邊可以放 Private modules,然後比較特別的是可以利用「Configuration Designer」的方式產生 Terraform code,像是:

算是比較 module code 產生器的感覺。

 

Workspaces 介面

然後重頭戲是 Workspaces

算是簡單明瞭的介面,該有的狀態和 Filter / Sort 也都有。

 

Workspace 功能列

  • Current Run:這個算是 Enterprise 最好用的功能之一,這邊會呈現 Terraform plan 和 apply 的狀況,重點是可以在 plan 結果後卡一個關卡確認 OK 再進行 apply。(很多人會說這不在 Enterprise 也行啊 !! 但若是拿去做 CI / CD 的話就沒辦法了,尤其是當你有 credentials 放在 CI 的時候 … )
  • Runs:這邊會顯示你在每一次跑 Terraform 的結果,就跟 Travis CI 的 Build history 介面差不多。
  • States:這也是 Enterprise 蠻重要的功能,就是替你保管 State 每一個版本,雖然放在 S3 也是可以啦 … 不過有介面可以看就是爽多了。
  • Variables:這個就是在執行 Terraform 時的 Variables,可以把 tfvars 寫在這,還有 System Environment Variables,不過如果你有多份 tfvars 的話必須手動 push tfvars 到 TFE 才行哦 …,目前沒辦法自動去抓你在 repo 的某一個 tfvars …
  • 其他就沒什麼特別可以說的,像是 Verison Control 可以去拉 Github 的 Terraform code,當你 Github push 時就會觸發 Webhooks 讓 Terraform 動起來 …

 

Current Run Timeline

很簡單的 Timeline:Github push -> 觸發 RUN -> PLAN -> 管理人員 Confirmed -> APPLY。

 

大致功能上就這樣,主要吸引我去使用的會是 plan 和 apply 中間可以卡一個 confirme 很重要,這個感覺可以在 Local 的 CI / CD 做到 ? 用 SaaS 服務的 CI 很佔 Current user license …

 

Terraform Enterprise 買還是不買 ?

再來就是跟 Terraform 交涉 Enterprise 購買的部份 …

 

在交涉的過程中有幾個可以提出來的:

  1. HashiCorp 可能是一個由工程師統治的公司。
  2. HashiCorp 在台灣沒有代理商,若要從台灣下單購買 HashiCorp 花了兩個月的時間找代理商進來 … 但現在應該沒這個問題了 …
  3. 在台灣很喜愛各種 ISO、BSI … 等等的體制下,HashiCorp 目前只有 ISMS 政策,其他的認證可能因為比較新的產品所以還沒有 … (或者是根本不想追從)
  4. 非常貴

 

HashiCorp 之前的 Enterprise Pro with Bronze plan 是 US$400 per user per year,但是在 2018/5/1 之後是 $840 per user per year (原價)… 漲了整整一倍多 QQ

 

除此之外要在台灣使用的話,還會有 20% 的「軟體訂閱」所得稅金 …

我找了一下法條,應該是規範在「客製化軟體」,有錯請協助更正

若國外 A 公司提供國內甲公司使用之電腦系統軟體為客製化軟體,因而取得之權利金收入屬中華民國來源所得,該所得究應採就源扣繳抑或結算申報完稅,將視該國外 A 公司在我國境內是否有固定營業場所而定: 若國外A公司在我國境內並無固定營業場所(如分支機構)或營業代理人者,依《所得稅法》第73條第1項規定,其應納所得額應由國內甲公司於給付時,依規定之扣繳率扣繳之。又,依《各類所得扣繳率標準》第3條規定,應按給付額扣取20%。

 

這樣算下來一個使用者大約要價 $1000 per user per year …

 

雖然是這樣的價格,但據說國外還是有許多的企業有購買,至於買或不買 … 以上功能和價格就提供給大家參考。

 

 

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

彙整

分類

open all | close all

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱

%d 位部落客按了讚: