De documentatie van dit product is waar mogelijk geschreven met inclusief taalgebruik. Inclusief taalgebruik wordt in deze documentatie gedefinieerd als taal die geen discriminatie op basis van leeftijd, handicap, gender, etniciteit, seksuele oriëntatie, sociaaleconomische status of combinaties hiervan weerspiegelt. In deze documentatie kunnen uitzonderingen voorkomen vanwege bewoordingen die in de gebruikersinterfaces van de productsoftware zijn gecodeerd, die op het taalgebruik in de RFP-documentatie zijn gebaseerd of die worden gebruikt in een product van een externe partij waarnaar wordt verwezen. Lees meer over hoe Cisco gebruikmaakt van inclusief taalgebruik.
Cisco heeft dit document vertaald via een combinatie van machine- en menselijke technologie om onze gebruikers wereldwijd ondersteuningscontent te bieden in hun eigen taal. Houd er rekening mee dat zelfs de beste machinevertaling niet net zo nauwkeurig is als die van een professionele vertaler. Cisco Systems, Inc. is niet aansprakelijk voor de nauwkeurigheid van deze vertalingen en raadt aan altijd het oorspronkelijke Engelstalige document (link) te raadplegen.
In dit document worden de stappen beschreven die nodig zijn om een Windows Virtual Machine (VM) te maken en uit te voeren op de module Connected Grid Module (CGM) - System Server (SRV).
Cisco raadt kennis van de volgende onderwerpen aan:
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Wanneer u IOx-toepassingen of VM's op het CGR1000-platform wilt uitvoeren, kunt u de CGM-SRV-rekenmodule gebruiken. De CGM-SRV module is eigenlijk een kleine server die een multi-core x86 CPU, geheugen en opslag bevat. Zowel de CGR1120 als de CGR1240 kunnen een van deze modules hebben om IOx-mogelijkheden toe te voegen.
Op het moment van schrijven zijn er twee soorten beschikbaar:
| Stock Keep Unit (SKU) | Solid State-schijven (SSD) | RAM | CPU |
| CGM-SRV-64 | 64 GB (50 GB bruikbaar) | 4 GB | 4-core 800 MHz |
| CGM-SRV-128 | 128GB (100GB bruikbaar) | 4 GB | 4-core 800 MHz |
Elke module heeft ook twee USB-poorten voor opslag en een eigen externe gigabit Ethernet-interface.
Net als bij elk ander IOx-apparaat kan de module verschillende soorten IOx-toepassingen hosten, maar vanwege de grotere capaciteit van de CGM-SRV-module kan deze ook een volledig geconfigureerde Windows- of standaard Linux-distro (bijvoorbeeld Ubuntu of CentOS) uitvoeren.
Om een Windows-VM op de CGM-SRV-module te implementeren, moet u eerst een afbeelding in de QEMU QCOW-indeling maken die de Windows-installatie bevat. Een manier om zo'n afbeelding te maken is met KVM en virsh op een Linux-machine.
De stappen die verder worden genoemd, hebben helemaal geen betrekking op de CGR1xxx of CGM-SRV, maar zijn slechts vereiste stappen om een basisimage van Windows 7 VM QCOW te maken dat u in de volgende stap naar de CGM-SRV kunt implementeren.
Voor deze handleiding kunt u beginnen met een nieuw geïnstalleerde CentOS7 minimale installatie. De stappen voor andere Linux-distributies moeten vergelijkbaar zijn, maar kunnen enigszins verschillen.
Stap 1. Het eerste wat u moet doen, is controleren of de hostmachine VM-extensies ondersteunt. Op het x86-platform zijn dat AMD-V of Intel's VT-X. De meeste, zo niet alle, moderne x86-CPU's ondersteunen deze extensies. Zelfs wanneer u een VM uitvoert, bieden de meeste hypervisors de mogelijkheid om deze extensies door te geven / te emuleren.
Om te controleren of de geïnstalleerde CPU deze extensies ondersteunt, moet u controleren of de vmx (voor VT-X) of svm (voor AMD-V) vlag bestaat in de cpuinfo-uitgang.
[root@cen7 ~]# egrep -c '(vmx|svm)' /proc/cpuinfo 2
Als de uitvoer van deze opdracht 0 is, betekent dit dat geen CPU gevonden de VM-extensies ondersteunt. In dat geval kunt u controleren of deze extensies zijn ingeschakeld in uw BIOS of hypervisor wanneer u een VM gebruikt om deze machine uit te voeren.
Stap 2. De volgende stap is het maken van een brug om een netwerk voor de VM te bieden dat u op KMV kunt uitvoeren.
Ten eerste moet u IP-forwards in de kernel inschakelen:
[root@cen7 ~]# echo "net.ipv4.ip_forward = 1"|sudo tee /etc/sysctl.d/99-ipforward.conf net.ipv4.ip_forward = 1 [root@cen7 ~]# sysctl -p /etc/sysctl.d/99-ipforward.conf net.ipv4.ip_forward = 1
Om de bridge te maken, moet de IP-configuratie van de echte interface naar de bridge zelf gaan, omdat dit de interface is die eigenaar is van het IP-adres.
Nadat u een standaardinstallatie hebt voltooid, bevindt de netwerkconfiguratie zich in /etc/sysconfig/network-scripts:
[root@cen7 ~]# ls -1 /etc/sysconfig/network-scripts/ifcfg-* /etc/sysconfig/network-scripts/ifcfg-eno16777736 /etc/sysconfig/network-scripts/ifcfg-lo
Stap 3. Zoals u kunt zien, is er momenteel één interface (naast de loopback-interface), genaamd eno167777736. U moet de IP-gerelateerde configuratie verplaatsen naar een bridge-interface die u virbr0 kunt noemen:
[root@cen7 ~]# vi /etc/sysconfig/network-scripts/ifcfg-virbr0 [root@cen7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-virbr0 DEVICE=virbr0 TYPE=BRIDGE ONBOOT=yes BOOTPROTO=static IPADDR=172.16.245.162 NETMASK=255.255.255.0 GATEWAY=172.16.245.2 DNS1=8.8.8.8
Stap 4. Daarna moet u de IP-configuratie opschonen vanaf de echte interface en deze aansluiten op de virbr0-brug:
[root@cen7 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 [root@cen7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777736 UUID=46f0f247-e164-40cc-866b-9133458d9df8 DEVICE=eno16777736 ONBOOT=yes BRIDGE=virbr0 HWADDR=00:0c:29:ce:96:38
Stap 5. Zodra de netwerkconfiguratie is voltooid, kunt u doorgaan met het installeren van KVM:
[root@cen7 ~]# sudo yum install kvm virt-manager libvirt virt-install qemu-kvm xauth dejavu-lgc-sans-fonts -y ... Complete!
Stap 6. Nadat de installatie is voltooid, kunt u dit systeem het beste opnieuw opstarten om de nieuw geïnstalleerde modules en netwerkconfiguratie toe te passen:
[root@cen7 ~]# init 6
Stap 7. Nadat de reboot is voltooid, moet u toegang hebben tot het systeem op het (dezelfde) IP-adres dat is geconfigureerd op de bridge-interface. Controleer of de KVM-kernelmodule is geladen:
root@cen7 ~]# lsmod|grep kvm kvm_intel 200704 0 kvm 589824 1 kvm_intel irqbypass 16384 1 kvm
Stap 8. Als dit er goed uitziet, kunt u proberen verbinding te maken met virsh:
[root@cen7 ~]# sudo virsh -c qemu:///system list Id Name State ----------------------------------------------------
Stap 9. Een laatste stap is om poort 5900 op de firewall op deze machine te openen voor VNC-toegang tot de Windows-installatie:
[root@cen7 ~]# firewall-cmd --zone=public --add-port=5900/tcp --permanent success [root@cen7 ~]# firewall-cmd --reload success
Nu u een systeem hebt dat werkt met KVM-installatie, kunt u een nieuwe VM op KVM starten en via de installatiedialoogvensters van Windows uitvoeren.
Stap 1. Kopieer de ISO van de Windows 7-installatie naar uw VM (of maak deze toegankelijk via het netwerk):
[root@cen7 ~]# scp jedepuyd@172.16.X.X:/home/jedepuyd/win7install.iso /var jedepuyd@172.16.X.X's password: win7install.iso 100% 4546MB 62.1MB/s 01:13
Stap 2. Maak een nieuwe KVM en laat deze opstarten vanaf de ISO van Windows 7:
root@cen7 ~]# virt-install --connect qemu:///system -n win7 -r 1024 --vcpus=2 --disk path=/var/lib/libvirt/images/win7.img,size=9 --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type windows --os-variant win7 --accelerate --network=bridge:virbr0 --hvm --cdrom /var/win7install.iso Starting install... Allocating win7.img | 9.0 GB 00:00:00 Creating domain... | 0 B 00:00:00 Domain installation still in progress. You can reconnect to the console to complete the installation process.
Stap 3. Zodra de VM is gestart, kunt u verbinding maken met het gebruik van de VNC-viewer met het IP-adres van het hostsysteem op poort 5900 en de standaard Windows-installatie voltooien zoals weergegeven in de afbeelding:

