首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >XenServer :如何检索Xenserver管理IP地址

XenServer :如何检索Xenserver管理IP地址
EN

Stack Overflow用户
提问于 2013-08-17 03:30:23
回答 1查看 847关注 0票数 0

非常感谢您能提供的任何帮助/意见/建议。

我们的XenServer 6.0.2上配置了多个IPAddresses,但只有一个管理地址。

我们有使用Xenserver Java API绑定来查询Xenserver的JAVA代码。我们已经使用下面的代码来检索池中所有xenserver的管理ip地址。

代码语言:javascript
运行
复制
           Map<Host, Host.Record> hypervisors = Host.getAllRecords(getConnection());

    for (Host.Record hypRecord : hypervisors.values()) {
        String mgmtIP = hypRecord.address;
                      .........
                      .........
            }

此代码在我们的实验室中工作,但在合作伙伴网站上的测试显示此代码存在问题。返回的ip地址是否与管理ip地址不同?例如,在合作伙伴站点,xenserver的机箱上配置了3个IP。让我们称它为ip1,ip2和ip3。我们使用ip1发出xen api请求和登录,它工作得很好。但是在上面的代码中返回的变量"mgmtIP“的值是ip2。这让我思考: a.单个xenserver是否可以有多个管理ip?b.上述代码中的“String mgmtIP = hypRecord.address;”行不会返回管理ip吗?b.是否应该始终将xen api请求发送到管理ip地址(如果在池中,则为master的)?c.检索xenserver管理ip地址的最佳方法是什么?由于我们使用的是6.0.2,因此方法: public PIF getManagementIface(Connection c) on class Host.

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-01-05 01:53:07

使用xe:

代码语言:javascript
运行
复制
user@host ~# IFS=,; for uuid in $(xe pif-list management=true --minimal); do echo -n   "$uuid -> "; xe pif-param-get param-name=IP uuid=$uuid; done
12334567-1234-1234-1234-123456787890 -> x.x.x.x
12334567-1234-1234-1234-123456787890 -> x.x.x.x
12334567-1234-1234-1234-123456787890 -> x.x.x.x
12334567-1234-1234-1234-123456787890 -> x.x.x.x

使用api你会在主机上查询pif的相同逻辑http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=PIF,pif是否有管理真?获取IP

另一个可能对您有用的技巧是

代码语言:javascript
运行
复制
user@host ~# xe host-param-get uuid=12334567-1234-1234-1234-123456787890 param-name=address
x.x.x.x

http://docs.vmd.citrix.com/XenServer/6.0.0/1.0/en_gb/api/?c=host

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18280773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档