Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

แƒฉแƒ•แƒ”แƒœ แƒ’แƒแƒ•แƒฃแƒจแƒ•แƒ˜แƒ— แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel-แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ”แƒก แƒžแƒ แƒแƒ“แƒฃแƒฅแƒขแƒ˜ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒกแƒ แƒฃแƒšแƒแƒ“ แƒ’แƒแƒœแƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒแƒœ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ แƒ˜แƒœแƒคแƒ แƒแƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ-แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒแƒ“แƒ˜ แƒ›แƒ”แƒ—แƒแƒ“แƒแƒšแƒแƒ’แƒ˜แƒ˜แƒ—.

แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒ›แƒฎแƒแƒ แƒก แƒฃแƒญแƒ”แƒ แƒก แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒแƒก "แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ˜แƒ แƒแƒ“แƒ˜ แƒฆแƒ แƒฃแƒ‘แƒ”แƒšแƒ˜" (แƒจแƒ”แƒ›แƒ“แƒ’แƒแƒ›แƒจแƒ˜ VPC). แƒกแƒแƒ›แƒแƒ›แƒแƒ•แƒšแƒแƒ“, แƒฉแƒ•แƒ”แƒœ แƒ•แƒ’แƒ”แƒ’แƒ›แƒแƒ•แƒ— แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒแƒก Selectel-แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒ›แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒฎแƒ•แƒ แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒ แƒแƒ’แƒแƒ แƒช แƒฃแƒ™แƒ•แƒ” แƒ˜แƒชแƒ˜แƒ—, VPC แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ˜ แƒแƒ’แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ OpenStack-แƒ–แƒ”. แƒ—แƒฃแƒ›แƒชแƒ, แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› OpenStack แƒแƒ  แƒ’แƒ—แƒแƒ•แƒแƒ–แƒแƒ‘แƒ— แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ• แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ”แƒ‘แƒก แƒกแƒแƒฏแƒแƒ แƒ แƒฆแƒ แƒฃแƒ‘แƒšแƒ˜แƒก แƒ›แƒแƒ›แƒกแƒแƒฎแƒฃแƒ แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒฉแƒ•แƒ”แƒœ แƒ“แƒแƒ•แƒแƒงแƒ”แƒœแƒ”แƒ— แƒ“แƒแƒ™แƒแƒ แƒ’แƒฃแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ API-แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒ›แƒžแƒšแƒ”แƒฅแƒขแƒจแƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ”แƒ‘แƒก แƒ แƒ—แƒฃแƒšแƒ˜ แƒ™แƒแƒ›แƒžแƒแƒ–แƒ˜แƒขแƒฃแƒ แƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒแƒก แƒ“แƒ แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒก แƒฃแƒคแƒ แƒ แƒ›แƒแƒกแƒแƒฎแƒ”แƒ แƒฎแƒ”แƒ‘แƒ”แƒšแƒก แƒฎแƒ“แƒ˜แƒก. OpenStack-แƒจแƒ˜ แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ—แƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒแƒšแƒแƒ‘แƒ แƒ“แƒแƒฎแƒฃแƒ แƒฃแƒšแƒ˜แƒ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ แƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒฉแƒ•แƒ”แƒœแƒ˜ API.

Selectel Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ แƒแƒฎแƒšแƒ แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ VPC แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒšแƒแƒ‘แƒแƒก:

  • แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ›แƒแƒ—แƒ˜ แƒ™แƒ•แƒแƒขแƒ”แƒ‘แƒ˜;
  • แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜, แƒ›แƒแƒ—แƒ˜ แƒ แƒแƒšแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒœแƒ˜แƒจแƒœแƒ”แƒ‘แƒ˜;
  • แƒกแƒแƒฏแƒแƒ แƒ แƒฅแƒ•แƒ”แƒฅแƒกแƒ”แƒšแƒ”แƒ‘แƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒฏแƒ•แƒแƒ แƒ”แƒ“แƒ˜แƒœแƒ˜ แƒ แƒ”แƒ’แƒ˜แƒแƒœแƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ VRRP;
  • แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒฃแƒšแƒ˜ แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒ˜แƒก แƒšแƒ˜แƒชแƒ”แƒœแƒ–แƒ˜แƒ”แƒ‘แƒ˜.

แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒฉแƒ•แƒ”แƒœแƒก แƒกแƒแƒฏแƒแƒ แƒ Go แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒก VPC API-แƒกแƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ‘แƒ˜แƒ‘แƒšแƒ˜แƒแƒ—แƒ”แƒ™แƒแƒช แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜แƒช แƒฆแƒ˜แƒ แƒฌแƒงแƒแƒ แƒแƒ, แƒ›แƒแƒ—แƒ˜ แƒ’แƒแƒœแƒ•แƒ˜แƒ—แƒแƒ แƒ”แƒ‘แƒ แƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒ‘แƒ Github-แƒ–แƒ”:

แƒกแƒฎแƒ•แƒ แƒฆแƒ แƒฃแƒ‘แƒšแƒแƒ•แƒแƒœแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒกแƒแƒ›แƒแƒ แƒ—แƒแƒ•แƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒ˜, แƒ“แƒ˜แƒกแƒ™แƒ”แƒ‘แƒ˜, Kubernetes แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— OpenStack Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜. แƒแƒ แƒ˜แƒ•แƒ” แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜แƒก แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ‘แƒ›แƒฃแƒšแƒ”แƒ‘แƒ–แƒ”:

