在上一篇博文中,我们已经在一个新创建的LPAR中通过File-backed device以及VMLibrary的方式成功安装了一个AIX系统,接下来我们讨论如何通过VIOS的协助来完成新装AIX系统的网络功能。为方便读者阅读,我把当前我们所处的位置用下图简单标识一下:

 

上图是通过VIOS给新装的AIX系统提供网络支持的大致原理图,VIOS负责提供一个虚拟的ethernet
apapter给AIX使用(见图中VESA与VECA部分的连接),然后VIOS通过SEA穿过PowerVM
Hypervisor(也即利用Hypervisor Firmware所提供的功能)来使用物理的Ethernet
Adapter与外部世界进行网络通信。

通过上一篇博文之后,我们可以登录到AIX系统,但是网络部分尚未开通,这也是这篇博文要讨论的主要内容。上篇文章中我们在创建一个新的LPAR时用的是下面的命令:

-bash-3.2$ mksyscfg -r lpar -i
"name=nim,lpar_env=aixlinux,auto_start=1,boot_mode=norm,mem_mode=ded,min_mem=1024,
desired_mem=2048,max_mem=2048,proc_mode=shared,sharing_mode=uncap,uncap_weight=128,
min_procs=1,desired_procs=1,max_procs=2,min_proc_units=0.25,desired_proc_units=0.5,
max_proc_units=2,\"virtual_eth_adapters=4/0/3//0/0,5/0/4//0/0\""

这条命令很长很暴力,不过目前我们的关注点是黑体红色部分,它将为新生成的虚拟机LPAR提供两个Virtual
Ethernet
Adapter,因为相对于VIOS这个LPAR而言,新的LPAR将作为它的client形式而存在,所以新的LPAR(为简单起间,后续用其名称nim来代表这个LPAR)中的Virtual
Ethernet Adapter的官方称谓是Virtual Ethernet Client
Adapter(VECA)。这里简单解释一下后面那两个诡异的参数,4/0/3//0/0,它是‘slot_number/is_ieee/port_vlan_id/additional_vlan_ids/is_trunk/is_required’的具体表现形式,其最核心的信息有3个:slot_number,
port_vlan_id和is_trunk.
slot_number是这个VECA在nim这个虚拟机当中的slot_number,而port_vlan_id最重要,它表示当前虚机中的这个VECA与VIOS中的哪个Virtual
Ethernet Server
Adapter(VESA)是相互绑定的,也就是上图中的VESA与VECA标识的那条线,is_trunk表示这个virtual ethernet
adapter是否用来连接external network,在client
partition当中当然不需要了,因为我们只和VIOS中的VESA打交道,后者才需要连接external network (by using
the physical ethernet adapter through the SEA)。我们后面在具体操作时还会再解释这里的参数。

