Περιγράφει τον τρόπο εγκατάστασης και ενεργοποίησης του εικονικού Edge στο KVM με χρήση ενός αρχείου διαμόρφωσης cloud-init.
- Χρησιμοποιήστε το gunzip για να εξαγάγετε το αρχείο qcow2 στη θέση του ειδώλου (για παράδειγμα, /var/lib/libvirt/images).
- Δημιουργήστε τις ομάδες δικτύου που πρόκειται να χρησιμοποιήσετε για τη συσκευή, χρησιμοποιώντας SR-IOV και OpenVswitch.
Χρήση SR-IOV
Ακολουθεί ένα δείγμα προτύπου διασύνδεσης δικτύου ειδικά για κάρτες Intel X710/XL710 NIC που χρησιμοποιούν SR-IOV.
<interface type='hostdev' managed='yes'> <mac address='52:54:00:79:19:3d'/> <driver name='vfio'/> <source> <address type='pci' domain='0x0000' bus='0x83' slot='0x0a' function='0x0'/> </source> <model type='virtio'/> </interface>
Χρήση OpenVSwitch
<network> <name>passthrough</name> <model type='virtio'/> <forward mode="bridge"/> <bridge name="passthrough"/> <virtualport type='openvswitch'> </virtualport> <vlan trunk='yes'> <tag id='33' nativeMode='untagged'/> <tag id='200'/> <tag id='201'/> <tag id='202'/> </vlan> </network> Bridge <network> <name>passthrough</name> <model type='virtio'/> <forward mode="bridge"/> </network> <domain type='kvm'> <name>vedge1</name> <memory unit='KiB'>4194304</memory> <currentMemory unit='KiB'>4194304</currentMemory> <vcpu placement='static'>2</vcpu> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type> <boot dev='hd'/> </os> <features> <acpi/> <apic/> <pae/> </features> <!-- Set the CPU mode to host model to leverage all the available features on the host CPU --> <cpu mode='host-model'> <model fallback='allow'/> </cpu> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/kvm-spice</emulator> <!-- Below is the location of the qcow2 disk image --> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/var/lib/libvirt/images/edge-VC_KVM_GUEST-x86_64-2.3.0-18- R23-20161114-GA-updatable-ext4.qcow2'/> <target dev='sda' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <!-- If using cloud-init to boot up virtual edge, attach the 2nd disk as CD-ROM --> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/home/vcadmin/cloud-init/vedge1/seed.iso'/> <target dev='sdb' bus='sata'/> <readonly/> <address type='drive' controller='1' bus='0' target='0' unit='0'/> </disk> <controller type='usb' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'/> <controller type='sata' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </controller> <controller type='ide' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <!-- The first two interfaces are for the default L2 interfaces, NOTE VLAN support just for SR-IOV and OpenvSwitch --> < interfacetype='network'> < modeltype='virtio'/> < sourcenetwork='LAN1'/> < vlan>< tagid='#hole2_vlan#'/></ vlan> < aliasname=LAN1/> < addresstype='pci' domain='0x0000' bus='0x00' slot='0x12' function='0x0'/> </ interface> < interfacetype='network'> < modeltype='virtio'/> < sourcenetwork=LAN2/> < vlan>< tagid='#LAN2_VLAN#'/></ vlan> < aliasname='hostdev1'/> < addresstype='pci' domain='0x0000' bus=' 0x00' slot='0x13' function='0x0'/> </ interface> <!-- The next two interfaces are for the default L3 interfaces. Note that additional 6 routed interfaces are supported for a combination of 8 interfaces total --> < interfacetype='network'> < modeltype='virtio'/> < sourcenetwork=WAN1/> < vlan>< tagid='#hole2_vlan#'/></ vlan> < aliasname=LAN1/> < addresstype='pci' domain='0x0000' bus='0x00' slot='0x12' function='0x0'/> </ interface> < interfacetype='network'> < modeltype='virtio'/> < source network=LAN2/> < vlan>< tag id='#LAN2_VLAN#'/></ vlan> < aliasname='hostdev1'/> < addresstype='pci' domain='0x0000' bus='0x00' slot='0x13' function='0x0'/> </ interface> <serial type='pty'> <target port='0'/> </serial> <console type='pty'> <target type='serial' port='0'/> </console> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <graphics type='vnc' port='-1' autoport='yes' listen='127.0.0.1'> <listen type='address' address='127.0.0.1'/> </graphics> <sound model='ich6'> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </sound> <video> <model type='cirrus' vram='9216' heads='1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <memballoon model='virtio'> <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> </memballoon> </devices> </domain>
- Αποθηκεύστε το αρχείο XML τομέα που ορίζει την εικονική μηχανή (για παράδειγμα, vedge1.xml που δημιουργήθηκε στο βήμα 2).
- Εκκινήστε την εικονική μηχανή εκτελώντας τα ακόλουθα βήματα:
- Δημιουργήστε την εικονική μηχανή.
virsh define vedge1.xml
- Ξεκινήστε την εικονική μηχανή.
virsh start vedge1
Σημείωση:vedge1
είναι το όνομα της εικονικής μηχανής που ορίζεται στο στοιχείο<name>
του αρχείου XML τομέα. Αντικαταστήστε τοvedge1
με το όνομα που καθορίζετε στο στοιχείο<name>
. - Δημιουργήστε την εικονική μηχανή.
- Εάν χρησιμοποιείτε τη λειτουργία SR-IOV, μετά την εκκίνηση της εικονικής μηχανής, ορίστε τα εξής στις εικονικές λειτουργίες (VF) που χρησιμοποιούνται:
- Απενεργοποιήστε τον έλεγχο πλαστογράφησης.
ip link set eth1 vf 0 spoofchk off
- Ενεργοποιήστε τη λειτουργία αξιοπιστίας.
ip link set dev eth1 vf 0 trust on
- Ορίστε το VLAN, εάν απαιτείται.
ip link set eth1 vf 0 vlan 3500
Σημείωση: Το βήμα διαμόρφωσης των εικονικών λειτουργιών δεν ισχύει για τη λειτουργία OpenVSwitch (OVS). - Απενεργοποιήστε τον έλεγχο πλαστογράφησης.
- Κονσόλα στην εικονική μηχανή.
virsh list Id Name State ---------------------------------------------------- 25 test_vcg running velocloud@KVMperf2$ virsh console 25 Connected to domain test_vcg Escape character is ^]
Το Cloud-init περιλαμβάνει ήδη το κλειδί ενεργοποίησης, το οποίο δημιουργήθηκε κατά τη δημιουργία ενός νέου εικονικού Edge στο SD-WAN Orchestrator. Το εικονικό Edge έχει διαμορφωθεί με τις ρυθμίσεις διαμόρφωσης του αρχείου Cloud-init. Αυτό θα διαμορφώσει τις διασυνδέσεις καθώς ενεργοποιείται το εικονικό Edge. Μόλις συνδεθεί το εικονικό Edge, θα ενεργοποιηθεί με το SD-WAN Orchestrator χρησιμοποιώντας το κλειδί ενεργοποίησης. Η διεύθυνση IP του SD-WAN Orchestrator και το κλειδί ενεργοποίησης έχουν οριστεί στο αρχείο Cloud-init.