แƒœแƒแƒชแƒœแƒแƒ‘แƒแƒ‘แƒ

แƒ“แƒแƒกแƒแƒฌแƒงแƒ”แƒ‘แƒแƒ“, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒแƒ— Terraform (แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒžแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ‘แƒ›แƒฃแƒšแƒ”แƒ‘แƒ˜ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒฎแƒ˜แƒšแƒแƒ— แƒแƒฅ แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ  แƒกแƒแƒ˜แƒขแƒ–แƒ”).

แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ Selectel API แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒœแƒ”แƒšแƒ”แƒ‘แƒ˜.

Selectel-แƒ—แƒแƒœ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒ›แƒแƒœแƒ˜แƒคแƒ”แƒกแƒขแƒ”แƒ‘แƒ˜ แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ Terraform-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒแƒœ แƒ›แƒ–แƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ™แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ แƒฉแƒ•แƒ”แƒœแƒก Github แƒกแƒแƒชแƒแƒ•แƒจแƒ˜: terraform-แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜.

แƒกแƒแƒชแƒแƒ•แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒ— แƒ“แƒแƒงแƒแƒคแƒ˜แƒšแƒ˜แƒ แƒแƒ  แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒ“:

  • แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜, แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒ›แƒชแƒ˜แƒ แƒ” แƒ›แƒ แƒแƒ•แƒแƒšแƒฏแƒ”แƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒ“ แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ˜แƒฆแƒ”แƒ‘แƒ”แƒœ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ—แƒ แƒ”แƒ แƒ—แƒแƒ‘แƒšแƒ˜แƒแƒ‘แƒแƒก, แƒ แƒแƒ’แƒแƒ แƒช แƒจแƒ”แƒงแƒ•แƒแƒœแƒ˜แƒก แƒกแƒแƒฎแƒ˜แƒ— แƒ“แƒ แƒ›แƒแƒ แƒ—แƒแƒ•แƒ”แƒœ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒชแƒ˜แƒ แƒ” แƒ™แƒแƒ›แƒžแƒšแƒ”แƒฅแƒขแƒก;
  • แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒฃแƒ แƒ—แƒ˜แƒ”แƒ แƒ—แƒ“แƒแƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒœแƒแƒ™แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒก.

Terraform-แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก, Selectel API แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒชแƒœแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒ“แƒแƒ•แƒ˜แƒ“แƒ”แƒ— แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒฃแƒš แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ–แƒ”.

แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒกแƒ™แƒ˜แƒ— แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜

แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒก, แƒ แƒแƒšแƒ˜แƒก แƒ›แƒฅแƒแƒœแƒ” แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ“แƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒกแƒ™แƒ˜แƒ—: terraform-examples/examples/vpc/server_local_root_disk.

แƒคแƒแƒ˜แƒšแƒจแƒ˜ vars.tf แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ แƒงแƒ•แƒ”แƒšแƒ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒซแƒแƒฎแƒ”แƒ‘แƒ˜แƒกแƒแƒก. แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ— แƒ›แƒแƒ—แƒ’แƒแƒœแƒก แƒแƒฅแƒ•แƒก แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒ–แƒแƒœแƒแƒจแƒ˜ ru-3a แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒ—:

variable "server_vcpus" {
default = 4
}

variable "server_ram_mb" {
default = 8192
}

variable "server_root_disk_gb" {
default = 8
}

variable "server_image_name" {
default = "Ubuntu 18.04 LTS 64-bit"
}

แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜.แƒขแƒค Selectel แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜แƒก แƒ˜แƒœแƒ˜แƒชแƒ˜แƒแƒšแƒ˜แƒ–แƒแƒชแƒ˜แƒ แƒฎแƒ“แƒ”แƒ‘แƒ:

provider "selectel" {
token    = "${var.sel_token}"
}

แƒ”แƒก แƒคแƒแƒ˜แƒšแƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒชแƒแƒ•แƒก แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ• แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒแƒก SSH แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ“แƒแƒ˜แƒœแƒกแƒขแƒแƒšแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ–แƒ”:

module "server_local_root_disk" {
...
server_ssh_key      = "${file("~/.ssh/id_rsa.pub")}"
}

แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒแƒ— แƒกแƒฎแƒ•แƒ แƒกแƒแƒฏแƒแƒ แƒ แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜. แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜ แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒ’แƒ–แƒ; แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒแƒ›แƒแƒขแƒแƒ— แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช แƒกแƒขแƒ แƒ˜แƒฅแƒแƒœแƒ˜.

แƒจแƒ”แƒ›แƒ“แƒ’แƒแƒ› แƒแƒ› แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜_แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ—แƒแƒœ ะธ server_local_root_disk, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ›แƒแƒ แƒ—แƒแƒ•แƒ”แƒœ แƒกแƒแƒญแƒ˜แƒ แƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒก.

แƒ›แƒแƒ“แƒ˜แƒ— แƒจแƒ”แƒ•แƒฎแƒ”แƒ“แƒแƒ— แƒแƒ› แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒก แƒฃแƒคแƒ แƒ แƒ“แƒ”แƒขแƒแƒšแƒฃแƒ แƒแƒ“.

แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒ“แƒ แƒ แƒแƒšแƒ˜แƒก แƒ›แƒฅแƒแƒœแƒ” แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ

แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒฅแƒ›แƒœแƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒก แƒ“แƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒแƒฅแƒ•แƒก แƒ แƒแƒšแƒ˜ แƒแƒ› แƒžแƒ แƒแƒ”แƒฅแƒขแƒจแƒ˜: terraform-examples/modules/vpc/project_with_user.

แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒจแƒ”แƒซแƒšแƒ”แƒ‘แƒก OpenStack-แƒจแƒ˜ แƒจแƒ”แƒกแƒ•แƒšแƒแƒก แƒ“แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒแƒก. แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜แƒ แƒ“แƒ แƒ›แƒแƒ แƒ—แƒแƒ•แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒกแƒแƒ› แƒ”แƒ แƒ—แƒ”แƒฃแƒšแƒก:

  • selectel_vpc_project_v2,
  • selectel_vpc_user_v2,
  • selectel_vpc_role_v2.

แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒกแƒ™แƒ˜แƒ—

แƒ›แƒ”แƒแƒ แƒ” แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒ”แƒฎแƒ”แƒ‘แƒ OpenStack แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒแƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒฃแƒชแƒ˜แƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“ แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒกแƒ™แƒ˜แƒ—.

แƒงแƒฃแƒ แƒแƒ“แƒฆแƒ”แƒ‘แƒ แƒฃแƒœแƒ“แƒ แƒ›แƒ˜แƒแƒฅแƒชแƒ˜แƒแƒ— แƒ–แƒแƒ’แƒ˜แƒ”แƒ แƒ— แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒแƒ› แƒ›แƒแƒ“แƒฃแƒšแƒจแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก openstack_compute_instance_v2:

resource "openstack_compute_instance_v2" "instance_1" {
  ...

  lifecycle {
    ignore_changes = ["image_id"]
  }

  vendor_options {
    ignore_resize_confirmation = true
  }
}

แƒ™แƒแƒ›แƒแƒ—แƒ˜ แƒ˜แƒ’แƒœแƒแƒ แƒ˜แƒ แƒ”แƒ‘แƒ_แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒฃแƒ’แƒฃแƒšแƒ”แƒ‘แƒ”แƒšแƒงแƒแƒ— แƒแƒขแƒ แƒ˜แƒ‘แƒฃแƒขแƒ”แƒ‘แƒ˜แƒก แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ id แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. VPC แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒจแƒ˜ แƒกแƒแƒฏแƒแƒ แƒ แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ แƒแƒ•แƒขแƒแƒ›แƒแƒขแƒฃแƒ แƒแƒ“ แƒ’แƒแƒœแƒแƒฎแƒšแƒ“แƒ”แƒ‘แƒ แƒ™แƒ•แƒ˜แƒ แƒแƒจแƒ˜ แƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒ“แƒ แƒแƒ›แƒแƒ•แƒ” แƒ“แƒ แƒแƒก id แƒแƒกแƒ”แƒ•แƒ” แƒ˜แƒชแƒ•แƒšแƒ”แƒ‘แƒ. แƒ”แƒก แƒ’แƒแƒœแƒžแƒ˜แƒ แƒแƒ‘แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ OpenStack แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜แƒก - Glance-แƒ˜แƒก แƒ—แƒแƒ•แƒ˜แƒกแƒ”แƒ‘แƒฃแƒ แƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒจแƒ˜แƒช แƒกแƒฃแƒ แƒแƒ—แƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒ˜แƒฎแƒ˜แƒšแƒ”แƒ‘แƒ แƒฃแƒชแƒ•แƒšแƒ”แƒšแƒแƒ“.

แƒ—แƒฃ แƒ—แƒฅแƒ•แƒ”แƒœ แƒฅแƒ›แƒœแƒ˜แƒ— แƒแƒœ แƒชแƒ•แƒšแƒ˜แƒ— แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒš แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒก แƒแƒœ แƒ“แƒ˜แƒกแƒ™แƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒแƒฅแƒ•แƒก แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ˜ image_id แƒ›แƒ”แƒแƒ แƒแƒ“แƒ˜ id แƒกแƒแƒฏแƒแƒ แƒ แƒกแƒฃแƒ แƒแƒ—แƒ˜, แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒแƒ› แƒกแƒฃแƒ แƒแƒ—แƒ˜แƒก แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ Terraform manifest-แƒ˜แƒก แƒฎแƒ”แƒšแƒแƒฎแƒšแƒ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ แƒ’แƒแƒœแƒแƒแƒฎแƒšแƒ”แƒ‘แƒก แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒก แƒแƒœ แƒ“แƒ˜แƒกแƒ™แƒก. แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ˜แƒ’แƒœแƒแƒ แƒ˜แƒ แƒ”แƒ‘แƒ_แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ’แƒแƒซแƒšแƒ”แƒ•แƒ— แƒ—แƒแƒ•แƒ˜แƒ“แƒแƒœ แƒแƒ˜แƒชแƒ˜แƒšแƒแƒ— แƒแƒกแƒ”แƒ—แƒ˜ แƒกแƒ˜แƒขแƒฃแƒแƒชแƒ˜แƒ.

