Reference13r2:Concept Innovaphone Virtual Appliance

From innovaphone wiki
Jump to navigation Jump to search
There are also other versions of this article available: Reference9 | Reference10 | Reference12r1 | Reference13r2 (this version) | Reference14r1

Applies To

This information applies to:

Disclaimer: Since versions of VM hosts other than those specified here have not been tested, their use is at your own risk.

More Information

The innovaphone Virtual Appliance (IPVA) is a virtual machine to be run on a virtualization platform. Whereby, VMware[2] and Hyper-V[3] are the solely supported virtualization platforms to-date. This aticle describes teh use of VMware, for support of Hyper-V, refer to this article.


The IPVA is a software-only solution. It appears as and performs as an innovaphone "hard-box" excluding DSP-, ISDN-/AB-resources.

The following core-components are contained within the IPVA:

  • innovaphone PBX
  • innovaphone Gateway (a.k.a Relay)
  • integrated mass-storage (alike innovaphones' CF-card support)

Configuration

Download the IPVA.

ipva-ovf.zip

The compressed archive ipva-ovf.zip contains the file ipva.ova. A virtual machine according to the Open Virtualization Format specification. A deployment of ipva.ova will result in a set of 5 files - the file names may differ from the following list:

  • ipva.vmx: The virtual machine configuration file
  • hd-boot.vmdk: The virtual boot harddisk (hd)
    • On IDE 0:0
  • hd-cf.vmdk: The hd for emulation of a Compact Flash card
    • On IDE 0:1
  • hd-flash.vmdk: The hd for emulation of flash memory
    • On IDE 1:0
  • hd-dump.vmdk: The hd serving as a store for a crash dump
    • On IDE 1:1
ipva.bin

The file ipva.bin is the firmware file, which is only needed for update purposes.

ipva-vmx.zip

A legacy zip file containing the IPVA according to a VMware proprietary format.

VMware Player And VMware Workstation

VMware vSphere

Network Configuration

Manufacturer-configured as DHCP client only. I.e. a DHCP server must be available. Afterwards the network configuration may be administrated as used to within the web ui of other innovaphone boxes. If there's in no case a DHCP server available for the 1st-time configuration, read through What Is The Console Good For?.

MAC/serial number

Take care that you use a MAC address which is supported by my.innovaphone, see Reference:My_Innovaphone#IPVA_MAC_exists.

Download

You find all innovaphone firmware files at store.innovaphone.com

Troubleshooting

Support procedures are commonly identical to the ones known from innovaphones' physical appliances. Except for:

  • Post-Mortem Logs A post-mortem log must be retrieved by clicking on Maintenance/Diagnostics/Tracing/trace(crash-dump) (alternatively: http://a.b.c.d/crash_dump.txt).

Some known issues are listed further below under FAQ.

Known Issues

Restored IPVA may not run

We have seen issues where an IPVA which had been backed up using one of the available backup tools for VMWare do not start up properly when they have been restored.

We strongly suggest to not rely on VMWare backup mechanism but instead to use the standard innovaphone backup scheme (that is, save the configuration on a regular basis).

How to run a restored backup that fails to start

Here is the procedure to run an IPVA from an IPVA if the restored virtual machine does not boot up properly:

  • restore the backed up V10 IPVA
  • create a new, empty V11r1 IPVA (you will need this merely to copy the boot disk from)
  • replace the boot disk of the failing V10 IPVA by the boot disk of the fresh V11r1 IPVA (see How To Replace The Boot Disk On vSphere for details)
  • start the restored and fixed V10 IPVA (it should run fine now)
  • downgrade this V10 IPVA to desired V10 firmware
  • remove the fresh V11r1 IPVA


Some Customer who are running Fw v12r1 (up to sr6) with ESXi 6.0 and VEEAM 9 reported that after a backup with VEEAM 9, the restored IPVA was not starting. At this point, there is no possibility to solve this problem. The only workaround in that case is to delete the machine, reinstall a new one, and restore a configuration saved before.

If you did not run into the problem yet, for prevention, we recommend to replace the Boot disk of your working IPVA.vmx with one of the IPVA.ova. Please follow the steps below (be aware that this will upgrade the firmware on the IPVA to 12r2, due to the fact that actually, IPVA.ova is only available from version 12r2):

1. Remove the Boot disk of the virtual machine (vmx)(is normaly the first one).

  • Power off the VM
  • Select the Virtual Machine > Settings.
  • On the Hardware tab, select the virtual hard disk and click Remove.
  • Click OK to save your changes.

2. Add the Boot disk of the ova virtual machine to the vmx one.

  • Identify the size of the boot disk of the ova virtual machine (will be needed on the step when navigating to boot disk)
  • On the powered off VM, Select the Virtual Machine > Settings.
  • On the Hardware tab, select the virtual hard disk and click Add.
  • Select Use “an existing virtual disk” then click Next.
  • Navigate to the boot disk of the ova Virtual machine then click next.
  • Click Finish.

Now the vmx virtual machine should have the Fw version 12r2.

The .ova version will be available also in V12r1 sr7

IPVA does not run on Citrix Cloud Platform

Reportedly, the Citrix cloud platform - although based on VMware - cannot run the IPVA. Amongst other issues, the platform does not allow 4 virtual disks, which are required for the IPVA.

IPVA does not run on VCloud Air

VCloud Air apparently does not support the timekeeping mechanism required by the IPVA.

ckl 15:50, 30 November 2016 (CET) We have seen the IPVA v12r2 running on vCloud Air. Use the ova import.

IPVA on ESX 6.5

We have reports that the IPVA does not run properly on ESX 6.5. The IPVA boots up properly but the clock does not run. Running the .ova based variation available in v12r2 fixed the issue or edit the file ipva.vmx according to What Can I Do In Case Of Boot-Problem: perf-counter not enabled!

Administration: Avoid 'reboot' Command. Use 'reset' Command

Alwas use the 'reset' command to restart an IPVA. The 'reboot' command makes sense only on physical applicances, where its purpose is to deploy a new bootcode by means of a forced watchdog trap. The resulting post-reboot state will be as if an unsolicited trap/crash had occurred.

No Fault Tolerance Support from VMWare vSphere 6.5

We have reports that VMWare vSphere 6.5 Fault Tolerance (FT) no longer works. For further information regarding this feature, please refer to the respective note in Implement PBX with zero downtime using IPVA and VMWare Fault_Tolerance.

Voice Quality Issues

When dealing with media streams (e.g. for announcements), the IPVA needs to fulfil real-time processing requirements, for example to process RTP packets in a timely fashion. To do so, the IPVA relies on the capabilities of the virtualization platform it runs on.

It is therefore important to configure the platform so that it supports real-time applications best. If you experience voice quality or latency issues, consider

  • to make sure that all of the IPVAs memory is reserved to the IPVA (Latency Sensitivity set to High)
  • to guarantee exclusive PCPU access

This helps to reduce CPU halt/wake-up states.

Additional vCPUs may cause problems

The Multi-Core functionality of version 13r2 is a beta functionality. Additional virtual CPUs(vCPUs) should not be utilized in production environments.

FAQ

Can The Emulated CompactFlash Be Increased In Size?

Yes, from within the Edit Virtual Machine dialog. Doing so just increases the size of the virtual harddisk. The emulated CompactFlash must be formatted afterwards and accordingly to benefit from the increased size. That step can be administrated from Administration/Compact Flash/Format. Note: A recommendation for an upper size limit is not given.


vSphere / vSphere Client

1. At first backup all of your files from CF card
2. Shutdown the corresponding IPVA
3. Choose "Properties" of the IPVA
4. Delete "Harddrive 2" (Hardrive file xxx/xxx_1.vmdk)

hd-boot.vmdk  > xxx.vmdk
hd-cf.vmdk    > xxx_1.vmdk
hd-flash.vmdk > xxx_2.vmdk
hd-dump.vmdk  > xxx_3.vmdk

5. Create new harddrive
6. Configure the required size
7. As "Node of virtual device" select "IDE(0:1)"
8. Start the IPVA.
9. "Format" the CF Card and "mount" it (General/Compact-Flash/General)

What Is The Size Of the emulated Flash Storage on the IPVA?

The virtual flash storage used to store configuration file of the IPVA and LDAP directory of the PBX is defined with 64 MB and can not be changed. This is two times more than on IP6010. The VMDK-File hd-flash.vmdk is allocated with 100 MB, because VMWare can not handle smaller virtual disks.

What Is The Size Of the Flash Directory on the IPVA?

As noted above, the virtual flash memory on the IPVA is fixed to a size of 64MB. Most of the flash is used by the flash directory (FLASHDIR0) which amongst other things provides storage for PBX objects.

The size of the flash directory depends on the available RAM. The maximum of 900 segments á 64KB, i.e. ~56MB, is available if 192MB or more RAM is available. If less RAM is available, the size of the flash directory is decreased accordingly. For this reason, it is unsafe to reduce RAM size in a given IPVA, as the flash directory size may be decreased so that objects from the flash directory get lost.

The easiest method to see how much flash directory space is available is to investigate the boot trace. For the standard configuration of 64MB the respective trace output is going to look as follows and informs about a size of 14MB:

0:0000:081:4 - start flashdir FLASHDIR0
0:0000:081:4 - fdir: segments=901->224(14.0MB)


How Much RAM Is Required Per IPVA Instance?

Since 12r2sr27/13r1sr5 the downloadable virtual appliance comes preconfigured with 256MB RAM. This amount is seen as a good trade-off for the majority of all installations. The RAM-size can be administrated by VMware-means.

What Is The Maximum Amount Of RAM?

The maximum meaningful RAM setting is 3GB. Memory space beyond that limit will be left unused. Assigning more than 3GB to an IPVA instance doesn't provide any benefit.

Why Does General/Info/DRAM Show Less Than the Configured Memory?

Not all of the configured memory is available to the IPVA. E.g. a bit of memory is occupied by the VMM[4]. The indicator General/Info/DRAM displays the memory available to the IPVA and is truncated down to a whole number. A boot-trace reveals a bit more about IPVA-available memory as shown in the following excerpt:

...
0:0000:030:4 - Intel(R) Core(TM)2 Duo CPU     E8400  @ 3.00GHz
0:0000:030:4 - mem(64946176)=61.93MB ...

How Many IPVA Instances Are Possible Per Host?

There's no worst-case estimate available. For a best-case calculation,

Additional preformance reflections

How do I perform a factory reset?

replace the 3rd disk, served on IDE 1:0, named hd-flash.vmdk with an empty disk:

VM Settings.png

1)download the IPVA and watch out for the file hd-flash.vmdk

2)Power-off the IPVA instance

