In this section:

This section describes how to install a DSC (Diameter Signaling Controller) Kernel-based Virtual Machine (VM) on a Commercial-off-the-Shelf (COTS) server to function as the DSC Software Edition (SWe).

Configuration File and Linux Values

The VM Configuration File

The VM Configuration file is used on each KVM host to instantiate the desired number DSC SWe VMs. This file is created from by the KVM Installer command (write_config). 

Note

 This procedure uses /dsc_swe_18_0_0_nb20190317_KVM.sh as an example installation file.

Value Definitions

Definitions for values that you will need to provide in the following procedures are as follows:

ValueDefinition
systemThe system name that you want to define for your system.
host

The host’s address that you want to install the VMs.

  • Provide value: “localhost” for the system to install on the local host.
  • Provide value: root@<host IP> for a specific host’s address.
vm-ids

The IDs of the VMs on this host (value: 1, or 1 2, or 1 2 3, or 1 2 3 4, or 3 4  …).

if-map

The mgt, ha, pkt interfaces that were created in Configuring the VM Environment and KVM Host procedure (mgt=mgt0, mgt=mgt1, ha0=ha0, pkt0=pkt0, pkt1=pkt1)

  •  If the deployment uses Open vSwitch bridges and not simple Linux bridges, the write-config argument --if-map should use --if-map <interface>=macvtap:<bridge name>... instead of --if-map <interface>=<bridge name>....  

mgt-ipThe IP networking of your system.
configthe "VM Configuration File" name that will save in the local directory.

Create the VM Configuration File

Use this procedure to create the VM configuration file.

Prerequisites
Start
  1. Log onto a KVM Host or a Linux workstation.
  2. Enter one of the following commands at the Linux prompt. Insert your system information between "<" and ">" in each example. 

    Example 1: 1 VM on 1st Host
    #./dsc_swe_18_0_0_nb20190317_KVM.sh write-config 
    --system <system name> 
    -- host localhost 
    --vm-ids 1 
    --if-map mgt=mgt0,ha0=ha0,pkt0=pkt0,pkt1=pkt1 
    --mgt-ip net=<mgt network IP/mgt netmask>,gw=<mgt gateway IP>,addrs=<mgt0 IP>,<mgt1 IP>,<mgt shared IP> 
    --config <system name>.conf
    Example 2: 1 VM on 2nd Host
    #./dsc_swe_18_0_0_nb20190317_KVM.sh write-config 
    --system <system name> 
    -- host localhost 
    --vm-ids 2 
    --if-map mgt=mgt1,ha0=ha0,pkt0=pkt0,pkt1=pkt1 
    --mgt-ip net=<mgt network IP/mgt netmask>,gw=<mgt gateway IP>,addrs=<mgt0 IP>,<mgt1 IP>,<mgt shared IP> 
    --config <system name>.conf
    Example 3: Add Extra Routing on VMs on 1st Host
    #./dsc_swe_18_0_0_nb20190317_KVM.sh write-config 
    --system <same system name as mgt/rtg VMs and include rtg VM IDs> 
    --host localhost 
    --vm-ids 3 
    --if-map mgt=mgt0,ha0=ha0,pkt0=pkt0,pkt1=pkt1 
    --config <same system name as mgt/rtg VMs>.conf
    Example 4: Add Extra Routing on VMs on 2nd Host
    #./dsc_swe_18_0_0_nb20190317_KVM.sh write-config 
    --system <same system name as mgt/rtg VMs and include rtg VM ID>
    --host localhost 
    --vm-ids 4 
    --if-map mgt=mgt0,ha0=ha0,pkt0=pkt0,pkt1=pkt1 
    --config <same system name as mgt/rtg VMs>.conf
    Example 5: 2 VMs on One Host
    #./dsc_swe_18_0_0_nb20190317_KVM.sh write-config 
    --system <system name> 
    --host localhost 
    --vm-ids 1 2 
    --if-map mgt=mgt0,ha0=ha0,pkt0=pkt0,pkt1=pkt1 
    --mgt-ip net=<mgt network IP/mgt netmask>,gw=<mgt gateway IP>,addrs=<mgt0 IP>,<mgt1 IP>,<mgt shared IP> 
    --config <system name>.conf

Install a VM(s) on a KVM Host Using the VM Configuration File

Use this procedure to install a VM or VMs on a KVM host. 