แƒจแƒ”แƒœแƒ˜แƒจแƒ•แƒœแƒ: แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ˜ แƒ˜แƒ’แƒœแƒแƒ แƒ˜แƒ แƒ”แƒ‘แƒ_แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ“แƒ˜แƒ“แƒ˜ แƒฎแƒœแƒ˜แƒก แƒฌแƒ˜แƒœ แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ Terraform-แƒจแƒ˜: pull#2525.

แƒ™แƒแƒ›แƒแƒ—แƒ˜ ignore_resize_confirmation แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒกแƒ™แƒ˜แƒก, แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ˜แƒก แƒแƒœ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ–แƒแƒ›แƒ˜แƒก แƒฌแƒแƒ แƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒจแƒ”แƒกแƒแƒชแƒ•แƒšแƒ”แƒšแƒแƒ“. แƒแƒกแƒ”แƒ—แƒ˜ แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜ แƒฎแƒ“แƒ”แƒ‘แƒ OpenStack Nova แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ— แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— แƒ–แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ. แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ Nova แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ–แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒก แƒกแƒขแƒแƒขแƒฃแƒกแƒจแƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ˜แƒก_ แƒ–แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒ“แƒ แƒ”แƒšแƒแƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒกแƒ’แƒแƒœ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒแƒ“แƒแƒกแƒขแƒฃแƒ แƒ”แƒ‘แƒแƒก. แƒ—แƒฃแƒ›แƒชแƒ, แƒ”แƒก แƒฅแƒชแƒ”แƒ•แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒ•แƒแƒšแƒแƒก แƒ˜แƒกแƒ”, แƒ แƒแƒ› Nova แƒแƒ  แƒ“แƒแƒ”แƒšแƒแƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒกแƒ’แƒแƒœ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ”แƒ‘แƒก.

แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ˜ Terraform-แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒแƒ  แƒ“แƒแƒ”แƒšแƒแƒ“แƒแƒก แƒกแƒขแƒแƒขแƒฃแƒกแƒก แƒ’แƒแƒ“แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ˜แƒก_ แƒ–แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ“แƒ แƒ›แƒแƒ”แƒ›แƒ–แƒแƒ“แƒ”แƒ— แƒ˜แƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒ˜แƒงแƒแƒก แƒแƒฅแƒขแƒ˜แƒฃแƒ  แƒกแƒขแƒแƒขแƒฃแƒกแƒจแƒ˜ แƒ›แƒ˜แƒกแƒ˜ แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’. แƒแƒ แƒ’แƒฃแƒ›แƒ”แƒœแƒขแƒ˜ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒ OpenStack Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜แƒก 1.10.0 แƒ•แƒ”แƒ แƒกแƒ˜แƒ˜แƒ“แƒแƒœ: pull#422.

แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ

แƒ›แƒแƒœแƒ˜แƒคแƒ”แƒกแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒแƒ›แƒ“แƒ”, แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› แƒฉแƒ•แƒ”แƒœแƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒแƒ แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜, แƒฎแƒแƒšแƒ OpenStack แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ แƒ“แƒแƒ›แƒแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ Selectel แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ–แƒ”, แƒ แƒแƒ“แƒ’แƒแƒœ แƒžแƒ แƒแƒ”แƒฅแƒขแƒจแƒ˜ แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒจแƒ”แƒฃแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ›แƒ˜แƒกแƒ˜ แƒ™แƒฃแƒ—แƒ•แƒœแƒ˜แƒšแƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ. . แƒกแƒแƒ›แƒฌแƒฃแƒฎแƒแƒ แƒแƒ“, แƒ˜แƒ›แƒแƒ•แƒ” แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜แƒ— แƒฉแƒ•แƒ”แƒœ แƒแƒ  แƒจแƒ”แƒ’แƒ•แƒ˜แƒซแƒšแƒ˜แƒ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“ แƒ’แƒแƒฃแƒจแƒ•แƒแƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒขแƒ”แƒ แƒแƒคแƒแƒ แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒก แƒจแƒ˜แƒ’แƒœแƒ˜แƒ—. แƒฉแƒ•แƒ”แƒœ แƒฏแƒ”แƒ  แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ•แƒแƒ™แƒ”แƒ—แƒแƒ— แƒ•แƒ แƒชแƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜_แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ—แƒแƒœ แƒ“แƒ แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒงแƒ•แƒ”แƒšแƒ แƒ“แƒแƒœแƒแƒ แƒฉแƒ”แƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒจแƒ”แƒœแƒ˜แƒจแƒ•แƒœแƒ: แƒ”แƒก แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ˜ แƒฏแƒ”แƒ  แƒแƒ  แƒแƒ แƒ˜แƒก แƒ›แƒแƒ’แƒ•แƒแƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ Terraform-แƒจแƒ˜, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ—แƒ•แƒแƒšแƒ˜ แƒแƒ“แƒ”แƒ•แƒœแƒแƒ— แƒ’แƒแƒœแƒฎแƒ˜แƒšแƒ•แƒแƒก Github-แƒ–แƒ” แƒœแƒแƒ›แƒ”แƒ แƒ˜ #2430 ะธ แƒœแƒแƒ›แƒ”แƒ แƒ˜ #4149.

แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“ แƒ’แƒแƒ“แƒแƒ“แƒ˜แƒ— แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ terraform-examples/examples/vpc/server_local_root_disk, แƒ›แƒ˜แƒกแƒ˜ แƒจแƒ˜แƒœแƒแƒแƒ แƒกแƒ˜ แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒแƒกแƒ”แƒ—แƒ˜:

