【转】通过VIOS实现AIX系统的网络虚拟化
在上一篇博文中,我们已经在一个新创建的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系统的网络虚拟化的更多相关文章
- 【转】 HMC与VIOS对新LPAR提供存储与网络虚拟化的支持
前面的几篇博文的操作环境都是在IVM下,IVM可以看作是VIOS的一部分,或者是对VIOS功能的一个扩展,一个IVM只能管理1台物理服务器,而HMC则是一对多.在有HMC来管理物理服务器的情形下,VI ...
- 使用NIM Server网络半自动安装AIX系统
一.NIM配置 1.安装NIMServer前准备 1.1.配置IP地址 # ifconfig –a #检查当前IP地址# # smitty mktcpip #设置IP地址# 选择第一块网卡(插网线的网 ...
- (转)IBM AIX系统硬件信息查看命令(shell脚本)
IBM AIX系统硬件信息查看命令(shell脚本) 原文:http://blog.itpub.net/22085031/viewspace-1054015/ 查看IBM AIX系统的主机型号.序列号 ...
- 如何配置Linux系统的网络IP地址
一台安装了Linux系统的电脑如果想要联网,首先要做的就是进行网络配置.今天小编就以CentOS6.4系统为例为大家介绍整个网络配置的过程,虽然只是以CentOS6.4系统为例,但是其它的Linux系 ...
- Linux系统NFS网络文件系统
Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...
- AIX系统中安装Java6全过程(全部)
==================================================== From: GCG TSC pSeries <ibm800p@cn.ibm.com& ...
- AIX系统的环境变量设置
AIX系统的环境变量设置 用户环境的定义是通过设置环境变量来实现的.AIX系统主要使用两大类profile文件来定义用户环境.一类是用来为所有用户定制环境,另一类是为个人定义自己的环境. 登录时,sh ...
- AIX 开机启动网络服务配置
aix7 administrator An administrator notices that the ntp group subsystem is not starting up at boot ...
- AIX 系统中 PVID 的含义与作用
网址: http://www.eygle.com/digest/2008/06/aix_pvid.html Pvid是aix系统中的ODM LVM用于识别PV的序列号,操作系统通过pvid来识别pv, ...
随机推荐
- (三)Oracle学习笔记—— sql语句
0. scott 用户默认表介绍 scott用户Tables目录下包含四张表 1. insert(插入)语句 给指定列插入数据: ,'xx'); 插入全部列数据: ,'xx','lll'); 2. u ...
- Apache Rewrite 规则详解
在开篇之前: 我想说这篇文章其实是我刚刚接触Rewrite的时候学习的文档,应属转载,但是在这里我不想写明原地址,原因是文章中大多数给出的配置命令经实验都是错误的.需要原文的可以在谷歌上搜索一下&qu ...
- 图片懒加载lazyload.js详解
简介 lazyload.js用于长页面图片的延迟加载,视口外的图片会在窗口滚动到它的位置时再进行加载,这是与预加载相反的. 优点 它可以提高页面加载速度: 在某些情况清晰它也可以帮助减少服务器负载. ...
- Atitit. camel分词器 分词引擎 camel拆分 的实现设计
Atitit. camel分词器 分词引擎 camel拆分 的实现设计 1. camel分词器1 1.1. 实现的界定符号大写字母小写字母数字1 1.2. 特殊处理 对于JSONObject 多个大写 ...
- Angularjs学习笔记7_directive1
1.基础知识 directive()接受两个参数 · name:字符串,指令的名字 · factory_function:函数,指令的行为 应用启动时,以name作为该应用的标识注册factory_f ...
- 206. Reverse Linked List【easy】
206. Reverse Linked List[easy] Reverse a singly linked list. Hint: A linked list can be reversed eit ...
- iOS 学习笔记四 【xcode 7.3 ESJsonFormat-Xcode 插件不能使用的解决办法】
步骤: 1.[前提要[关掉xcode],然后终端运行,一次不行,运行两次!] 2.[鼠标双击下方代码,command + c 复制即可] 3.[打开终端,command + V 粘贴,按回车运行即可, ...
- Say goodbye to 重复代码---Eclipse代码模板的使用
我们在开发过程中,有些代码是经常重复编写的,而且是必要的,如单例模式,观察者模式. 每次都是重复重复再重复. 那么如何提高我们的效率呢? 要记住,我们使用的是IDE,不是文本编辑器.善用工具,事半功倍 ...
- 阿里云服务器 端口开放问题 浏览器钟输入ip 访问服务器
在这里先用一堆粗口强烈吐槽阿里云服务器控制台,屎一样的界面,简直非人类的操作.想找一个功能简直无从下手. 场景: 今天刚在阿里云买了个服务器,打算愉快的用五分钟将数据库,apache,安装完毕,然后去 ...
- BitMap、Geo、HyperLogLog
前言 Reids 在 Web 应用的开发中使用非常广泛,几乎所有的后端技术都会有涉及到 Redis 的使用.Redis 种除了常见的字符串 String.字典 Hash.列表 List.集合 Set. ...