[ANN] oVirt 4.0.2 Fourth Release Candidate is now available
by Sandro Bonazzola
The oVirt Project is pleased to announce the availability of the Fourth
Release Candidate of oVirt 4.0.2 for testing, as of August 10th, 2016.
This release is available now for:
* Fedora 23 (tech preview)
* Red Hat Enterprise Linux 7.2 or later
* CentOS Linux (or similar) 7.2 or later
This release supports Hypervisor Hosts running:
* Red Hat Enterprise Linux 7.2 or later
* CentOS Linux (or similar) 7.2 or later
* Fedora 23 (tech preview)
* oVirt Next Generation Node 4.0
This is pre-release software. Please take a look at our community page[1]
to know how to ask questions and interact with developers and users.
All issues or bugs should be reported via oVirt Bugzilla[2].
This pre-release should not to be used in production.
This update is the fourth release candidate of the second in a series of
stabilization updates to the 4.0 series.
4.0.2 brings 24 enhancements and more than 200 bugfixes, including 107 high
or urgent severity fixes, on top of oVirt 4.0 series
See the release notes [3] for installation / upgrade instructions and a
list of new features and bugs fixed.
Notes:
* A new oVirt Live ISO is available. [4]
* A new oVirt Next Generation Node will be available soon [4].
* A new oVirt Engine Appliance is already available.
* Mirrors[5] might need up to one day to synchronize.
Additional Resources:
* Read more about the oVirt 4.0.2 release highlights:
http://www.ovirt.org/release/4.0.2/
* Get more oVirt Project updates on Twitter: https://twitter.com/ovirt
* Check out the latest project news on the oVirt blog:
http://www.ovirt.org/blog/
[1] https://www.ovirt.org/community/
[2] https://bugzilla.redhat.com/enter_bug.cgi?classification=oVirt
[3] http://www.ovirt.org/release/4.0.2/
[4] http://resources.ovirt.org/pub/ovirt-4.0-pre/iso/
[5] http://www.ovirt.org/Repository_mirrors#Current_mirrors
--
Sandro Bonazzola
Better technology. Faster innovation. Powered by community collaboration.
See how it works at redhat.com
8 years, 4 months
OVS-based cluster adding vdsm report 'RTNETLINK answers: File exists' error in supervdsm.log in release 4.0.2
by lifuqiong
Hi,
I want to test ovs in vdsm of release 4.0.2. And according Petr's helpful advice, created an ovs-based cluster and install vdsm to ovirt engine. But report a 'RTNETLINK answers: File exists' error as bellows.
It seems that vdsm want to add a default gw through ' ip -4 route add default via 192.168.0.1' ; but of course this gateway already exists, why the vdsm will still add the default gateway?
Error log:
---------------------------------------------------------------------------------------------------------------------------------------------------------
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,203::commands::68::root::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip link set dev ovirtmgmt up (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,205::commands::86::root::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,205::commands::68::root::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip link set dev p3p1 up (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,207::commands::86::root::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,207::commands::68::root::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip addr flush dev ovirtmgmt scope global (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,209::commands::86::root::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,209::commands::68::root::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip -4 addr add dev ovirtmgmt 192.168.0.117/255.255.255.0 (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,211::commands::86::root::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,211::commands::68::root::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip -4 route add default via 192.168.0.1 (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,213::commands::86::root::(execCmd) FAILED: <err> = 'RTNETLINK answers: File exists\n'; <rc> = 2
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,213::api::246::root::(setupNetworks) Setting up network according to configuration: networks:{u'ovirtmgmt': {'remove': True}}, bondings:{}, options:{'connectivityCheck': 0, 'inRollback': True}
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,213::api::267::root::(_setup_networks) Validating configuration
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,216::routes::75::root::(get_gateway) The gateway 192.168.0.1 is duplicated for the device p3p1
MainProcess|jsonrpc.Executor/4::ERROR::2016-08-02 22:35:03,310::supervdsmServer::96::SuperVdsm.ServerCallback::(wrapper) Error in setupNetworks
Traceback (most recent call last):
File "/usr/share/vdsm/supervdsmServer", line 94, in wrapper
res = func(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 248, in setupNetworks
_setup_networks(networks, bondings, options)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 275, in _setup_networks
netswitch.setup(networks, bondings, options, in_rollback)
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 199, in _rollback
six.reraise(excType, value, tb)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 182, in _rollback
yield
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 275, in _setup_networks
netswitch.setup(networks, bondings, options, in_rollback)
File "/usr/lib/python2.7/site-packages/vdsm/network/netswitch.py", line 119, in setup
_setup_ovs(ovs_nets, ovs_bonds, options, in_rollback)
File "/usr/lib/python2.7/site-packages/vdsm/network/netswitch.py", line 165, in _setup_ovs
connectivity.check(options)
File "/usr/lib/python2.7/site-packages/vdsm/network/netconfpersistence.py", line 243, in __exit__
raise ne.RollbackIncomplete(config_diff, ex_type, ex_value)
IPRoute2Error: ['RTNETLINK answers: File exists']
ip addr show
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
[root@server117 ~]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: p3p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master ovirtmgmt state UP qlen 1000
link/ether 64:00:6a:23:b8:c0 brd ff:ff:ff:ff:ff:ff
3: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master ovs-system state UP qlen 1000
link/ether a0:36:9f:09:36:c0 brd ff:ff:ff:ff:ff:ff
inet6 fe80::a236:9fff:fe09:36c0/64 scope link
valid_lft forever preferred_lft forever
4: em2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether a0:36:9f:09:36:c1 brd ff:ff:ff:ff:ff:ff
5: wlp4s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether 60:6d:c7:29:d7:55 brd ff:ff:ff:ff:ff:ff
6: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN
link/ether 42:ab:a1:1b:24:94 brd ff:ff:ff:ff:ff:ff
7: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/ether a0:36:9f:09:36:c0 brd ff:ff:ff:ff:ff:ff
inet6 fe80::a236:9fff:fe09:36c0/64 scope link
valid_lft forever preferred_lft forever
8: ovirtmgmt: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 64:00:6a:23:b8:c0 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.117/24 brd 192.168.0.255 scope global ovirtmgmt
valid_lft forever preferred_lft forever
9: ;vdsmdummy;: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN
link/ether 4e:ce:20:14:aa:24 brd ff:ff:ff:ff:ff:ff
How to solve it? Thank you.
Mark
Hope hear from you asap.
8 years, 4 months
Re: [ovirt-devel] [ovirt-users] How to add ovs-based VM in version 4.0.2? Thank you
by lifuqiong
Hi petr,
I followed your instruction last mail, re-install an Centos 7.2 1503(ip:192.168.0.117), and executing 'yum install http://plain.resources.ovirt.org/pub/ovirt-4.0-pre/rpm/el7/noarch/ovirt-r...'
On the new system.
Creating an cluster using ovs-based network, and install vdsm(192.168.0.117); deploy log shows that meeting an error as follows: But I cann't find out the code which implements the function of setupNetworks,
Just find the setupNetwork() function was defined in API.py, what does this function do actually, where is the code ? and how to fix this error?
jsonrpc.Executor/4::ERROR::2016-08-02 22:35:03,321::__init__::549::jsonrpc.JsonRpcServer::(_handle_request) Internal server error
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/yajsonrpc/__init__.py", line 544, in _handle_request
res = method(**params)
File "/usr/lib/python2.7/site-packages/vdsm/rpc/Bridge.py", line 195, in _dynamicMethod
result = fn(*methodArgs)
File "/usr/share/vdsm/API.py", line 1465, in setupNetworks
supervdsm.getProxy().setupNetworks(networks, bondings, options)
File "/usr/lib/python2.7/site-packages/vdsm/supervdsm.py", line 53, in __call__
return callMethod()
File "/usr/lib/python2.7/site-packages/vdsm/supervdsm.py", line 51, in <lambda>
**kwargs)
File "<string>", line 2, in setupNetworks
File "/usr/lib64/python2.7/multiprocessing/managers.py", line 773, in _callmethod
raise convert_to_error(kind, result)
IPRoute2Error: ['RTNETLINK answers: File exists']
Hope get your help asp.
Thank you
Mark
-----邮件原件-----
发件人: Petr Horacek [mailto:phoracek@redhat.com]
发送时间: 2016年8月3日 1:50
收件人: lifuqiong
抄送: Meni Yakove; Dan Kenigsberg; Michael Burman; devel
主题: Re: 答复: [ovirt-users] [ovirt-devel] How to add ovs-based VM in version 4.0.2? Thank you
If everything goes well, it will be in master this week. I don't know when it will be part of 4.0.
I installed master VDSM patched with
https://gerrit.ovirt.org/#/q/topic:ovs_acquire on my host (Fedora 23 with disabled NetworkManager) and it worked OK. You can try to build it on your own [1]. If you hit any problem, feel free to ask.
We'd like to go that way, but nothing specific yet.
[1] http://www.ovirt.org/develop/developer-guide/vdsm/developers/
2016-08-02 14:15 GMT+02:00 lifuqiong <lifuqiong(a)cncloudsec.com>:
> Hi Petr,
> Thank you
> When the patch will merge to master? And when will the vdsm will release a version with this patch?
> Btw, do you have a plan to support ovs with dpdk or vhost-user port? If so, what's the pipeline?
>
> Thank you
>
> -----邮件原件-----
> 发件人: Petr Horacek [mailto:phoracek@redhat.com]
> 发送时间: 2016年8月2日 19:53
> 收件人: lifuqiong
> 抄送: Meni Yakove; Dan Kenigsberg; Michael Burman; devel
> 主题: Re: [ovirt-users] [ovirt-devel] How to add ovs-based VM in version
> 4.0.2? Thank you
>
> Clean == host that has just NICs, like right after system installation (no networks created by VDSM, bridges, bonds, vlans). Anyway, VDSM OVS is not able to acquire external NICs yet (the patch is under review and will be merged to master soon [1]).
>
> I would recommend you to wait for VDSM with mentioned patch merged. If you cannot wait, you can try to setup ovirtmgmt network manually via console (turn down NIC, setup OVS network on top of it). Not sure if this would help you.
>
> [1] https://gerrit.ovirt.org/#/c/60404/29
>
> 2016-08-02 13:30 GMT+02:00 lifuqiong <lifuqiong(a)cncloudsec.com>:
>> Hi Petr,
>> Thank you for your advice. But what does "Clean hosts" mean,
>> as I know now, When you add a clean Host to ovirt engine, the vdsm or ovirt node will create a Network named ovirtmgmt, which is an Linux bridge network, How do I clean the network? Just delete the linux bridge and reset the linux bridge binding's physical Nic?
>>
>> Hope to get your help as sonn as possible.
>> Thank you.
>> Mark
>>
>> -----邮件原件-----
>> 发件人: Petr Horacek [mailto:phoracek@redhat.com]
>> 发送时间: 2016年8月2日 18:29
>> 收件人: lifuqiong
>> 抄送: Meni Yakove; Dan Kenigsberg; Michael Burman; users
>> 主题: Re: [ovirt-users] [ovirt-devel] How to add ovs-based VM in
>> version 4.0.2? Thank you
>>
>> If the host was a part of legacy cluster you must do manual cleanup of all networks. Currently VDSM cannot change Linux bridges into OVS ones (this will be implemented soon). Make sure that you are adding clean hosts (with NIC interface/s only) to OVS cluster.
>>
>> Regards,
>> Petr
>>
>> 2016-08-02 10:01 GMT+02:00 Michael Burman <mburman(a)redhat.com>:
>>> Hi ,
>>>
>>> Did you synced network/s after you moved the host to the ovs type cluster?
>>> It seems like you didn't..)
>>> Go to 'Hosts' main tab' and choose the host, go to 'Network
>>> Interfaces' sub tab and press the 'Sync All Networks' , now the
>>> networks should be synced to host as ovs switch type.
>>> Run the vm and check the xml.
>>> It should look something like this:
>>>
>>> <source bridge='vdsmbr_nRL3asDq'/>
>>> <virtualport type='openvswitch'>
>>>
>>> thanks
>>>
>>>
>>> On Tue, Aug 2, 2016 at 9:37 AM, Meni Yakove <myakove(a)redhat.com> wrote:
>>>>
>>>>
>>>>
>>>> On Tue, Aug 2, 2016 at 7:12 AM, lifuqiong
>>>> <lifuqiong(a)cncloudsec.com>
>>>> wrote:
>>>>>
>>>>> I create a cluster which already enabled ovs network as you
>>>>> mentioned , but when I create vm in this cluster, I can only
>>>>> using ovirtmgmt/ovirtmgmt vNIC profile, which is still a Linux bridge.
>>>>>
>>>>> I found no way to add a OVS vNIC profile, I have to chose
>>>>> ovirtmgmt/ovirtmgmt vNIC to setup a VM. After VM is started, the
>>>>> vm is still using Linux bridge to communicate with outside, not the ovs.
>>>>>
>>>>>
>>>>>
>>>>> Need I to create a ovs bridge or vport and bind it to physical NIC
>>>>> in vdsm manually?
>>>>>
>>>>>
>>>>>
>>>>> Hope your reply as soon as possible.
>>>>>
>>>>> Thank you
>>>>>
>>>>> Mark
>>>>>
>>>>>
>>>>>
>>>>> 发件人: users-bounces(a)ovirt.org [mailto:users-bounces@ovirt.org] 代表
>>>>> Meni Yakove
>>>>> 发送时间: 2016年8月1日 16:42
>>>>> 收件人: Dan Kenigsberg
>>>>> 主题: Re: [ovirt-users] [ovirt-devel] How to add ovs-based VM in
>>>>> version 4.0.2? Thank you
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Aug 1, 2016 at 11:07 AM, Dan Kenigsberg
>>>>> <danken(a)redhat.com>
>>>>> wrote:
>>>>>
>>>>> On Mon, Aug 01, 2016 at 02:02:52PM +0800, lifuqiong wrote:
>>>>> > Hi, I upgrade my ovirt to version 4.0.2.2, how to using ovs in
>>>>> > this version?
>>>>> > Is there any instruction? Thank you
>>>>>
>>>>> Please note and note well: OVS is not production-grade yet. It is
>>>>> only a preliminary tech preview, under active development.
>>>>>
>>>>> However, we'd be very happy to get your help in testing it (and
>>>>> possibly fixing it, too).
>>>>>
>>>>> When defining a new cluster, you should see a check box, letting
>>>>> you select OVS for that cluster.
>>>>>
>>>>>
>>>>>
>>>>> To be precise, this is not a check box. In the Edit Cluster
>>>>> dialog, look at the "switch
>>>>>
>>>>> type" option, and change "LEGACY" to "OVS".
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> After being checked, each VM network that is defined in your
>>>>> cluster would be implemented with OVS instead of Linux bridge.
>>>>>
>>>>> As aluded before, there are plenty of known definciencies (e.g.,
>>>>> no persistence of ip config on VM network, no live migration, not
>>>>> all bond modes, etc etc). But do not hesitate to raise other
>>>>> issues with the devel mailing list.
>>>>>
>>>>> Happy testing!
>>>>>
>>>>> Dan.
>>>>> _______________________________________________
>>>>> Devel mailing list
>>>>> Devel(a)ovirt.org
>>>>> http://lists.ovirt.org/mailman/listinfo/devel
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Michael Burman
>>> RedHat Israel, RHEV-M QE Network Team
>>>
>>> Mobile: 054-5355725
>>> IRC: mburman
>>
>
8 years, 4 months
problem setting up bonding via rest in ovirt 3.6.6.2
by Sven Kieske
--j9oOhf6Grf0fFqlEVUxQMWAcfqJklkQI7
Content-Type: multipart/mixed; boundary="T7QE2T6V8U03TuXieVjo1CtXdRsCW5TA8"
From: Sven Kieske <s.kieske(a)mittwald.de>
To: users(a)ovirt.org
Cc: devel <devel(a)ovirt.org>
Message-ID: <69e3d02d-ac52-37d7-e8f6-5bc8be8c0d40(a)mittwald.de>
X-Authenticated-mymxserver.com: Yes
Subject: problem setting up bonding via rest in ovirt 3.6.6.2
--T7QE2T6V8U03TuXieVjo1CtXdRsCW5TA8
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Hi,
I'd like to setup host network in the following way:
I have 4 interfaces: eth0, eno1, eno2, eno3
ovirtmgmt network resides on eth0 and is working.
Now I want to setup a bonding with the slave interfaces
eno2 and eno3 via the hosts "setupnetworks" function:
URL:
https://engine-fqdn/api/hosts/9cdcc85b-dd87-4dcf-9275-b993ee5b5e9c/nics/s=
etupnetworks
Request:
{
"modified_bonds": {
"host_nic": [{
"name": "bond0",
"bonding": {
"options": {
"option": [{
"name": "mode",
"value": "1"
}, {
"name": "miimon",
"value": "100"
}]
},
"slaves": {
"host_nic": [{
"name": "eno2"
}, {
"name": "eno3"
}]
}
}
}]
}
}
Response from ovirt-engine:
<?xml version=3D"1.0" encoding=3D"UTF-8" standalone=3D"yes"?>
<fault>
<reason>Incomplete parameters</reason>
<detail>Action [hostNics] required for setupNetworks</detail>
</fault>
When I look at the rsdl docs this seems perfectly fine.
I tried google with this error condition but it didn't return anything
useful unfortunately.
Your help would be greatly appreciated.
The official RH docs also do not mention anything else:
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Virtuali=
zation/3.6/html-single/REST_API_Guide/index.html#Multiple_Network_Setup_A=
ction
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Virtuali=
zation/3.6/html-single/REST_API_Guide/index.html#Bonded_Interfaces
Also this tool doesn't seem to mention anything else:
https://jhernand.fedorapeople.org/ovirt-api-explorer/#/services/host/meth=
ods/setup_networks
--=20
Mit freundlichen Gr=C3=BC=C3=9Fen / Regards
Sven Kieske
Systemadministrator
Mittwald CM Service GmbH & Co. KG
K=C3=B6nigsberger Stra=C3=9Fe 6
32339 Espelkamp
T: +495772 293100
F: +495772 293333
https://www.mittwald.de
Gesch=C3=A4ftsf=C3=BChrer: Robert Meyer
St.Nr.: 331/5721/1033, USt-IdNr.: DE814773217, HRA 6640, AG Bad Oeynhause=
n
Komplement=C3=A4rin: Robert Meyer Verwaltungs GmbH, HRB 13260, AG Bad Oey=
nhausen
--T7QE2T6V8U03TuXieVjo1CtXdRsCW5TA8--
--j9oOhf6Grf0fFqlEVUxQMWAcfqJklkQI7
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
iQIcBAEBAgAGBQJXqfNTAAoJEMby9TMDAbQR9NwQAJ4xm0JeDqRnjW8DuAae6wCz
RLWbGMyhn5jqcL7bRQAU/oppW0FAFGo+So72kwvX29AkII+qRZJnHyHWMo6nnO3s
XnCR23uAk33KH02jmyzVNq9cA6VmckTHX3CWU6cq6WxTA8jhDKNSu7SLkUvOD3/u
pUDGNvoYZJTsN2DU6qQJiROMkIu+zgm0LF9RXKdVcA+tE1G9XuOwz+QBqgAfiWgc
bCD3mWIF+OBfwQoN1GIhe7sxZm3TxJs+Y7UtpotN/hYULXIJffsjU/Lo6e5pEYJY
aPIfPUscPlAr51alEiR11zN9pgzhShqvRW61GHxsxkxTXPn8JVsch2uD4sCe8pQn
8C8Tz9+gdq0tM/gvM3nyYTIcHmMr7ZDn44lyd+x98uJWsUNOuraQH18nAIrs+kaw
TfonDACJKM5t8DQM1FgmUA0nWdS3X5UCcY8LSIHpA5dhLk9sRUWehfvqPl1zDrpJ
uTcOF5/POD7vgpf4Aja9vOlcgrKZJGrKPWGDq2IJkX1OoaeGe2KsIf3VqzqxFG0g
l8UlR9zIeXwslLcfvRpt4YUJT27l3zHkaC6glZo+vkXbvb0fUPVwKfV3Xcyaz9G+
BIs1dC1iYrVGUURaDu8yZ/SZQ5zigD/I/wudKvTgelR8Wd8Y3MStmpkADozqBwY3
hQG0y+cMX/7gvpOsD7cw
=0XKM
-----END PGP SIGNATURE-----
--j9oOhf6Grf0fFqlEVUxQMWAcfqJklkQI7--
8 years, 4 months
[ACTION REQUIRED] oVirt 4.0.2 RC4 build starting in 1 hour
by Sandro Bonazzola
Fyi oVirt products maintainers,
An oVirt build for an official release is going to start in 1 hour.
If you're a maintainer for any of the projects included in oVirt
distribution and you have changes in your package ready to be released
please:
- bump version and release to be GA ready
- tag your release within git (implies a GitHub Release to be automatically
created)
- build your packages within jenkins / koji / copr / whatever
- verify all bugs on MODIFIED have target release and target milestone set.
- add your builds to releng-tools/releases/ovirt-4.0.2_rc4.conf withini
releng-tools project
--
Sandro Bonazzola
Better technology. Faster innovation. Powered by community collaboration.
See how it works at redhat.com
8 years, 4 months
Announcing Rafael Martins as ovirt*uploader and ovirt-log-collector maintainer
by Sandro Bonazzola
Hi,
Rafael Martins has contributed several bug fixes and improvements to
ovirt-iso-uploader, ovirt-image-uploader and ovirt-log-collector.
He took a major role in the projects and he's currently default assignee
for bugs related to these projects.
Rafael already has maintainer permissions on uploaders and log-collector.
I'd like to thank Rafael for his contribution and I hope he'll keep up the
good work!
--
Sandro Bonazzola
Better technology. Faster innovation. Powered by community collaboration.
See how it works at redhat.com
8 years, 4 months
oVirt 4.0.2 RC4 merge / branch / tag / bugzilla reminder
by Sandro Bonazzola
All stable branch maintainers, please make sure to
- merge all relevant open bugs until Tuesday morning 11:00 AM TLV time.
For each package that need to be built (i.e oVirt product) please make sure
every bug in MODIFIED has the right Target Release and Target Milestone.
A Target release should state the version of the package you're building
and should include the same version you used for the tag you just used for
this build. (e.g. for ovirt-engine, tag: ovirt-engine-4.0.2.5, tr: 4.0.2.5)
A list of bugs that require attention is here:
-
https://bugzilla.redhat.com/buglist.cgi?quicksearch=target_milestone%3A4....
--
Sandro Bonazzola
Better technology. Faster innovation. Powered by community collaboration.
See how it works at redhat.com
8 years, 4 months
oVirt 4.0.2 RC4 build planned
by Sandro Bonazzola
Fyi oVirt developers,
An oVirt build is planned for this Tuesday 11:00 AM TLV time (10:00 AM
CEST).
Taking into consideration the time it takes for Jenkins to run a full CI
everything need to be backported by Monday 11PM.
Please make sure to mark as verified and CR +2 so it will be ready for
merging Tuesday morning.
A list of pending blockers is available here:
https://bugzilla.redhat.com/buglist.cgi?quicksearch=target_milestone%3A4....
--
Sandro Bonazzola
Better technology. Faster innovation. Powered by community collaboration.
See how it works at redhat.com
8 years, 4 months
Import VM Process (3.6)
by Jorge Luis Andrade Escobar
--Apple-Mail=_1A72C624-DCE5-494E-A9BD-C095A521A28A
Content-Type: multipart/alternative;
boundary="Apple-Mail=_661A577E-FC95-4A94-B971-A7036F24D9F1"
--Apple-Mail=_661A577E-FC95-4A94-B971-A7036F24D9F1
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
charset=utf-8
I=E2=80=99ve been migrating some very large VMs, using export/import, =
and have noticed this behavior, I now has been reported and maybe =
answered, but would like to know the logic/reason behind this.
The command to import (convert) from a qcow2 to a raw (LVM) device on =
FC.
/usr/bin/nice -n 19 /usr/bin/ionice -c 3 /usr/bin/qemu-img convert -t =
none -T none -f qcow2 =
/rhev/data-center/333f0407-ace1-4cb3-8147-39931c4942c5/92f8390f-812e-4872-=
b2dc-44433f53146a/images/6c5986df-65d2-41cb-9901-1c9ade164b55/5e24f52c-c8e=
b-4f9d-8eeb-5e3f0982add1 -O raw =
/rhev/data-center/mnt/blockSD/1c4b3226-b530-4554-81e9-ead20c1512c5/images/=
6c5986df-65d2-41cb-9901-1c9ade164b55/5e24f52c-c8eb-4f9d-8eeb-5e3f0982add1
The best BW achieved with this on a 1Gbps link was from 15 to 30MB/s.
I tried modifying ionice, priority, and nice, and got almost the same =
values, after spending must of the night up.
I stop the process and tried to to this without the import.
Just activated the LVM using the ID of the VM Disk image, and executing =
without the -t and -T option, that I understand it=E2=80=99s related to =
the cache of the source and destination.
But could use almost entire Gb link 120MB/s.
Is there any reason, for doing this this way ?
Greetings,
--
Jorge Luis Andrade Escobar
jandrade(a)i-t-m.com <mailto:jandrade@i-t-m.com>
jandrade(a)itm.gt <mailto:jandrade@itm.gt>
Red Hat Certified Architect (RHCA) Level IV
Red Hat Certified Instructor/Examiner (RHCX)
# 100-000-967
gpg: 685C 68E8 9F55 771B ED7C 3CC7 5E65 8385 88D3 09A5
Phone: +502 2305-0800 ext. 4005
http://www.i-t-m.com <http://www.i-t-m.com/>
--Apple-Mail=_661A577E-FC95-4A94-B971-A7036F24D9F1
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
charset=utf-8
<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div class=3D"">I=E2=80=99ve been migrating some very large =
VMs, using export/import, and have noticed this behavior, I now has been =
reported and maybe answered, but would like to know the logic/reason =
behind this.</div><div class=3D""><br class=3D""></div><div class=3D"">The=
command to import (convert) from a qcow2 to a raw (LVM) device on =
FC.</div><div class=3D""><br class=3D""></div><div class=3D""><br =
class=3D""></div> /usr/bin/nice -n 19 /usr/bin/ionice -c 3 =
/usr/bin/qemu-img convert -t none -T none -f qcow2 =
/rhev/data-center/333f0407-ace1-4cb3-8147-39931c4942c5/92f8390f-812e-4872-=
b2dc-44433f53146a/images/6c5986df-65d2-41cb-9901-1c9ade164b55/5e24f52c-c8e=
b-4f9d-8eeb-5e3f0982add1 -O raw =
/rhev/data-center/mnt/blockSD/1c4b3226-b530-4554-81e9-ead20c1512c5/images/=
6c5986df-65d2-41cb-9901-1c9ade164b55/5e24f52c-c8eb-4f9d-8eeb-5e3f0982add1<=
div class=3D""><br class=3D""></div><div class=3D"">The best BW achieved =
with this on a 1Gbps link was from 15 to 30MB/s.</div><div class=3D""><br =
class=3D""></div><div class=3D"">I tried modifying ionice, priority, and =
nice, and got almost the same values, after spending must of the night =
up.</div><div class=3D""><br class=3D""></div><div class=3D"">I stop the =
process and tried to to this without the import.</div><div class=3D""><br =
class=3D""></div><div class=3D"">Just activated the LVM using the ID of =
the VM Disk image, and executing without the -t and -T option, that I =
understand it=E2=80=99s related to the cache of the source and =
destination.</div><div class=3D""><br class=3D""></div><div class=3D"">But=
could use almost entire Gb link 120MB/s.</div><div class=3D""><br =
class=3D""></div><div class=3D"">Is there any reason, for doing this =
this way ?</div><div class=3D""><br class=3D""></div><div =
class=3D""> </div><div class=3D"">Greetings,<br class=3D""><div =
class=3D"">
<div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; orphans: =
auto; text-align: start; text-indent: 0px; text-transform: none; =
white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); letter-spacing: normal; =
orphans: auto; text-align: start; text-indent: 0px; text-transform: =
none; white-space: normal; widows: auto; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"orphans: auto; text-align: start; text-indent: =
0px; widows: auto; word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><div style=3D"orphans: =
auto; text-align: start; text-indent: 0px; widows: auto; word-wrap: =
break-word; -webkit-nbsp-mode: space; -webkit-line-break: =
after-white-space;" class=3D""><div style=3D"orphans: 2; text-align: =
-webkit-auto; text-indent: 0px; widows: 2; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"orphans: 2; text-align: -webkit-auto; =
text-indent: 0px; widows: 2; word-wrap: break-word; -webkit-nbsp-mode: =
space; -webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"border-collapse: separate; =
border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-align: -webkit-auto; text-indent: 0px; widows: 2; border-spacing: =
0px;"><div style=3D"border-collapse: separate; word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-align: -webkit-auto; text-indent: 0px; widows: 2; border-spacing: =
0px;"><div style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-align: =
-webkit-auto; text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><span class=3D"Apple-style-span" style=3D"orphans: 2; =
text-indent: 0px; widows: 2; border-spacing: 0px;"><div =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space;" class=3D""><span =
class=3D"Apple-style-span" style=3D"orphans: 2; text-indent: 0px; =
widows: 2; border-spacing: 0px;"><div style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" =
class=3D""><div style=3D"color: rgb(0, 0, 0); font-family: Helvetica; =
font-style: normal; font-variant-ligatures: normal; =
font-variant-position: normal; font-variant-caps: normal; =
font-variant-numeric: normal; font-variant-alternates: normal; =
font-variant-east-asian: normal; font-weight: normal; letter-spacing: =
normal; line-height: normal; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-decorations-in-effect: none; =
-webkit-text-stroke-width: 0px; border-collapse: separate; font-size: =
12px; margin: 0px;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"border-collapse: separate; word-wrap: =
break-word;" class=3D""><span style=3D"text-align: -webkit-auto; =
border-spacing: 0px;" class=3D""><div style=3D"word-wrap: break-word;" =
class=3D""><span style=3D"text-align: -webkit-auto; border-spacing: =
0px;" class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><div style=3D"border-collapse: separate; margin: =
0px;" class=3D""><span style=3D"border-spacing: 0px;" class=3D""><div =
style=3D"border-collapse: separate; word-wrap: break-word;" =
class=3D""><span style=3D"text-align: -webkit-auto; border-spacing: =
0px;" class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"text-align: -webkit-auto; border-spacing: 0px;" class=3D""><div =
style=3D"word-wrap: break-word;" class=3D""><span style=3D"border-spacing:=
0px;" class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><div =
class=3D""><div style=3D"border-collapse: separate; margin: 0px;" =
class=3D""><span style=3D"font-family: arial, sans-serif; font-size: =
13px; white-space: pre-wrap; text-align: -webkit-auto;" =
class=3D"">--</span></div><div style=3D"border-collapse: separate; =
margin: 0px;" class=3D""><span style=3D"font-family: arial, sans-serif; =
font-size: 13px; white-space: pre-wrap; text-align: -webkit-auto;" =
class=3D"">Jorge Luis Andrade Escobar </span><br =
class=3D""></div><div style=3D"border-collapse: separate; margin: 0px;" =
class=3D""><span style=3D"font-family: arial, sans-serif; =
border-collapse: collapse; font-size: 13px; white-space: pre-wrap;" =
class=3D""><a href=3D"mailto:jandrade@i-t-m.com" target=3D"_blank" =
class=3D"">jandrade(a)i-t-m.com</a></span></div><div =
style=3D"border-collapse: separate; margin: 0px;" class=3D""><span =
style=3D"font-family: arial, sans-serif; border-collapse: collapse; =
font-size: 13px; white-space: pre-wrap;" class=3D""><a =
href=3D"mailto:jandrade@itm.gt" target=3D"_blank" =
class=3D"">jandrade(a)itm.gt</a> </span></div><div =
style=3D"border-collapse: separate; margin: 0px;" class=3D""><span =
style=3D"font-family: arial, sans-serif; border-collapse: collapse; =
font-size: 13px; white-space: pre-wrap;" class=3D"">Red Hat Certified =
Architect (RHCA) Level IV<br class=3D""></span></div><div =
style=3D"border-collapse: separate; margin: 0px;" class=3D""><span =
style=3D"font-family: arial, sans-serif; border-collapse: collapse; =
font-size: 13px; white-space: pre-wrap;" class=3D"">Red Hat Certified =
Instructor/Examiner (RHCX)</span></div><div style=3D"border-collapse: =
separate; margin: 0px;" class=3D""><span style=3D"text-align: =
-webkit-auto; font-size: 13px; border-collapse: collapse; font-family: =
arial, sans-serif; white-space: pre-wrap;" class=3D""># </span><span =
style=3D"text-align: -webkit-auto; font-size: 13px; border-collapse: =
collapse; font-family: arial, sans-serif; white-space: pre-wrap;" =
class=3D"">100-000-967</span></div></div><div style=3D"border-collapse: =
separate; margin: 0px;" class=3D""><span style=3D"font-family: arial, =
sans-serif; font-size: 13px; text-align: -webkit-auto; white-space: =
pre-wrap;" class=3D"">gpg: 685C 68E8 9F55 771B ED7C 3CC7 5E65 8385 88D3 =
09A5</span></div></div></span></div></span></div></span></div></span></div=
></span></div></span></div></span></div></span></div></span></div></span><=
/div></span></div></span></div></span></div></span></div></span></div></sp=
an><span style=3D"border-collapse: collapse; white-space: pre-wrap;" =
class=3D"">Phone: +502 2305-0800 ext. 4005</span><span =
style=3D"text-align: -webkit-auto; border-spacing: 0px;" class=3D""><div =
style=3D"word-wrap: break-word;" class=3D""><span style=3D"text-align: =
-webkit-auto; border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"text-align: -webkit-auto; =
border-spacing: 0px;" class=3D""><div style=3D"word-wrap: break-word;" =
class=3D""><span style=3D"border-spacing: 0px;" class=3D""><div =
style=3D"word-wrap: break-word;" class=3D""><span style=3D"border-spacing:=
0px;" class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><span style=3D"border-spacing: 0px;" =
class=3D""><div style=3D"word-wrap: break-word;" class=3D""><span =
style=3D"border-spacing: 0px;" class=3D""><div style=3D"word-wrap: =
break-word;" class=3D""><div style=3D"orphans: auto; widows: auto; =
border-collapse: separate; margin: 0px;" class=3D""><font face=3D"arial, =
sans-serif" size=3D"3" class=3D""><span style=3D"border-collapse: =
collapse; font-size: 13px; white-space: pre-wrap;" class=3D""><br =
class=3D""></span></font></div><div style=3D"orphans: auto; widows: =
auto; border-collapse: separate; margin: 0px;" class=3D""><span =
style=3D"font-family: arial, sans-serif; border-collapse: collapse; =
font-size: 13px; white-space: pre-wrap;" class=3D""><a =
href=3D"http://www.i-t-m.com/" target=3D"_blank" =
class=3D"">http://www.i-t-m.com</a> </span></div><div =
style=3D"orphans: auto; widows: auto; border-collapse: separate; margin: =
0px;" class=3D""><span style=3D"font-family: arial, sans-serif; =
border-collapse: collapse; font-size: 13px; white-space: pre-wrap;" =
class=3D""><br =
class=3D""></span></div></div></span></div></span></div></span></div></spa=
n></div></span></div></span></div></span></div></span></div></span></div><=
/span></div></span></div></span></div></span></div></span></div></span></d=
iv></span></div></div></span></div></span></div></span></div></span></div>=
</span></div></span></div></span></div></span></div></span></div></span></=
div></span></div></span></div></span></div></span></div></span></div></spa=
n></div></div></span></div></span></div></span></div></span></div></span><=
/div></span></div></span></div></span></div></span></div></span></div></sp=
an></div></span></div></span></div></span></div></span></div></span></div>=
</span></div></div></div></div></div></div></div></div></div></div></div><=
/div></div></div></div><br class=3D"Apple-interchange-newline"><br =
class=3D"Apple-interchange-newline">
</div>
<br class=3D""></div></body></html>=
--Apple-Mail=_661A577E-FC95-4A94-B971-A7036F24D9F1--
--Apple-Mail=_1A72C624-DCE5-494E-A9BD-C095A521A28A
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename=signature.asc
Content-Type: application/pgp-signature;
name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
iQEcBAEBCAAGBQJXpL7aAAoJEF5lg4WI0wml9JUH/i4aATj0JNeCQtNC0WmEwBzg
WMbazut6bNnPkFo+2uD07heJR1OyNpKFvRh3exPMfJxq95JikCRnlPFH2QjuRK0n
WocvPfiFcdH/9zAMEb4wZpqKFNexvEq5z+8V72PF65gGBGSmnSidLXeFgA2SvJ6D
9/LSy7GOyMB6eSmqnGGb9Dt4phU9ej/JctVsvisYD7EJzGOk8sk9Gh0/BIllRiG8
xJvNxm9aYpP56hoFCXjORVGFi1GuAzc049Ylk7oeb6yN7z9MMw1pxWbIJHkcg6dC
4Doji9qZeX73PbMGc8PSng6utnxoRgSQVQNef3xudQIp4OjSUDulcLgT3J9fNgw=
=zX6u
-----END PGP SIGNATURE-----
--Apple-Mail=_1A72C624-DCE5-494E-A9BD-C095A521A28A--
8 years, 4 months