$ ls
README.md	   main.tf		vars.tf

แƒฉแƒ•แƒ”แƒœ แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒ˜แƒชแƒ˜แƒแƒšแƒ˜แƒ–แƒแƒชแƒ˜แƒแƒก แƒ•แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

$ terraform init

แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ แƒ’แƒ•แƒ˜แƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก, แƒ แƒแƒ› Terraform แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒก แƒ›แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒฃแƒแƒฎแƒšแƒ”แƒก แƒ•แƒ”แƒ แƒกแƒ˜แƒ”แƒ‘แƒก แƒ“แƒ แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒจแƒ˜ แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒš แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒแƒ“แƒฃแƒšแƒก.

แƒฏแƒ”แƒ  แƒ’แƒแƒ›แƒแƒ•แƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜_แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ—แƒแƒœ. แƒ”แƒก แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒฎแƒ”แƒšแƒ˜แƒ— แƒ’แƒแƒ“แƒแƒชแƒ”แƒ›แƒแƒก แƒ˜แƒ› แƒชแƒ•แƒšแƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜:

  • sel_แƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ Selectel แƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒ˜แƒก แƒœแƒแƒ›แƒ แƒ˜แƒ—;
  • sel_token แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ’แƒแƒกแƒแƒฆแƒ”แƒ‘แƒ˜แƒ— Selectel API-แƒกแƒ—แƒ•แƒ˜แƒก;
  • แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒžแƒแƒ แƒแƒšแƒ˜ แƒžแƒแƒ แƒแƒšแƒ˜แƒ— OpenStack แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.

แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒแƒ แƒ˜ แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜ แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒแƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒœแƒ”แƒšแƒ”แƒ‘แƒ˜.

แƒ‘แƒแƒšแƒ แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒžแƒแƒ แƒแƒšแƒ˜แƒก แƒ›แƒแƒซแƒ˜แƒ”แƒ‘แƒ.

แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“ แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ SEL_ACCOUNT, SEL_TOKEN ะธ แฒ›แฒแฒ›แฒฎแฒ›แฒแฒ แฒ”แฒ‘แฒšแฒ˜แฒก แฒžแฒแฒ แฒแฒšแฒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ:

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform apply -target=module.project_with_user

แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, Terraform แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ แƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก แƒกแƒฃแƒ แƒก แƒ“แƒ แƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ“แƒแƒ“แƒแƒกแƒขแƒฃแƒ แƒ”แƒ‘แƒแƒก:

Plan: 3 to add, 0 to change, 0 to destroy.

Do you want to perform these actions?
Terraform will perform the actions described above.
Only 'yes' will be accepted to approve.

Enter a value: yes

แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก, แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ“แƒ แƒ แƒแƒšแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ“แƒแƒ˜แƒฌแƒงแƒแƒ— แƒ“แƒแƒ แƒฉแƒ”แƒœแƒ˜แƒšแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ:

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform apply

แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒกแƒแƒก แƒงแƒฃแƒ แƒแƒ“แƒฆแƒ”แƒ‘แƒ แƒ›แƒ˜แƒแƒฅแƒชแƒ˜แƒ”แƒ— Terraform-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒก แƒ’แƒแƒ แƒ” IP แƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ˜แƒ—, แƒกแƒแƒ“แƒแƒช แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜:

module.server_local_root_disk.openstack_networking_floatingip_associate_v2.association_1: Creating...
  floating_ip: "" => "x.x.x.x"

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒ›แƒฃแƒจแƒแƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒš แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ  แƒ›แƒแƒœแƒฅแƒแƒœแƒแƒกแƒ—แƒแƒœ SSH-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ IP-แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.

แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒ แƒ”แƒ“แƒแƒฅแƒขแƒ˜แƒ แƒ”แƒ‘แƒ

Terraform-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ’แƒแƒ แƒ“แƒ, แƒ›แƒแƒ—แƒ˜ แƒจแƒ”แƒชแƒ•แƒšแƒแƒช แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ.

แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ•แƒ–แƒแƒ แƒ“แƒแƒ— แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒฉแƒ•แƒ”แƒœแƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒžแƒแƒ แƒแƒ›แƒ”แƒขแƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ˜แƒ—. server_vcpus ะธ server_ram_mb แƒคแƒแƒ˜แƒšแƒจแƒ˜ examples/vpc/server_local_root_disk/main.tf:

-  server_vcpus        = "${var.server_vcpus}"
-  server_ram_mb       = "${var.server_ram_mb}"
+  server_vcpus        = 8
+  server_ram_mb       = 10240

แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒฉแƒ•แƒ”แƒœ แƒ•แƒแƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ— แƒ แƒ แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒก แƒ’แƒแƒ›แƒแƒ˜แƒฌแƒ•แƒ”แƒ•แƒก แƒ”แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—:

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform plan

แƒจแƒ”แƒ“แƒ”แƒ’แƒแƒ“, Terraform-แƒ›แƒ แƒจแƒ”แƒชแƒ•แƒแƒšแƒ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ˜ openstack_compute_instance_v2 ะธ openstack_compute_flavor_v2.

แƒ’แƒ—แƒฎแƒแƒ•แƒ— แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒแƒ—, แƒ แƒแƒ› แƒ”แƒก แƒ’แƒแƒ›แƒแƒ˜แƒฌแƒ•แƒ”แƒ•แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒแƒก.

