Adding a network interface to your PureApplication VM: RedHat

Previously I described how you can add an additional network interface to an existing AIX LPAR on PureApplication System. The instructions are similar if you want to add an interface to an existing RedHat 6.x VM. You should follow the same procedure in the UI to add the new interface to the virtual machine. An asynchronous job is scheduled to add the address; after the job completes, take note of the MAC address and IP address:

new-address

Then, login to the virtual machine. Locate the network interface by finding its MAC address, and configure it using the new IP address and the subnet mask for the associated IP group:

[virtuser@ipas-pvm-073-020 ~]$ sudo bash
bash-4.1# ifconfig -a | fgrep -i 00:50:56:8f:1e:a4
eth2      Link encap:Ethernet  HWaddr 00:50:56:8F:1E:A4
bash-4.1# ipcalc -bn 172.20.72.4 255.255.248.0
BROADCAST=172.20.79.255
NETWORK=172.20.72.0
bash-4.1# cat > /etc/sysconfig/network-scripts/ifcfg-eth2 << EOF
> TYPE=Ethernet
> DEVICE=eth2
> BOOTPROTO=none
> BROADCAST=172.20.79.255
> NETMASK=255.255.248.0
> NETWORK=172.20.72.0
> STARTMODE='auto'
> USERCONTROL='no'
> ONBOOT=yes
> _nm_name='static-eth2'
> IPADDR=172.20.72.4
> EOF
bash-4.1# ifup eth2
Determining if ip address 172.20.72.4 is already in use for device eth2...
bash-4.1#

This configuration will persist across reboot.

Adding a network interface to your PureApplication VM

You can add a network interface to a virtual machine deployed on PureApplication System from the virtual machines view:

addnic

However, this step only configures the new interface at the hypervisor. You must also configure the interface within the virtual machine. This step differs depending on the operating system. For RedHat, see my other post on adding network interfaces to a RedHat virtual machine. For AIX, you would perform steps like the following to discover (cfgmgr) and configure (chdev) the new interface:

# lsdev
. . .
en0        Available       Standard Ethernet Network Interface
en1        Available       Standard Ethernet Network Interface
. . .
# cfgmgr
# lsdev
. . .
en0        Available       Standard Ethernet Network Interface
en1        Available       Standard Ethernet Network Interface
en2        Defined         Standard Ethernet Network Interface
. . .
# chdev -P -l en2 -a mtu_bypass=on      # Enable largesend
en2 changed
# chdev -l en2 -a netaddr=172.20.202.2 -a netmask=255.255.248.0 -a state=up
en2 changed
# ifconfig -a
en0: flags=1e084863,4c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
        inet6 fd8c:215d:178e:1234:b1ec:97ff:fe24:e66f/64
        inet6 fe80::a8ab:50ff:fef4:cc04/64
         tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
en1: flags=1e084863,4c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
        inet 172.20.202.243 netmask 0xfffff800 broadcast 172.20.207.255
         tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
en2: flags=1e084863,4c0<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,CHECKSUM_OFFLOAD(ACTIVE),LARGESEND,CHAIN>
        inet 172.20.202.2 netmask 0xfffff800 broadcast 172.20.207.255
         tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1
lo0: flags=e08084b,c0<UP,BROADCAST,LOOPBACK,RUNNING,SIMPLEX,MULTICAST,GROUPRT,64BIT,LARGESEND,CHAIN>
        inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255
        inet6 ::1%1/128
         tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1
#

This configuration will persist across reboot. You could also use the interactive smitty tool to configure the interface after you have discovered it.