Devuan की qcow2 इमेज बनाकर Terraform से वर्चुअल वातावरण शुरू करना, बोनस के साथ

8 min

language: ja bn en es hi pt ru zh-cn zh-tw

नमस्ते, मैं अक्षम हूँ। Terraform पर ज़्यादा लेख नहीं थे, इसलिए मैंने इसे लिखने का फैसला किया।

पृष्ठभूमि

मैंने Terraform का नाम बहुत सुना था, लेकिन मुझे इसका ज़्यादा अंदाज़ा नहीं था, इसलिए मैंने इसे आज़माने का सोचा।
इसके अलावा, चूंकि qemu की वर्चुअल डिस्क इमेज, यानी qcow2 इमेज का भी उपयोग किया जा सकता है, तो मैंने सोचा कि यह मेरे अपने वातावरण में भी काम कर सकता है।
अगर यह हो जाए, तो इसे मेरे वर्तमान प्रोडक्शन सर्वर के लिए एक परीक्षण वातावरण के रूप में आसानी से इस्तेमाल किया जा सकता है। मेरा होम सर्वर, जिसे मैंने हल्के-फुल्के अंदाज़ में शुरू किया था, अब काफी हद तक चालू हो गया है, इसलिए मैं जितना हो सके उतना अपटाइम बढ़ाना चाहता हूँ, और वर्चुअल वातावरण को आसानी से डिप्लॉय कर पाना बहुत मददगार होगा।

किसी न किसी तरह, वर्चुअल वातावरण वर्चुअल वातावरण ही हैं, और मुझे लगता था कि वे परेशानी भरे हैं... और मैं उन्हें टालता रहा, लेकिन Terraform के कारण, मुझे लगा कि यह धारणा बदल सकती है, इसलिए मैं इसे कर रहा हूँ।
परेशानी यह है कि मुझे virsh और qemu के सभी विकल्पों को याद रखना पड़ता है, और qemu को शुरू करने के विकल्प भी परेशानी भरे हैं। मैं इसे Terraform से हल करना चाहता हूँ।

qcow2 इमेज बनाना

सबसे पहले, हम Devuan की qcow2 इमेज बनाएंगे।

wget https://files.devuan.org/devuan_daedalus/installer-iso/devuan_daedalus_5.0.1_i386_netinstall.iso
qemu-img create -f qcow2 devuan.qcow2 10G
 sudo chown libvirt-qemu:libvirt-qemu devuan.qcow2 devuan_daedalus_5.0.1_i386_netinstall.iso
sudo chmod 644 devuan.qcow2 devuan_daedalus_5.0.1_i386_netinstall.iso
sudo virt-install --name devuan --ram 1024 --disk path=./devuan.qcow2,size=10 --vcpus 1 --os-type linux --os-variant debian10 --network bridge=virbr0 --graphics vnc --console pty,target_type=serial --cdrom devuan_daedalus_5.0.1_i386_netinstall.iso

इससे इंस्टॉलेशन प्रगति पर होने का संकेत मिलेगा, इसलिए कनेक्ट करें और इंस्टॉलेशन पूरा करें।

sudo virt-viewer --connect qemu:///system devuan

Image
Image

यह थोड़ा जटिल है, लेकिन यह स्क्रीन ThinkPad X1 - VNC (जिस पर मैं काम कर रहा हूँ) → मेरे कस्टम-बिल्ट पीसी पर ArtixLinux - virt-viewer → वर्चुअल वातावरण पर Devuan की स्क्रीन है।
यदि आप इंस्टॉलेशन के बाद किसी इमेज को संपादित करना चाहते हैं,

  
sudo qemu-system-x86_64   -m 2G   -smp 2   -drive file=devuan.qcow2,format=qcow2   -net nic -net user   -vnc `0   -enable-kvm  

से VNC पोर्ट 5900 पर कनेक्ट करें।

  
vncviewer 192.168.10.100:5900  

अब qcow2 इमेज तैयार है।

Terraform कॉन्फ़िगरेशन और स्टार्टअप

मैंने vim main.tf में निम्नलिखित लिखा है।

  terraform {
  required_providers {
    libvirt = {
      source  = "dmacvicar/libvirt"
      version = "~> 0.7.1"
    }
  }
}

provider "libvirt" {
  uri = "qemu:///system"
}

resource "libvirt_volume" "devuan_qcow2" {
  name   = "devuan.qcow2"
  source = "./devuan.qcow2"
  format = "qcow2"
}

resource "libvirt_domain" "devuan_vm" {
  name   = "devuan-vm-new"
  memory = "1024"
  vcpu   = 2

  network_interface {
    network_name = "default"
  }

  disk {
    volume_id = libvirt_volume.devuan_qcow2.id
  }

  console {
    type        = "pty"
    target_port = "0"
    target_type = "serial"
  }

  graphics {
    type        = "vnc"
    listen_type = "address"
  }
}

अब इसे शुरू करते हैं।

  
terraform init  
terraform plan  
terraform apply  

और एक बार यह शुरू हो जाए, तो वर्चुअल वातावरण में लॉग इन करें। IP की पुष्टि करें।

  
$ sudo virsh domifaddr devuan-vm-new  
 नाम     MAC पता     प्रोटोकॉल     पता  
-------------------------------------------------------------------------------  
 vnet13     52`54`00`0a`e9`bc    ipv4         192.168.122.216/24  

पुष्टि हो गई। तो, लॉग इन करते हैं।

  
$ ssh -l taro 192.168.122.216  
The authenticity of host '192.168.122.216 (192.168.122.216)' can't be established.  
ED25519 key fingerprint is SHA256`VAjob/o7gQXvmeNUodajSfdBky0eXd0RTwomP1wHtWk.  
This host key is known by the following other names/addresses`  
    ~/.ssh/known_hosts`5` 192.168.122.83  
    ~/.ssh/known_hosts`6` 192.168.122.163  
    ~/.ssh/known_hosts`7` 192.168.122.162  
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes  
Warning` Permanently added '192.168.122.216' (ED25519) to the list of known hosts.  
taro@192.168.122.216's password`   
Linux devuan 6.1.0-25-686 #1 SMP PREEMPT_DYNAMIC Debian 6.1.106-3 (2024-08-26) i686  
  
The programs included with the Devuan GNU/Linux system are free software;  
the exact distribution terms for each program are described in the  
individual files in /usr/share/doc/*/copyright.  
  
Devuan GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent  
permitted by applicable law.  
taro@devuan`~$   

ठीक है! मैं बाद में कई इंस्टेंस बनाने की कोशिश करूँगा।
और फिर मैं इंस्टेंस को नष्ट कर दूँगा।

  
terraform destroy  

बोनस: qcow2 इमेज का पुनर्वितरण

Devuan की आधिकारिक qcow2 इमेज का नवीनतम संस्करण उपलब्ध नहीं था, इसलिए मैंने इसे इस बार बनाया है, और मैं इसे नीचे होस्ट और पुनर्वितरित कर रहा हूँ।
यह सभी का पसंदीदा बोनस है।
https://files.soulminingrig.com/
कृपया नीचे लॉग इन करें।
यूज़र : taro
पासवर्ड : toor
ध्यान दें कि पासवर्ड Devuan के आधिकारिक डिफ़ॉल्ट root पासवर्ड के समान है।

तो, फिर मिलेंगे। धन्यवाद।
वैसे, मैंने गलती से यह लेख उड़ा दिया था और इसे दूसरी बार लिख रहा हूँ। तेहेपेरो।

Related Posts