Network 생성 페이지.png

#WEB페이지 내의 HTML

<script>
function check() {
    if (document.getElementById("netname").value == "") {
            alert("네트워크명을 입력해주세요.");
            return false;
}
    else{
    document.createnet.submit();
    alert("입력이 완료되었습니다. \\nPrivate Subnet 생성까지 약 1분 소요 됩니다");
    }
}
function myreset(){
    document.createnet.reset();

}
</script>

<form action="wp-net.php" name="createnet" method="post">
<table class="is-style-stripes">
  <tbody><tr>
    <th>NETWORK_NAME</th>
    <td><input type="text" name="netname" id="netname"></td>
  </tr>
  <tr>
    <th>Private subnet</th>
    <td><select name="ip" id="ip">
    <option value="101">192.168.101.0/24</option>
    <option value="102">192.168.102.0/24</option>
    <option value="103">192.168.103.0/24</option>
    <option value="104">192.168.104.0/24</option>
    <option value="105">192.168.105.0/24</option>
    </select></td>
  </tr>

</tbody></table>
<input type="button" value="네트워크 생성" onclick="check()">
<input type="button" value="초기화" onclick="myreset()"> 
</form>

#네트워크 생성 클릭시 동작하는 php 파일

#/var/www/html/wordpress/wp-vm.php

<?php
$netname = $_POST['netname'];
$ip = $_POST['ip'];
$text = "cp /etc/libvirt/qemu/networks/original.xml  /etc/libvirt/qemu/networks/$netname.xml";
$changename = "sed -i s/netname/$netname/g /etc/libvirt/qemu/networks/$netname.xml";
$chanegeip = "sed -i s/ipc/$ip/g /etc/libvirt/qemu/networks/$netname.xml";

system("sshpass -p test123 ssh -T -o StrictHostKeyChecking=no [email protected] $text");
system("sshpass -p test123 ssh -T -o StrictHostKeyChecking=no [email protected] $changename");
system("sshpass -p test123 ssh -T -o StrictHostKeyChecking=no [email protected] $chanegeip");

$netstart = "virsh net-create /etc/libvirt/qemu/networks/$netname.xml";

system("sshpass -p test123 ssh -T -o StrictHostKeyChecking=no [email protected] $netstart");

header('Location: ' . $_SERVER['HTTP_REFERER']);
?>

#네트워크 생성을 위한 기본 파일

#/etc/libvirt/qemu/networks/original.xml

<network>
  <name>netname</name>
  <bridge name='virbr-netname' stp='on' delay='0'/>
  <domain name='netname'/>
  <ip address='192.168.ipc.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.ipc.128' end='192.168.ipc.254'/>
    </dhcp>
  </ip>
</network>