แƒแƒฎแƒแƒšแƒ˜ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒขแƒ”แƒ แƒแƒคแƒแƒ แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฉแƒ•แƒ”แƒœ แƒฃแƒ™แƒ•แƒ” แƒ’แƒแƒ•แƒฃแƒจแƒ•แƒ˜แƒ— แƒแƒ“แƒ แƒ”.

แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜ แƒ’แƒแƒ›แƒแƒฉแƒœแƒ“แƒ”แƒ‘แƒ VPC แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒžแƒแƒœแƒ”แƒšแƒ”แƒ‘แƒ˜:

Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

แƒฉแƒ•แƒ”แƒœแƒก แƒกแƒแƒชแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ˜แƒฎแƒ˜แƒšแƒแƒ— แƒ›แƒแƒœแƒ˜แƒคแƒ”แƒกแƒขแƒ”แƒ‘แƒ˜ แƒฅแƒกแƒ”แƒšแƒฃแƒ แƒ˜ แƒ“แƒ˜แƒกแƒ™แƒ”แƒ‘แƒ˜แƒ— แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“.

Kubernetes แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜

แƒกแƒแƒœแƒแƒ› แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ–แƒ” แƒ’แƒแƒ“แƒแƒ•แƒแƒšแƒ—, แƒฉแƒ•แƒ”แƒœ แƒ’แƒแƒ•แƒแƒกแƒฃแƒคแƒ—แƒแƒ•แƒ”แƒ‘แƒ— แƒแƒ“แƒ แƒ” แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒš แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒก. แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒซแƒ˜แƒ แƒจแƒ˜ terraform-examples/examples/vpc/server_local_root_disk แƒ›แƒแƒ“แƒ˜แƒ— แƒ’แƒแƒ•แƒฃแƒจแƒ•แƒแƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ OpenStack แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒฌแƒแƒกแƒแƒจแƒšแƒ”แƒšแƒแƒ“:

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform destroy -target=module.server_local_root_disk

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ’แƒแƒฃแƒจแƒ•แƒ˜แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ Selectel VPC API แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒกแƒแƒกแƒฃแƒคแƒ—แƒแƒ•แƒ”แƒ‘แƒšแƒแƒ“:

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform destroy -target=module.project_with_user

แƒแƒ แƒ˜แƒ•แƒ” แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ“แƒแƒแƒ“แƒแƒกแƒขแƒฃแƒ แƒแƒ— แƒงแƒ•แƒ”แƒšแƒ แƒแƒ‘แƒ˜แƒ”แƒฅแƒขแƒ˜แƒก แƒฌแƒแƒจแƒšแƒ:

Do you really want to destroy all resources?
Terraform will destroy all your managed infrastructure, as shown above.
There is no undo. Only 'yes' will be accepted to confirm.

Enter a value: yes

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒแƒ แƒ˜แƒก แƒ“แƒ˜แƒ แƒ”แƒฅแƒขแƒแƒ แƒ˜แƒแƒจแƒ˜ terraform-examples/examples/vpc/kubernetes_cluster.

แƒ”แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜ แƒฅแƒ›แƒœแƒ˜แƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒก, แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒแƒฅแƒ•แƒก แƒ แƒแƒšแƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒจแƒ˜ แƒ“แƒ แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒ”แƒ แƒ— Kubernetes แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒก. แƒคแƒแƒ˜แƒšแƒจแƒ˜ vars.tf แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒœแƒแƒฎแƒแƒ— แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ, แƒ›แƒแƒ—แƒ˜ แƒ›แƒแƒฎแƒแƒกแƒ˜แƒแƒ—แƒ”แƒ‘แƒšแƒ”แƒ‘แƒ˜, Kubernetes แƒ•แƒ”แƒ แƒกแƒ˜แƒ แƒ“แƒ แƒ.แƒจ.

แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒก แƒ›แƒกแƒ’แƒแƒ•แƒกแƒ˜ แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฅแƒ›แƒœแƒ”แƒšแƒแƒ“, แƒžแƒ˜แƒ แƒ•แƒ”แƒš แƒ แƒ˜แƒ’แƒจแƒ˜ แƒ“แƒแƒ•แƒ˜แƒฌแƒงแƒ”แƒ‘แƒ— แƒ›แƒแƒ“แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ˜แƒœแƒ˜แƒชแƒ˜แƒแƒšแƒ˜แƒ–แƒแƒชแƒ˜แƒแƒก แƒ“แƒ แƒ›แƒแƒ“แƒฃแƒšแƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜_แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒ—แƒแƒœแƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒงแƒ•แƒ”แƒšแƒแƒคแƒ”แƒ แƒ˜ แƒ“แƒแƒœแƒแƒ แƒฉแƒ”แƒœแƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒ:

$ terraform init

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform apply -target=module.project_with_user

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform apply