Als Windows opnieuw opstart op het moment van de installatie, kan het nodig zijn om de VM opnieuw op te starten met virsh als dit niet automatisch gebeurt:
[root@cen7 ~]# virsh start win7 Domain win7 started
Stap 4. Als de installatie is voltooid, sluit u de VM af. U hebt nu een QCOW-image van deze installatie in het pad dat u hebt opgegeven wanneer u de VM maakt: /var/lib/libvirt/images/win7.img. Dit type image kan op de CGM-SRV worden geïmplementeerd om Windows uit te voeren.
Nu u het juiste type afbeelding hebt om op de CGM-SRV te draaien, kunt u beginnen met het implementeren ervan.
Stap 1. Stel een profiel voor ioxclient in dat overeenkomt met uw configuratie:
[root@cen7 ~]# ./ioxclient profiles create Enter a name for this profile : CGR1120_20 Your IOx platform's IP address[127.0.0.1] : 10.X.X.X.X Your IOx platform's port number[8443] : Authorized user name[root] : admin Password for admin : Local repository path on IOx platform[/software/downloads]: URL Scheme (http/https) [https]: API Prefix[/iox/api/v2/hosting/]: Your IOx platform's SSH Port[2222]: Your RSA key, for signing packages, in PEM format[]: Your x.509 certificate in PEM format[]: Activating Profile CGR1120_20 Saving current configuration
In dit voorbeeld komt 10.X.X.X overeen met de uitgaande interface op de CGR1000 waarop u Network Address Translation (NAT) hebt geconfigureerd om door te sturen naar poort 8443 op de CGM-SRV.
Stap 2. Nu ioxclient is geconfigureerd, laten we uw eerder gemaakte afbeelding hernoemen naar vm.img om het een beetje te vereenvoudigen en te kopiëren met het gebruik van Secure Copy (SCP) met ioxclient naar CGM-SRV.
Zet het schijfbeeld optioneel om in de QCOW2-indeling, zoals de CGM-SRV verwacht. Nieuwere versies van virt-manager lijken standaard de schijfafbeeldingen in de QCOW3-indeling te maken.
U kunt de afbeelding eenvoudig converteren met behulp van deze opdracht:
[root@cen7 ~]# qemu-img convert -f qcow2 -O qcow2 /var/lib/libvirt/images/win7.img /var/lib/libvirt/images/win7.img
Zodra u zeker weet dat de afbeelding in de juiste indeling is, gaat u verder met de naam en kopie:
[root@cen7 ~]# mv /var/lib/libvirt/images/win7.img /root/vm.img [root@cen7 ~]# ./ioxclient platform scp /root/vm.img Currently active profile : CGR1120_20 Command Name: plt-scp Saving current configuration Downloaded scp keys to pscp.pem Running command : [scp -P 2222 -r -i pscp.pem /root/vm.img scpuser@10.50.215.246:/]
Deze overdracht kan een tijdje duren, de overdrachtssnelheden van ongeveer 3-4 MB / s naar de CGM-SRV via Cisco IOS®. Het bestand wordt gekopieerd naar /mnt/data/vm/vm.img op de CGM-SRV-module.
Stap 3. Terwijl de overdracht wordt uitgevoerd (of voltooid), kunt u het bestand package.yaml maken. In dit bestand wordt aan IOx beschreven wat u precies wilt implementeren en hoe u het kunt verpakken.
[root@cen7 ~]# vi package.yaml [root@cen7 ~]# cat package.yaml descriptor-schema-version: 2.2 info: author-link: http://www.cisco.com/ author-name: Jens Depuydt description: Windows 7 VM for CSR-SRV name: win7 version: 1.0 app: type: vm cpuarch: x86_64 resources: profile: custom cpu: 600 disk: 10 memory: 3072 network: - interface-name: eth0 - interface-name: eth1 graphics: vnc: true startup: ostype: windows qemu-guest-agent: false disks: - target-dev: hda file: file://vm.img
Zoals u kunt zien in dit package.yaml, verwijst u naar file://vm.img dat overeenkomt met de echte locatie van mnt/data/vm/vm.img op de CGM-SRV-module.
Stap 4. De volgende stap is om te verpakken met het gebruik van ioxclient:
[root@cen7 ~]# ./ioxclient pkg . Currently active profile : default Command Name: package No rsa key and/or certificate files to sign the package Checking if package descriptor file is present.. Validating descriptor file /root/package.yaml with package schema definitions Parsing descriptor file.. Found schema version 2.2 Loading schema file for version 2.2 Validating package descriptor file.. File /root/package.yaml is valid under schema version 2.2 Created Staging directory at : /var/folders/sp/f9qn2fsn0d5fkj7szps6qvvr0000gn/T/638513626 Copying contents to staging directory Checking for application runtime type Couldn't detect application runtime type Creating an inner envelope for application artifacts Excluding .DS_Store Generated /var/folders/sp/f9qn2fsn0d5fkj7szps6qvvr0000gn/T/638513626/artifacts.tar.gz Calculating SHA1 checksum for package contents.. Package MetaData file was not found at /private/var/folders/sp/f9qn2fsn0d5fkj7szps6qvvr0000gn/T/638513626/.package.metadata Wrote package metadata file : /private/var/folders/sp/f9qn2fsn0d5fkj7szps6qvvr0000gn/T/638513626/.package.metadata Root Directory : /private/var/folders/sp/f9qn2fsn0d5fkj7szps6qvvr0000gn/T/638513626 Output file: /var/folders/sp/f9qn2fsn0d5fkj7szps6qvvr0000gn/T/559089521 Path: .package.metadata SHA1 : 262f763740c182f95358be84514a76ac11e37012 Path: artifacts.tar.gz SHA1 : 3d89ccd35fe5318dd83a249a26cb8140d98d15bb Path: package.yaml SHA1 : aa42f949b707df07a83a17344e488c44eb585561 Generated package manifest at package.mf Generating IOx Package.. Package generated at /root/package.tar
Stap 5. Nadat u het pakket hebt gemaakt, kunt u het installeren op onze CGM-SRV. De IOx-toepassing/VM wordt in dit voorbeeld win7 genoemd:
[root@cen7 ~]# ./ioxclient app install win7 package.tar Currently active profile : default Command Name: application-install Saving current configuration Installation Successful. App is available at : https://10.X.X.X:8443/iox/api/v2/hosting/apps/win7 Successfully deployed
Stap 6. Voordat u de win7 IOx VM kunt activeren, moet u een JSON-payload-bestand maken dat het VNC-wachtwoord voor deze VM instelt:
[root@cen7 ~]# vi vnc.json
[root@cen7 ~]# cat vnc.json
{
"resources": {
"graphics": {"vnc-password": "password"}
}
}
Stap 7. Met behulp van de vnc.json payload kunt u de win7 IOx VM activeren:
[root@cen7 ~]# ./ioxclient app activate win7 --payload vnc.json Currently active profile : default Command Name: application-activate Payload file : vnc.json. Will pass it as application/json in request body.. App win7 is Activated
Stap 8. De laatste stap met ioxclient is het starten van de VM:
[root@cen7 ~]# ./ioxclient app start win7 Currently active profile : default Command Name: application-start App win7 is Started
Op dit punt draait de Windows VM op de CGM-SRV en kunt u beginnen met het gebruik ervan.
Om toegang te krijgen tot de Windows-machineconsole, kunt u VNC-viewer gebruiken op de uitgaande interface op de CGR1000 en poort 5900, zoals weergegeven in de afbeelding:

Vanuit een netwerkperspectief hebt u ervoor gekozen eth0 en eth1 aan de win7 IOx VM te geven met het gebruik van het bestand package.yaml zoals weergegeven in de afbeelding:

Zoals u kunt zien, kregen deze interfaces een IP van de DHCP-server die op Cisco IOS draait en zonder verdere configuratie kan worden gebruikt.
Gebruik deze sectie om te controleren of uw configuratie goed werkt.
Om te controleren of de VM wordt uitgevoerd:
[root@cen7 ~]# ./ioxclient app list Currently active profile : CGR1120_20 Command Name: application-list Saving current configuration List of installed App : 1. win7 ---> RUNNING
U kunt ook de status van Lokaal beheer controleren, zoals in de afbeelding wordt weergegeven:

Deze sectie bevat informatie die u kunt gebruiken om problemen met de configuratie te troubleshooten.
Om problemen met de implementatie op te lossen, controleert u de uitvoer van ioxclient of /var/log/caf.log op het CGM-SRV-hostbesturingssysteem.
Zorg ervoor dat NAT correct is geconfigureerd voor toegang tot alle bronnen (Cisco Application-Hosting Framework (CAF), Secure Shell (SSH), VNC).
Feedback