现在我们登录到新装的AIX中,利用lsdev命令可以看到下面两个VECA(对应前面创建LPAR时的“virtual_eth_adapters=4/0/3//0/0,5/0/4//0/0“参数):

(通常来说,上层的OS是不会知道底下设备是虚拟的还是物理的,但是我们从上面的命令输出可以看到,AIX很明显知道ent0和ent1都是Virtual I/O设备,因为所有的这一套东西都由IBM独家提供,包括AIX,所以这并不奇怪)

可以用lscfg命令看看这两个虚拟设备的详细信息:

上图中被我用鼠标hightlight部分是ent0的location code,其中V2-C4-T1的信息是此时我们比较关心的,C4表示该设备的slot number=4,这跟创建它的参数4/0/3//0/0是吻合的。

接下来为了使新装的AIX系统可以访问外部网络,需要在VIOS中为它建立一个SEA (Shared Ethernet Adapter),所以现在我们需要登录到VIOS环境中,找到port_vlan_id=3的VESA,然后为其建立一个SEA设备。

在VIOS中,我们可以看到如下一些跟网络设备相关的东西:

在我们当前实验用的IBM P服务器上,有两个物理的Ethernet Adapter设备,分别对应上图中的ent0和ent1,这两个设备都有网线连接到一个交换机上,所以ent0和ent1都可以用来作为SEA设备的backing device.
上图中的ent4,
ent5,ent6和ent7则分别是VIOS上的VESA,为了配置AIX的网络,需要找到与AIX中ent0或者ent1相同的vlan
id,下面我们以AIX中ent0为例,它所对应的VIOS中的VESA的vlan id=3.
所以我们需要在VIOS中找出ent[4,7]中哪个vlan id=3. 在VIOS环境下,执行lshwres命令:

上图中被hightlight的部分显示:VIOS中,vlan id = 3的VESA的slot num=5, 然后再用lsmap -all -net命令:
-bash-3.2$ lsmap -all -net
SVEA   Physloc
------ --------------------------------------------
ent4   U8204.E8A.068B7E4-V1-C3-T1

SEA                 NO SHARED ETHERNET ADAPTER FOUND

SVEA   Physloc
------ --------------------------------------------
ent5   U8204.E8A.068B7E4-V1-C4-T1

SEA                 NO SHARED ETHERNET ADAPTER FOUND

SVEA   Physloc
------ --------------------------------------------
ent6   U8204.E8A.068B7E4-V1-C5-T1

SEA                 NO SHARED ETHERNET ADAPTER FOUND

SVEA   Physloc
------ --------------------------------------------
很明显,红色部分表明ent6所对应的slot num=5,因此它的vlan id=3. ent6就是和我们新建的虚机VECA所对应的VESA. 有了这些信息之后,就可以为ent6建立一个SEA:

上面的命令行中,为了方便后续其他LPAR上的网络配置工作,我们为ent[4,6]都创建了一个相同的SEA
ent9,其backing device为ent1,后者是一个physical ethernet
adapter,前面我们都已经看到过了。(从这条命令我们还可以看到什么?可以看到一个SEA可以支持多个client
partition的网络功能,这也是它为啥叫Shared Ethernet Adapter的原因,而一个SEA只有一个backing
device,在我们的例子中是ent1,后者是一个实际的Ethernet Adapter,用来和外部世界进行信息沟通)

在以上步骤完成之后,就可以通过ifconfig来配置新安装的AIX系统的网络接口en0了(此时它的状态是Defined),这跟Linux下面的配置大同小异。完成之后,ping一下我自己的主机:
# ping 192.16.10.94
PING 192.16.10.94: (192.16.10.94): 56 data bytes
64 bytes from 192.16.10.94: icmp_seq=0 ttl=63 time=9 ms
64 bytes from 192.16.10.94: icmp_seq=1 ttl=63 time=0 ms
64 bytes from 192.16.10.94: icmp_seq=2 ttl=63 time=0 ms
配置完成后,ent0的状态已经改变成Available了。

一旦网络通了之后,可以稍微轻松一下,接下来的任务是把这台新装的AIX配置成一个NIM服务器。详见下一篇博文。

本文转自:http://blog.chinaunix.net/uid-23769728-id-3315871.html

【转】通过VIOS实现AIX系统的网络虚拟化的更多相关文章

  1. 【转】 HMC与VIOS对新LPAR提供存储与网络虚拟化的支持

    前面的几篇博文的操作环境都是在IVM下,IVM可以看作是VIOS的一部分,或者是对VIOS功能的一个扩展,一个IVM只能管理1台物理服务器,而HMC则是一对多.在有HMC来管理物理服务器的情形下,VI ...

  2. 使用NIM Server网络半自动安装AIX系统

    一.NIM配置 1.安装NIMServer前准备 1.1.配置IP地址 # ifconfig –a #检查当前IP地址# # smitty mktcpip #设置IP地址# 选择第一块网卡(插网线的网 ...

  3. (转)IBM AIX系统硬件信息查看命令(shell脚本)

    IBM AIX系统硬件信息查看命令(shell脚本) 原文:http://blog.itpub.net/22085031/viewspace-1054015/ 查看IBM AIX系统的主机型号.序列号 ...

  4. 如何配置Linux系统的网络IP地址

    一台安装了Linux系统的电脑如果想要联网,首先要做的就是进行网络配置.今天小编就以CentOS6.4系统为例为大家介绍整个网络配置的过程,虽然只是以CentOS6.4系统为例,但是其它的Linux系 ...

  5. Linux系统NFS网络文件系统

    Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...

  6. AIX系统中安装Java6全过程(全部)

    ====================================================   From: GCG TSC pSeries <ibm800p@cn.ibm.com& ...

  7. AIX系统的环境变量设置

    AIX系统的环境变量设置 用户环境的定义是通过设置环境变量来实现的.AIX系统主要使用两大类profile文件来定义用户环境.一类是用来为所有用户定制环境,另一类是为个人定义自己的环境. 登录时,sh ...

  8. AIX 开机启动网络服务配置

    aix7 administrator An administrator notices that the ntp group subsystem is not starting up at boot ...

  9. AIX 系统中 PVID 的含义与作用

    网址: http://www.eygle.com/digest/2008/06/aix_pvid.html Pvid是aix系统中的ODM LVM用于识别PV的序列号,操作系统通过pvid来识别pv, ...

随机推荐

  1. Spring AOP 面向切面编程相关注解

    Aspect Oriented Programming 面向切面编程   在Spring中使用这些面向切面相关的注解可以结合使用aspectJ,aspectJ是专门搞动态代理技术的,所以比较专业.   ...

  2. Selenium2 Python 自己主动化測试实战学习笔记(五)

    7.1 自己主动化測试用例 无论是功能測试.性能測试和自己主动化測试时都须要编写測试用例,測试用例的好坏能准确的体现了測试人员的经验.能力以及对项目的深度理解. 7.1.1 手工測试用例与自己主动化測 ...

  3. struts2学习笔记(一)

    1.搭建第一个struts2 app. web.xml  <?xml version="1.0" encoding="UTF-8"?> <we ...

  4. 【设计模式 7】从公司的目前框架和API Gateway,谈谈对外观模式的理解

    我,第一次用到外观模式,应该是3年多以前.那时候是做一个收费系统,在当时的U层和B层之间,加了一层Facade.当时,在一些复杂的业务逻辑处理时,感受到了加入外观层的好处,但对于一些简单的(我指的是, ...

  5. Android BlueDroid(三):BlueDroid蓝牙开启过程enable

    关键词:bluedroid  enableNative BTIF_TASK  BTU_TASK bt_hc_work_thread set_power  preload GKI作者:xubin3417 ...

  6. UVA 11885 - Number of Battlefields(斐波那契)

    11885 - Number of Battlefields 题意:给周长.求能围成的战场数目.不包含矩形. 思路:详细的递推没递推出来,可是看了网上一个规律,假设包含矩形的答案应该是斐波那契数列(可 ...

  7. 11.static(转)

    本文转自:http://blog.csdn.net/keyeagle/article/details/6708077 google了近三页的关于C语言中static的内容,发现可用的信息很少,要么长篇 ...

  8. 转载-好用的linux软件合集

    音频 Airtime – Airtime 是一款用于调度和远程站点管理的开放广播软件  Ardour – 在 Linux 上录音,编辑,和混音  Audacious – 开源音频播放器,按你想要的方式 ...

  9. bonjour的使用

    os中,bonjour是一个零配置的网络服务分发服务器与客户端.   在使用bonour之前你应该明白的是,bonjour并不负责数据传输,只负责发布服务与检索服务,并在客户端获取服务端的信息.   ...

  10. Yarn源码分析之如何确定作业运行方式Uber or Non-Uber?

    在MRAppMaster中,当MapReduce作业初始化时,它会通过作业状态机JobImpl中InitTransition的transition()方法,进行MapReduce作业初始化相关操作,而 ...