3)Replace hd-flash.vmdk with the one downloaded in step 1). If on vsphere it may have been assigned a different name. Ensure it’s the one on IDE 1:0.

4)Power-on the IPVA instance

What About VMware Tools?

VMware Tools are not supported.

What Is The Console Good For?

The console is a remains of the early development phase. It resembles the IP3000's serial console. It doesn't offer any convenience like command history or backspace funtionality. Nevertheless may the console be of help in exceptional situations where e.g. the required DHCP server isn't available for 1st-time configuration or in situations where the ip configuration was misconfigured. Thereby any command from a device's config is acceptable.

For instance to configure the static IP address 1.2.3.4/24 on ETH0:

  • Click into the console
  • Press ENTER
  • Enter credentials
  • Enter
config change IP0 ETH0 /addr 192.168.0.10 /mask 255.255.255.0
config change IP0 RT0 /gateway 192.168.0.1
config change DHCP0 /mode off
config write
reset

Since no backspace is offered it may become a daring task to enter a single line without typos. In case of a typo hit ENTER and input the same line again. The keyboard layout is the US layout.

Console-edit of IP address

Display the IP configuration for ETH0:

config show IP0 ETH0

Display the DHCP configuration for ETH0:

config show DHCP0

Additional the DNS-server(s) and the default gateway can be configured:

