ผู้ให้บริการ 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 แล้ว สร้างคีย์ 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"
}

ในไฟล์ main.tf ผู้ให้บริการ Selectel เริ่มต้นได้:

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

ไฟล์นี้ยังประกอบด้วยค่าเริ่มต้นสำหรับคีย์ SSH ที่จะติดตั้งบนเซิร์ฟเวอร์:

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

หากจำเป็น คุณสามารถระบุคีย์สาธารณะอื่นได้ ไม่จำเป็นต้องระบุคีย์เป็นเส้นทางของไฟล์ คุณยังสามารถเพิ่มค่าเป็นสตริงได้ด้วย

นอกจากนี้ในไฟล์นี้ยังมีการเปิดตัวโมดูลต่างๆ โครงการ_with_user и เซิร์ฟเวอร์_local_root_diskซึ่งจัดการทรัพยากรที่จำเป็น

มาดูรายละเอียดโมดูลเหล่านี้กันดีกว่า

การสร้างโครงการและผู้ใช้ที่มีบทบาท

โมดูลแรกสร้างโครงการและผู้ใช้ที่มีบทบาทในโครงการนั้น: Terraform-ตัวอย่าง/โมดูล/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 ซึ่งรูปภาพถือเป็นเอนทิตีที่ไม่เปลี่ยนรูป

หากคุณกำลังสร้างหรือแก้ไขเซิร์ฟเวอร์หรือดิสก์ที่มีอยู่ซึ่งมีเป็นอาร์กิวเมนต์ อิมเมจ_ไอดี เคย id รูปภาพสาธารณะ จากนั้นหลังจากอัปเดตรูปภาพนั้นแล้ว การเรียกใช้รายการ Terraform อีกครั้งจะสร้างเซิร์ฟเวอร์หรือดิสก์ขึ้นใหม่ การใช้ข้อโต้แย้ง ละเลย_การเปลี่ยนแปลง ช่วยให้คุณหลีกเลี่ยงสถานการณ์ดังกล่าวได้

หมายเหตุ: อาร์กิวเมนต์ ละเลย_การเปลี่ยนแปลง ปรากฏใน Terraform เมื่อนานมาแล้ว: ดึง#2525.

อาร์กิวเมนต์ ละเว้น_resize_confirmation จำเป็นในการปรับขนาดดิสก์ภายในเครื่อง คอร์ หรือหน่วยความจำเซิร์ฟเวอร์ได้สำเร็จ การเปลี่ยนแปลงดังกล่าวเกิดขึ้นผ่านส่วนประกอบ OpenStack Nova โดยใช้คำขอ ปรับขนาด. ค่าเริ่มต้น Nova หลังจากการร้องขอ ปรับขนาด ทำให้เซิร์ฟเวอร์เข้าสู่สถานะ ตรวจสอบ_ปรับขนาด และรอการยืนยันเพิ่มเติมจากผู้ใช้ อย่างไรก็ตาม พฤติกรรมนี้สามารถเปลี่ยนแปลงได้เพื่อให้ Nova ไม่ต้องรอการดำเนินการเพิ่มเติมจากผู้ใช้

อาร์กิวเมนต์ที่ระบุอนุญาตให้ Terraform ไม่ต้องรอสถานะ ตรวจสอบ_ปรับขนาด สำหรับเซิร์ฟเวอร์และเตรียมพร้อมสำหรับเซิร์ฟเวอร์ให้อยู่ในสถานะใช้งานหลังจากเปลี่ยนพารามิเตอร์ อาร์กิวเมนต์นี้มีอยู่ในเวอร์ชัน 1.10.0 ของผู้ให้บริการ OpenStack Terraform: ดึง#422.

การสร้างทรัพยากร

ก่อนที่จะเรียกใช้รายการ โปรดทราบว่าในตัวอย่างของเรา มีการเปิดตัวผู้ให้บริการที่แตกต่างกันสองราย และผู้ให้บริการ OpenStack ขึ้นอยู่กับทรัพยากรของผู้ให้บริการ Selectel เนื่องจากหากไม่มีการสร้างผู้ใช้ในโครงการ จึงเป็นไปไม่ได้ที่จะจัดการวัตถุที่เป็นของมัน . น่าเสียดาย ด้วยเหตุผลเดียวกัน เราจึงไม่สามารถรันคำสั่งได้ ใช้ภูมิประเทศ ภายในตัวอย่างของเรา เราต้องทำก่อน ใช้ สำหรับโมดูล โครงการ_with_user และหลังจากนั้นสำหรับทุกสิ่งทุกอย่าง

หมายเหตุ: ปัญหานี้ยังไม่ได้รับการแก้ไขใน Terraform คุณสามารถติดตามการสนทนาบน Github ได้ที่ ฉบับที่ #2430 и ฉบับที่ #4149.

หากต้องการสร้างทรัพยากร ให้ไปที่ไดเรกทอรี Terraform-examples/examples/vpc/server_local_root_diskเนื้อหาควรเป็นดังนี้:

$ ls
README.md	   main.tf		vars.tf

เราเริ่มต้นโมดูลโดยใช้คำสั่ง:

$ terraform init