แƒฉแƒ•แƒ”แƒœ แƒ’แƒแƒ“แƒแƒ•แƒ˜แƒขแƒแƒœแƒ— Kubernetes แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒก แƒ“แƒ แƒ›แƒแƒ แƒ—แƒ•แƒแƒก OpenStack Magnum แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—. แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ˜แƒ’แƒแƒ— แƒ›แƒ”แƒขแƒ˜, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒ— แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ—แƒแƒœ แƒ”แƒ แƒ—-แƒ”แƒ แƒ— แƒฉแƒ•แƒ”แƒœแƒ’แƒแƒœแƒจแƒ˜ แƒฌแƒ˜แƒœแƒ แƒกแƒขแƒแƒขแƒ˜แƒ”แƒ‘แƒ˜, แƒ˜แƒกแƒ”แƒ•แƒ”, แƒ แƒแƒ’แƒแƒ แƒช แƒชแƒแƒ“แƒœแƒ˜แƒก แƒ‘แƒแƒ–แƒ.

แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒแƒ›แƒ–แƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒแƒก แƒจแƒ”แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒ“แƒ˜แƒกแƒ™แƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒฅแƒแƒœแƒ”แƒ‘แƒ˜ แƒ“แƒ แƒ“แƒแƒ›แƒแƒœแƒขแƒแƒŸแƒ“แƒ”แƒ‘แƒ แƒงแƒ•แƒ”แƒšแƒ แƒกแƒแƒญแƒ˜แƒ แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜. แƒ›แƒแƒ›แƒ–แƒแƒ“แƒ”แƒ‘แƒแƒก แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— 4 แƒฌแƒฃแƒ—แƒ˜ แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ, แƒแƒ› แƒ“แƒ แƒแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜ Terraform แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ:

module.kubernetes_cluster.openstack_containerinfra_cluster_v1.cluster_1: Still creating... (3m0s elapsed)

แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ“แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, Terraform แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒ”แƒ‘แƒก, แƒ แƒแƒ› แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜ แƒ›แƒ–แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ“แƒ แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒก แƒ›แƒ˜แƒก ID-แƒก:

module.kubernetes_cluster.openstack_containerinfra_cluster_v1.cluster_1: Creation complete after 4m20s (ID: 3c8...)

Apply complete! Resources: 6 added, 0 changed, 0 destroyed.

แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ Kubernetes แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ แƒฃแƒขแƒ˜แƒšแƒ˜แƒขแƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜ แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ›แƒ˜แƒ˜แƒฆแƒแƒ— แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒšแƒ˜ แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒคแƒแƒ˜แƒšแƒ˜. แƒแƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ“แƒแƒ“แƒ˜แƒ— Terraform-แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒš แƒžแƒ แƒแƒ”แƒฅแƒขแƒ–แƒ” แƒ—แƒฅแƒ•แƒ”แƒœแƒก แƒแƒœแƒ’แƒแƒ แƒ˜แƒจแƒจแƒ˜ แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒแƒจแƒ˜:

Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜, แƒ›แƒ˜แƒฐแƒงแƒ”แƒ•แƒ˜แƒ— แƒ‘แƒ›แƒฃแƒšแƒก like xxxxxx.selvpc.ruแƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฉแƒแƒœแƒก แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜แƒก แƒฅแƒ•แƒ”แƒ›แƒแƒ—:

Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

แƒจแƒ”แƒกแƒ•แƒšแƒ˜แƒก แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒกแƒแƒฎแƒ”แƒšแƒ˜ แƒ“แƒ แƒžแƒแƒ แƒแƒšแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒจแƒ”แƒฅแƒ›แƒ”แƒœแƒ˜แƒ— Terraform-แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ—. แƒ—แƒฃ แƒแƒ  แƒ›แƒแƒ’แƒแƒขแƒงแƒฃแƒ” vars.tf แƒแƒœ แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜.แƒขแƒค แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒ”แƒšแƒก แƒ”แƒฅแƒœแƒ”แƒ‘แƒ แƒกแƒแƒฎแƒ”แƒšแƒ˜ tf_user. แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ, แƒ แƒแƒ’แƒแƒ แƒช แƒžแƒแƒ แƒแƒšแƒ˜ TF_VAR_user_password, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒงแƒ แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒกแƒแƒก แƒขแƒ”แƒ แƒแƒคแƒแƒ แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒแƒ“แƒ แƒ”.

แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒก แƒจแƒ˜แƒ’แƒœแƒ˜แƒ— แƒ—แƒฅแƒ•แƒ”แƒœ แƒฃแƒœแƒ“แƒ แƒ’แƒแƒ“แƒแƒฎแƒ•แƒ˜แƒ“แƒ”แƒ— แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ” แƒ™แƒฃแƒ‘แƒ”แƒ แƒœแƒ”แƒขแƒ”แƒ‘แƒ˜:

Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

แƒกแƒฌแƒแƒ แƒ”แƒ“ แƒแƒฅ แƒ›แƒ“แƒ”แƒ‘แƒแƒ แƒ”แƒแƒ‘แƒก Terraform-แƒ˜แƒก แƒ›แƒ”แƒจแƒ•แƒ”แƒแƒ‘แƒ˜แƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜. แƒคแƒแƒ˜แƒšแƒ˜แƒก แƒฉแƒแƒ›แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ แƒแƒ›แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜ "แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก" แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ” แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ—:

Terraform แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒ˜ Selectel

แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ˜แƒก แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒ—แƒแƒ•แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ˜แƒ›แƒแƒ•แƒ” แƒฉแƒแƒœแƒแƒ แƒ—แƒ–แƒ”. แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜ แƒ“แƒ แƒ’แƒแƒ“แƒ›แƒแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ config.yaml.

แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ™แƒฃแƒ‘แƒ”แƒฅแƒขแƒšแƒ˜ แƒ“แƒ แƒ’แƒแƒ แƒ”แƒ›แƒแƒก แƒชแƒ•แƒšแƒแƒ“แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ KUBECONFIG แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— Kubernetes:

$ kubectl get pods --all-namespaces

NAMESPACE        NAME                                    READY  STATUS  RESTARTS AGE
kube-system   coredns-9578f5c87-g6bjf                      1/1   Running   0 8m
kube-system   coredns-9578f5c87-rvkgd                     1/1   Running   0 6m
kube-system   heapster-866fcbc879-b6998                 1/1   Running   0 8m
kube-system   kube-dns-autoscaler-689688988f-8cxhf             1/1   Running   0 8m
kube-system   kubernetes-dashboard-7bdb5d4cd7-jcjq9          1/1   Running   0 8m
kube-system   monitoring-grafana-84c97bb64d-tc64b               1/1   Running   0 8m
kube-system   monitoring-influxdb-7c8ccc75c6-dzk5f                1/1   Running   0 8m
kube-system   node-exporter-tf-cluster-rz6nggvs4va7-minion-0 1/1   Running   0 8m
kube-system   node-exporter-tf-cluster-rz6nggvs4va7-minion-1 1/1   Running   0 8m
kube-system   openstack-cloud-controller-manager-8vrmp        1/1   Running   3 8m
prometeus-monitoring   grafana-76bcb7ffb8-4tm7t       1/1   Running   0 8m
prometeus-monitoring   prometheus-75cdd77c5c-w29gb           1/1   Running   0 8m

แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒšแƒ˜ แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒแƒ“ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒ•แƒแƒšแƒแƒก Terraform-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ—.
แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜.แƒขแƒค แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ:

cluster_node_count = "${var.cluster_node_count}"

แƒ”แƒก แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒฉแƒแƒœแƒแƒชแƒ•แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ vars.tf:

variable "cluster_node_count" {
default = 2
}

แƒ—แƒฅแƒ•แƒ”แƒœ แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒชแƒ•แƒแƒšแƒแƒ— แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒ˜ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ vars.tf, แƒแƒœ แƒ›แƒ˜แƒฃแƒ—แƒ˜แƒ—แƒ”แƒ— แƒกแƒแƒญแƒ˜แƒ แƒ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ‘แƒ แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ  แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜.แƒขแƒค:

-  cluster_node_count = "${var.cluster_node_count}"
+  cluster_node_count = 3

แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒงแƒ”แƒœแƒ”แƒ‘แƒšแƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒช แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ— แƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒขแƒ”แƒ แƒแƒคแƒแƒ แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ:

$ env 
TF_VAR_sel_account=SEL_ACCOUNT 
TF_VAR_sel_token=SEL_TOKEN 
TF_VAR_user_password=USER_PASSWORD 
terraform apply

แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ™แƒ•แƒแƒœแƒซแƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒ•แƒšแƒ”แƒ‘แƒ, แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜ แƒฎแƒ”แƒšแƒ›แƒ˜แƒกแƒแƒฌแƒ•แƒ“แƒแƒ›แƒ˜ แƒ“แƒแƒ แƒฉแƒ”แƒ‘แƒ. Terraform-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ— แƒ™แƒ•แƒแƒœแƒซแƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒแƒ— แƒ˜แƒ’แƒ˜ แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ˜แƒ—แƒ˜ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”:

$ kubectl get nodes
NAME                               STATUS                     ROLES     AGE   VERSION
tf-cluster-rz6nggvs4va7-master-0   Ready,SchedulingDisabled   master    8m    v1.12.4
tf-cluster-rz6nggvs4va7-minion-0   Ready                      <none>    8m    v1.12.4
tf-cluster-rz6nggvs4va7-minion-1   Ready                      <none>    8m    v1.12.4
tf-cluster-rz6nggvs4va7-minion-2   Ready                      <none>    3m    v1.12.4

แƒ“แƒแƒกแƒ™แƒ•แƒœแƒ

แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜ แƒ’แƒแƒ•แƒ”แƒชแƒแƒœแƒ˜แƒ— แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“ แƒ’แƒ–แƒ”แƒ‘แƒก "แƒ•แƒ˜แƒ แƒขแƒฃแƒแƒšแƒฃแƒ แƒ˜ แƒžแƒ˜แƒ แƒแƒ“แƒ˜ แƒฆแƒ แƒฃแƒ‘แƒ”แƒšแƒ˜" Terraform-แƒ˜แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ—. แƒ›แƒแƒฎแƒแƒ แƒฃแƒšแƒ˜ แƒ•แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ˜แƒ—, แƒ—แƒฃ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ— Selectel Terraform-แƒ˜แƒก แƒแƒคแƒ˜แƒชแƒ˜แƒแƒšแƒฃแƒ  แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒก แƒ“แƒ แƒ›แƒแƒ’แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒ— แƒ’แƒแƒ›แƒแƒฎแƒ›แƒแƒฃแƒ แƒ”แƒ‘แƒแƒก.

Selectel Terraform-แƒ˜แƒก แƒžแƒ แƒแƒ•แƒแƒ˜แƒ“แƒ”แƒ แƒจแƒ˜ แƒแƒฆแƒ›แƒแƒฉแƒ”แƒœแƒ˜แƒšแƒ˜ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒฎแƒแƒ แƒ•แƒ”แƒ–แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ Github แƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒ”แƒ‘แƒ˜.

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