User Tools

Site Tools


технология_terraform

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
технология_terraform [2026/09/27 06:31]
val [terraform-provider-virtualbox]
технология_terraform [2026/09/28 10:33] (current)
val [terraform-provider-virtualbox]
Line 13: Line 13:
   * [[https://​stackoverflow.com/​questions/​69860280/​how-to-properly-reset-terraform-default-tfstate|How to properly reset Terraform default tfstate?]]   * [[https://​stackoverflow.com/​questions/​69860280/​how-to-properly-reset-terraform-default-tfstate|How to properly reset Terraform default tfstate?]]
  
 +  * Вебинар:​ [[On-premise Terraform|Развертывание инфраструктуры в On-premise облаке с использованием Terraform]]
 ===== Установка ===== ===== Установка =====
  
Line 32: Line 33:
   * https://​mirror.selectel.ru/​3rd-party/​hashicorp-releases/​terraform/​1.9.2/​terraform_1.9.2_windows_amd64.zip   * https://​mirror.selectel.ru/​3rd-party/​hashicorp-releases/​terraform/​1.9.2/​terraform_1.9.2_windows_amd64.zip
  
 +  * [[Материалы по Windows#​Установить PATH]]
 <​code>​ <​code>​
 PS C:​\Users\Administrator>​ $Env:​PATH ​ PS C:​\Users\Administrator>​ $Env:​PATH ​
-...;​C:​\terraform\;C:\Program Files\Oracle\VirtualBox;...+...;​C:​\terraform\;​...
 </​code>​ </​code>​
 ===== terraform-provider-libvirt ===== ===== terraform-provider-libvirt =====
Line 379: Line 381:
  
   * https://​github.com/​terra-farm/​terraform-provider-virtualbox   * https://​github.com/​terra-farm/​terraform-provider-virtualbox
-  * https://​github.com/​terra-farm/​terraform-provider-virtualbox/​releases/​download/​v0.2.2-alpha.1/​terraform-provider-virtualbox_0.2.2-alpha.1_windows_amd64.zip 
  
 +  * [[Материалы по Windows#​Установить PATH]]
 <​code>​ <​code>​
 PS C:​\Users\Administrator\nodes>​ $Env:PATH PS C:​\Users\Administrator\nodes>​ $Env:PATH
 ...;​C:​\Program Files\Oracle\VirtualBox;​... ...;​C:​\Program Files\Oracle\VirtualBox;​...
  
-PS C:​\Users\Administrator\nodes> ​mkdir terraform.d\plugins\registry.terraform.io\terra-farm\virtualbox\0.2.2-alpha.1\windows_amd64\+PS C:​\Users\Administrator\nodes> ​$env:​TF_LOG="​DEBUG"​
  
-PS C:​\Users\Administrator\nodes> ​$env:​TF_LOG="​DEBUG"​ +PS C:​\Users\Administrator\nodes> ​notepad providers.tf 
-</​code>​ +</​code><​code>​
-<​code>​+
 terraform { terraform {
   required_providers {   required_providers {
Line 401: Line 402:
 provider "​virtualbox"​ { provider "​virtualbox"​ {
 } }
 +</​code><​code>​ 
 +PS C:​\Users\Administrator\nodes>​ mkdir terraform.d\plugins\registry.terraform.io\terra-farm\virtualbox\0.2.2-alpha.1\windows_amd64\ 
 +</​code>​ 
 +  * https://​github.com/​terra-farm/​terraform-provider-virtualbox/​releases/​download/​v0.2.2-alpha.1/​terraform-provider-virtualbox_0.2.2-alpha.1_windows_amd64.zip 
 +  * [[#​Управление проектом]] 
 +<​code>​ 
 +PS C:​\Users\Administrator\nodes>​ notepad main.tf 
 +</​code><​code>​
 resource "​virtualbox_vm"​ "​node"​ { resource "​virtualbox_vm"​ "​node"​ {
   count     = 3   count     = 3
Line 442: Line 450:
   }   }
 } }
 +</​code><​code>​ 
 +PS C:​\Users\Administrator\nodes>​ notepad outputs.tf 
 +</​code><​code>​
 #output "​IPAddr"​ { #output "​IPAddr"​ {
 #  value = element(virtualbox_vm.node.*.network_adapter.0.ipv4_address,​ 1) #  value = element(virtualbox_vm.node.*.network_adapter.0.ipv4_address,​ 1)
Line 449: Line 459:
 #  value = element(virtualbox_vm.node.*.network_adapter.0.ipv4_address,​ 2) #  value = element(virtualbox_vm.node.*.network_adapter.0.ipv4_address,​ 2)
 #} #}
 +output "​node_ips"​ {
 +  value       = [for vm in virtualbox_vm.node : vm.network_adapter.0.ipv4_address]
 +  description = "IP for VM"
 +}
 </​code>​ </​code>​
 +  * [[#​Управление проектом]]
 +<​code>​
 +PS C:​\Users\Administrator\nodes>​ start notepad++ pre_network.sh
 +</​code>​
 +  * Правка->​Формат Конца Строк->​ Преобразовать в Unix (LF)
 <​code>​ <​code>​
 #!/bin/bash #!/bin/bash
  
-N=$1 +#!!! CHANGE IT !!!
 X=13 X=13
 +
 +N=$1
  
 echo '​vagrant:​strongpassword'​ | sudo /​usr/​sbin/​chpasswd echo '​vagrant:​strongpassword'​ | sudo /​usr/​sbin/​chpasswd
Line 490: Line 510:
 sudo shutdown -r +1 sudo shutdown -r +1
 </​code>​ </​code>​
 +
 +  * [[#​Управление проектом]]
 ===== Провайдеры Selectel и OpenStack ===== ===== Провайдеры Selectel и OpenStack =====
  
технология_terraform.1790479884.txt.gz · Last modified: 2026/09/27 06:31 by val