ผลลัพธ์แสดงให้เห็นว่า Terraform ดาวน์โหลดเวอร์ชันล่าสุดของผู้ให้บริการที่ใช้และตรวจสอบโมดูลทั้งหมดที่อธิบายไว้ในตัวอย่าง

ก่อนอื่น เรามาประยุกต์ใช้โมดูลกันก่อน โครงการ_with_user. สิ่งนี้ต้องส่งค่าด้วยตนเองสำหรับตัวแปรที่ยังไม่ได้ตั้งค่า:

  • sel_account ด้วยหมายเลขบัญชี Selectel ของคุณ
  • sel_token ด้วยรหัสของคุณสำหรับ Selectel API
  • ผู้ใช้_รหัสผ่าน พร้อมรหัสผ่านสำหรับผู้ใช้ OpenStack

ต้องนำค่าสำหรับตัวแปรสองตัวแรกมา แผงควบคุม.

สำหรับตัวแปรสุดท้าย คุณสามารถสร้างรหัสผ่านใดก็ได้

หากต้องการใช้โมดูล คุณจะต้องแทนที่ค่าต่างๆ SEL_ACCOUNT, SEL_TOKEN и USER_รหัสผ่าน รันคำสั่ง:

$ 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 и เซิร์ฟเวอร์_ram_mb ในไฟล์ ตัวอย่าง/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-ตัวอย่าง/ตัวอย่าง/vpc/kubernetes_cluster.

ตัวอย่างนี้สร้างโปรเจ็กต์ ซึ่งเป็นผู้ใช้ที่มีบทบาทในโปรเจ็กต์ และยกคลัสเตอร์ Kubernetes หนึ่งคลัสเตอร์ ในไฟล์ vars.tf คุณสามารถดูค่าเริ่มต้นได้ เช่น จำนวนโหนด คุณลักษณะ เวอร์ชัน Kubernetes เป็นต้น

ในการสร้างทรัพยากรที่คล้ายกับตัวอย่างแรก ก่อนอื่นเราจะเริ่มต้นการกำหนดค่าเริ่มต้นของโมดูลและสร้างทรัพยากรของโมดูล โครงการ_with_userแล้วสร้างอย่างอื่นทั้งหมด:

$ 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 ที่สร้างขึ้นผ่านยูทิลิตี้ Kubectl คุณต้องได้รับไฟล์การเข้าถึงคลัสเตอร์ หากต้องการทำสิ่งนี้ ให้ไปที่โปรเจ็กต์ที่สร้างผ่าน Terraform ในรายการโปรเจ็กต์ในบัญชีของคุณ:

ผู้ให้บริการ Terraform Selectel

ต่อไปตามลิงค์เช่น xxxxxx.selvpc.ruซึ่งปรากฏใต้ชื่อโครงการ:

ผู้ให้บริการ Terraform Selectel

สำหรับข้อมูลการเข้าสู่ระบบ ให้ใช้ชื่อผู้ใช้และรหัสผ่านที่คุณสร้างผ่าน Terraform หากคุณไม่โกง vars.tf หรือ main.tf สำหรับตัวอย่างของเรา ผู้ใช้จะมีชื่อ tf_user. คุณต้องใช้ค่าของตัวแปรเป็นรหัสผ่าน TF_VAR_user_passwordซึ่งระบุไว้เมื่อเริ่มต้น ใช้ภูมิประเทศ ก่อนหน้านี้

ภายในโครงการคุณต้องไปที่แท็บ Kubernetes:

ผู้ให้บริการ Terraform Selectel

นี่คือที่ตั้งของคลัสเตอร์ที่สร้างผ่าน Terraform ดาวน์โหลดไฟล์สำหรับ Kubectl คุณสามารถทำได้บนแท็บ "การเข้าถึง":

ผู้ให้บริการ Terraform Selectel

คำแนะนำในการติดตั้งจะอยู่ในแท็บเดียวกัน Kubectl และการใช้งานที่ดาวน์โหลดมา config.yaml.

หลังจากเปิดตัว Kubectl และการตั้งค่าตัวแปรสภาพแวดล้อม คูเบคอนฟิก คุณสามารถใช้ 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
ในไฟล์ main.tf ระบุค่าต่อไปนี้:

cluster_node_count = "${var.cluster_node_count}"

ค่านี้จะถูกแทนที่จาก vars.tf:

variable "cluster_node_count" {
default = 2
}

คุณสามารถเปลี่ยนค่าเริ่มต้นได้ใน vars.tfหรือระบุค่าที่ต้องการโดยตรงใน main.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

ข้อสรุป

ในบทความนี้ เราได้ทำความคุ้นเคยกับวิธีหลักในการทำงานด้วย “คลาวด์ส่วนตัวเสมือนจริง” ผ่านทางเทอร์ราฟอร์ม เรายินดีเป็นอย่างยิ่งหากคุณใช้ผู้ให้บริการ Selectel Terraform อย่างเป็นทางการและแสดงความคิดเห็น

สามารถรายงานข้อบกพร่องใดๆ ที่พบในผู้ให้บริการ Selectel Terraform ได้ทาง ปัญหา Github.

ที่มา: will.com

เพิ่มความคิดเห็น