config change IP0 ETH0 /addr 1.2.3.4 /mask 255.255.255.0 /dns 8.8.8.8 /dns2 8.8.4.4
config change IP0 RT0 /gateway 1.2.3.254
config change DHCP0 /mode off
config write
reset

Also some simple diagnostics (ping and traceroute) are possible via the console (output is given in the console):

mod cmd PING0 tracert 8.8.8.8
mod cmd PING0 ping 8.8.8.8

Resetting the entire FLASH space - Note, all configuration will get lost. this is similar method to the manufacturer reset method from above How do I perform a factory reset?

mod cmd FLASHMAN0 reset all
reset

What Can I Do In Case Of A Checksum Boot Error?

This paragraph applies, if you experience the following start-up problem.

Symptom

  • the IPVA doesn't start properly
  • the console displays
checksum wrong! Loading failed for image=IPVA    BIN
Console displays CRC boot error


Solution

  • Power-off the IPVA
  • Replace the boot harddisk by a fresh one. The boot harddisk is the 1st hd(originally named hd-boot.vmdk).

Remarks

This problem may occur on a system crash while a firmware update is taking place.

What Can I Do In Case Of Boot-Problem: NIC unavailable!

This paragraph applies, if you experience the following start-up problem.

Symptom

  • the IPVA doesn't start properly
  • the console displays