Prerequisites
Start
  1. Log onto a KVM Host or a Linux workstation.
  2. Enter the following command, where <system name>.conf is the same file that is created in Create the VM Configuration File, and <system name> is your defined system name.

    Example
    # ./dsc_swe_18_0_0_nb20190317_KVM.sh install --config <system name>.conf
    Tip

    You can also install the VM(s) on a KVM Host from the command line by entering

    # ./dsc_swe_18_0_0_nb20190317_KVM.sh install --system --vm-ids 1 2 --if-map mgt=br-mgt0,ha0=blank03,pkt0=br-pkt0,pkt1=br-pkt1


    Example Response
    DSC Self-Extraction Utility 18_0_0_nb20190317
    -----------------------------------------------------
    Verify archive integrity...
    Executing install script...
    DSC SWe KVM Host Interaction
    ----------------------------
    Verify requisite files in the archive...
    Processing hosts
    ----------------
    Connected to RedHatHost01  libvirt 12001 (lib 9004)
    VM Installation on KVM host
    ---------------------------
    Install <system name>-slot1 on host RedHatHost01.
    Install <system name>-slot2 on host RedHatHost01.
     
    Continue with install of all listed VMs? (y/n):
  3. Enter y and press ENTER.

    Example Response
    extracting QCOW2 dsc_swe_18_0_0_nb20190317.qcow2 to /tmp ...
    Installing VM <system name>-slot1 on host RedHatHost01
    --------------------------------------------------
    Checking for VM <system name>-slot1 on host RedHatHost01...
    libvir: QEMU error : Domain not found: no domain with matching name '<system name>-slot1'
    > issuing: ls /home/libvirt/images/<system name>-slot1.img
    > issuing: ls /home/libvirt/images/<system name>_configdrive.iso
    Process QCOW2 RedHatHost01 <system name>-slot1
    ------------------------------------------
       Convert to raw image...
    > issuing: qemu-img convert -O raw /tmp/dsc_swe_18_0_0_nb20190317.qcow2 /home/libvirt/images/<system name>-slot1.img
       Resize the raw image to 65G...
    > issuing: qemu-img resize /home/libvirt/images/<system name>-slot1.img +53G
     
    Generate VM Definition & Install RedHatHost01 <system name>-slot1
    -------------------------------------------------------------
       Generate QEMU XML definition
       Define VM
       VM defined with UUID 7c709a47-f8ab-7384-2df1-836230d434eb
       Set autostart (start VM on host boot).
       using temporary space /tmp/dscMNuJwA
    > issuing: genisoimage -V config-2 -graft-points -J -rock -o /tmp/dscMNuJwA/<system name>-slot1_configdrive.iso /tmp/dscMNuJwA/iso
    I: -input-charset not specified, using utf-8 (detected in locale settings)
    Using VENDO000.JSO;1 for  /tmp/dscMNuJwA/iso/openstack/latest/vendor_data.json (vendor_data2.json)
    Total translation table size: 0
    Total rockridge attributes bytes: 1238
    Total directory bytes: 6618
    Path table size(bytes): 52
    Max brk space used 22000
    192 extents written (0 MB)
       removing temporary space /tmp/dscMNuJwA
     
    Installing VM <system name>-slot2 on host RedHatHost01
    --------------------------------------------------
    Checking for VM <system name>-slot2 on host RedHatHost01...
    libvir: QEMU error : Domain not found: no domain with matching name '<system name>-slot2'
    > issuing: ls /home/libvirt/images/<system name>-slot2.img
    > issuing: ls /home/libvirt/images/<system name>-slot2_configdrive.iso
     
    Process QCOW2 RedHatHost01 <system name>-slot2
    ------------------------------------------
       Convert to raw image...
    > issuing: qemu-img convert -O raw /tmp/dsc_swe_18_0_0_nb20190317.qcow2 /home/libvirt/images/<system name>-slot2.img
       Resize the raw image to 65G...
    > issuing: qemu-img resize /home/libvirt/images/<system name>-slot2.img +53G
     
    Generate VM Definition & Install RedHatHost01 <system name>-slot2
    -------------------------------------------------------------
       Generate QEMU XML definition
       Define VM
       VM defined with UUID b63a71d3-cc02-b6cb-5c7a-b72a538e5d96
       Set autostart (start VM on host boot).
       using temporary space /tmp/dscISxYiS
    > issuing: genisoimage -V config-2 -graft-points -J -rock -o /tmp/dscISxYiS<system name>-slot2_configdrive.iso /tmp/dscISxYiS/iso
    I: -input-charset not specified, using utf-8 (detected in locale settings)
    Using VENDO000.JSO;1 for  /tmp/dscISxYiS/iso/openstack/latest/vendor_data.json (vendor_data2.json)
    Total translation table size: 0
    Total rockridge attributes bytes: 1238
    Total directory bytes: 6618
    Path table size(bytes): 52
    Max brk space used 22000
    192 extents written (0 MB)
       removing temporary space /tmp/dscISxYiS
    removing extracted qcow2
       Store config with VMs on hosts.
       warning: existing <system name> config adding time
     
    Wrote configuration to file /tmp/DSC_<system name>.20190319011105.conf
     
    Process VM startups
    -------------------
    Storage pool : /storage/default
    System configuration file: /tmp/DSC_<system name>.20190319011105.conf
    Store install log (/tmp/DSC_<system name>.20190319011105.install_log) with VMs on hosts.
    complete.

Delete a VM(s) on a KVM Host

Use this procedure to delete a VM or VMs on a KVM host. 

Prerequisites
Start
  1. Log onto a KVM Host or a Linux workstation.
  2. Enter the following command, where <system name> is your defined system name.

    Example
    # ./dsc_swe_18_0_0_nb20190317_KVM.sh delete --local --system <system name> --vm-ids 1
    Example Response
    DSC Self-Extraction Utility 18_0_0_nb20190317
    -----------------------------------------------------
    Verify archive integrity...
    Executing install script...
    DSC SWe KVM Host Interaction
    ----------------------------
    Verify requisite files in the archive...
     
    Processing hosts
    ----------------
       Connected to RedHatHost01  libvirt 12001 (lib 9004)
     
    Delete <system name>-slot1 on host RedHatHost01.
     
    Continue with delete of all listed VMs? (y/n):
  3. Enter y, and press ENTER.

    Example Response
    Delete <system name>-slot1 on host RedHatHost01
    -------------------------------------------
       Force poweroff <system name>-slot1
       Erase VM <system name>-slot1
       Remove <system name>-slot1 remote files from RedHatHost01
    > issuing: rm /home/libvirt/images/<system name>-slot1.img
    > issuing: rm /home/libvirt/images/<system name>-slot1_configdrive.iso
     
    storage pool : default
    complete.


  • No labels