NIC unavailable!
Console displays NIC unavailable!


Solution

  • Power-off the IPVA
  • Administrate by VMware means: Ensure the correct/expected type of network interface controller(NIC) is going to be offered by the hypervisor.


The IPVA offers driver support for:

  • AMD NIC: Am79C970A PCnet-PCI II Single-Chip Full-Duplex Ethernet Controller
    • a.k.a PCNet32
    • a.k.a Vlance


The AMD-NIC is kind of default. However, the NIC type may be overriden manually and accordingly within the configuration file ipva.vmx as follows

ethernet0.virtualDev = "vlance"

Remarks

This problem may occur after a VMware re-configuration of the network settings.

What Can I Do In Case Of Boot-Problem: perf-counter not enabled!

This paragraph applies, if you experience the following start-up problem.

Symptom

  • the IPVA doesn't start properly
  • the console displays
perfcounter-not enabled!!!
Console displays perfcounter-not enabled!!!


Solution
This problem is likely caused by an OVA-import of the IPVA. The appliance's configuration file ipva.vmx requires a VMware proprietary configuration line that's not specifiable within an OVA-file.

The IPVA utilizes a VMware proprietary mechanism for its internal timekeeping[5]. That mechanism is only available after adding the following line to the configuration file ipva.vmx:

monitor_control.pseudo_perfctr = TRUE

If that line is not present, the hypervisor is going to throw a CPU exception. Hint: In vSphere a VMX-file can be edited under Edit Settings/Options/Advanced/General/Configuration Parameters[6]

Remarks

  • The vmx file should be edited after the installation of the IPVA.
  • The vmx file should NOT be edited with Text editor (use vSphere as shown above)
  • To our knowledge, a converter is always necessary for the installation with vmx.

What Can I Do In Case Of Boot-Problem: Loading failed for image=IPVA BIN

This paragraph applies, if you experience the following start-up problem.

Symptom

  • the IPVA doesn't start properly
  • the console displays
Loading failed for image=IPVA    BIN
Console displays Loading failed for image=IPVA BIN


Solution
This problem is likely caused by a calculation fault within the boot-code.

  • The solution requires a replacement of the boot disk hd-boot.vmdk.
    • Download an IPVA package from on 11r2 sr22.
    • Replace the 1st disk with the one from the downloaded package

Are Additional vCPUs useful?

The Multi-Core functionality of version 13r2 is a beta functionality. Additional virtual CPUs(vCPUs) should not be utilized in production environments.

How To Replace The Boot Disk On vSphere?

The recommended way is as follows:

  • With ipva.ova deploy a fresh IPVA by means of File/Deploy OVF-Template... (de: Datei/OFV-Vorlage bereitstellen...) and follow instructions.
    • Its use to just serve as a copy source.
  • Power-Off the old IPVA.
  • In the old IPVA remove the 1st disk on IDE 0:0.
  • From the new IPVA copy the 1st harddisk(on IDE 0:0) towards the old IPVA's directory.
  • In the old IPVA add the 1st disk on IDE 0:0.
  • In the old IPVA confirm and start the machine

What do the counters mean under Interface/Ethx/Statistic?

rx-drop
Accumulates register CSR112 [7] of the emulated chip AM79C970. CSR112: Missed Frame Count. An increase of this value indicates the IPVA was not able to process the network frames fast enough.
ifInDiscards
Sum of rx-drop, frames dropped due to interface link not up, unsupported ethernet type, internal receive queue full, drop frames of different vlan, drop non vlan frames if vlan is configured
rx-frame-blocked
Unsupported IP protocol

Notes

  1. VMware Player Download(free): http://vmware.com/download/player/
  2. http://www.vmware.com
  3. https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/
  4. Virtual Machine Monitor: A component belonging to the virtualization platform
  5. Timekeeping in Virtual Machines http://www.vmware.com/pdf/vmware_timekeeping.pdf
  6. vmware Labs - How to edit vmx file in ESXi vSphere: https://www.youtube.com/watch?v=ICICoq-maB0
  7. Command and Status Register

Related Articles

Reference13r2:Licenses

Howto:A_rough_estimate_of_IPVA_Performance