Commit Graph

86 Commits (40e90593e3ec084509a8fb1df346ecab894a6514)
 

Author SHA1 Message Date
Jerry Cai 40e90593e3 Add nova CLI extension for host maintenance mode status query/evaucation
Add a nova cli "nova host-maintenance" to query and enable/disable
the host maintenance mode for a specified host.

For detail usage, please refer to: "nova help host-maintenance".

Change-Id: Ibc3f92521546a82672b1619f7b65416909d92dfc
Closes-Bug: 1386026
9 years ago
terryyao 70fc6cfada fix destroy bdm with db api call
nova conductor api removed bdm destroy function, we need to move back
to use db api to remove bdm.

Closes-Bug: #1383541
Change-Id: I0ee732685ee9fb5f2ea9b6138b42ec267819009e
9 years ago
Jenkins 8a7003eca4 Merge "move to use oslo.i18/utils/serialization" 9 years ago
terryyao 7b84b07f0b move to use oslo.i18/utils/serialization
nova is switching to use oslo.i18n, oslo.utils, oslo.serialization with
change
d0e0ade702
nova.openstack.common removed some modules that has been replaced by the
ones from oslo.i18n, oslo.utils, oslo.serialization.

Closes-Bug: #1384039
Change-Id: I9fae9b61599a50b54fc40552b2c90fceb75d8522
9 years ago
Jerry Cai acb5f369b8 Add document for new host-maintenance-mode feature
Add document for new host-maintenance-mode feature. For detail,
please refer to the host_maintenance_mode.rst.

Change-Id: I0d61ba75a2c7b551fbced54d1a8a297fa58fdb4f
Closes-Bug: 1381325
9 years ago
Jenkins d2d4e304be Merge "Change lock device id from PowerVC-Lock to Lock" 9 years ago
Yi Ming Yin ce55c3df7c Change lock device id from PowerVC-Lock to Lock
In order to comply with local Openstack, change this value to more
general value "Lock"

Change-Id: I823392629ade0d98ead14bc814682f64da4a9745
Closes-Bug: #1380908
9 years ago
Jenkins f9e39580dc Merge "Error occurred while removing instance due to neutron api updated" 9 years ago
Jerry Cai 5ba0fc1546 Error occurred while removing instance due to neutron api updated
This is a community nova change in: nova/network/neutronv2/api.py.
https://github.com/openstack/nova/commit/
65a4a6b0085f8639de2df2ccb5a17a5449d676ae
Need driver to change to db object to nova object before call the api

Change-Id: Ia783eec434f9d167b3386e5fa58496e952dbc7b4
Closes-Bug: 1379691
9 years ago
Jenkins d3d8da98b3 Merge "fix neutron-powervc debug utility issue" 9 years ago
Jenkins adeb269beb Merge "Add testcases for add/remove vNIC functions" 9 years ago
Jenkins 9fcfcc4e45 Merge "Image updated failed during periodic sync" 9 years ago
Eric_Zhao 4b7e6302fd Image updated failed during periodic sync
Image updated failed when the glance-powervc did the periodic
sync , it is because of the code changes of the component 
glanceclient in the openstack community.

Change-Id: I149faeb1631c0f996ff529325eb8a71d9d92efc0
Closes-Bug: #1379637
9 years ago
Jerry Cai 2b7cd8b1f7 Add testcases for add/remove vNIC functions
Add testcases for add/remove vNIC functions:
test_attach_interface_with_port_id_existed
test_attach_interface_with_ipAddress_network_id
test_attach_interface_with_bad_request_exception_raised
test_detach_interface
test_detach_interface_with_bad_request_exception_raised

Change-Id: I8c21cb70fac446cac415b5a793c1213d6c548f7b
Closes-Bug: 1379251
9 years ago
jizilian@cn.ibm.com e165253c6f Fix overflow problem when connecting to multiple PowerVC hypervisors
The value of the property 'free_disk_gb' in the hypervisor info is
invalid in the Powervc. And the PowerVC will set it as a big value.
It will lead the overflow of the database.

Change-Id: I0eae9f393cd1c191230c71687450318539d58e02
Closes-Bug: 1370895
9 years ago
Terry Yao bcc67e4186 fix neutron-powervc debug utility issue
Fix the issue that neutron-powervc debug utility needs a conf file and
also remove other powervc python program needs to add config files
during startup, set the default configure file for ampq files if those
are not presented in CLI.

Closes-Bug: #1375618
Change-Id: Idfc1a43a5e583678106b8d1cbed2738c1863254c
9 years ago
Jenkins 29047a3d2e Merge "Add/Remove/Modify vNIC post deployment Edit" 9 years ago
Jerry Cai fd05a48a19 Add/Remove/Modify vNIC post deployment Edit
User call the following hosting cli to add a vNIC with IP and port
specified:
    nova interface-attach --net-id {net_uuid} --fixed-ip {ipAddress}
<server_name>
PowerVC driver handle the request in the following driver method:
    def attach_interface(self, instance, image_meta, network_info):
then call the PowerVC restAPI to attach the interface to server.

User call the following hosting cli to remove a vNIC with port
specified:
    nova interface-detach <server-id> <port-id>
PowerVC driver handle the request in the following driver method:
    def detach_interface(self, instance, network_info):
then call the PowerVC restAPI to attach the interface to server.

Change-Id: If0ae14a86005da06dc35620c2af47f37112228d5
Closes-Bug: #1375132
9 years ago
Terry Yao d82a609c65 Remove the log.isEnabledFor check as neutron log is not support yet
Remove the log.isEnabledFor in message.py as neutron does not sync the
oslo-incubate as nova's level, there is no isEnabledFor at this time in
neutron openstack.common.log.

Closes-Bug: #1373416
Change-Id: I1abda8017f55785e807d20dfa4d574c0a7016f60
9 years ago
Jenkins ab21eb0a57 Merge "Add an extra property for selecting SCG / Storage Template" 9 years ago
Jenkins b1b733cdc0 Merge "Add Host Maintenance Mode Get and evacuation support" 9 years ago
Yi Ming Yin f270b99710 Add "phyp" hypervisor type support in powervc compute
nova community has strictly limitted hypervisor support list to a
pre-defined list. We need to support "phyp" type, which is an equivalent
of previous "powervm"

Change-Id: Ia0ee2eabfb5230255fe80409998bf148593e0f7d
Closes-Bug: #1373293
9 years ago
Eric_Zhao 187efa1bbb Add an extra property for selecting SCG / Storage Template
In order to select an SCG / Storage Template , we add an extra
 propertity to image properties , UI could use this data to format
the data for user to select the specific SCG / Storage Template ,
and also, other components which consumes PowerVC images in
Openstack can also leverage this.

Change-Id: I4b9dba719dada3823dc159748d15a3266ca9efa3
Closes-Bug: #1362904
9 years ago
Jenkins 40fd682c61 Merge "Add new neutron port synchronization logic" 9 years ago
Jenkins c9f751b857 Merge "Need compare indexes when extract amqp conf files" 9 years ago
Jenkins e662d70d7b Merge "Glance manager log format requires a mapping" 9 years ago
Jerry Cai 3b9f42bf53 Add Host Maintenance Mode Get and evacuation support
To support GET the "host maintenance mode" from PowerVC by
PowerVC Driver, and evacuation all host out of the maintenance
entered host by PowerVC Driver. The design finally goes to Implement a
new nova rest-API for Get/Set maintenance status, and evacuate
vm during maintenance.

Change-Id: I9fba6b47e143ae8ea2165573302448fcdc61406f
Closes-Bug: 1372730
9 years ago
Le Tian Ren 3c64be8637 Glance manager log format requires a mapping
Change-Id: I6af713c3f70e6bb0f86dfd5ab9d9789f32c830ed
Closes-Bug: 1372228
9 years ago
Terry Yao e7c995a588 Auto assign volume device name during attachment
In current powervc driver code, our sync code will always set the nova
instance root_device_name as None, this will break nova framework's
device name auto-assign function if the device name is not provide while
volume attachment. PowerVC itself will not set it's instance
root_device_name from it's implemenation, for PowerVC driver, we just
get the device name of the boot volume from the powervc side, and make
it as the root_device_name of the nova instance.

Closes-Bug: #1369577
Change-Id: I7e71573e7b83ec9f8c34cfa4f0a1736b90402a90
9 years ago
Yi Ming Yin 6377129b22 Add new neutron port synchronization logic
According to new PowerVC neutron locked port logic, adding magic device
id to PowerVC neutron agent synchronization logic.

Change-Id: I4366cd91c31388a77e08848021afd202661bbed3
9 years ago
Le Tian Ren ef4147a170 Need compare indexes when extract amqp conf files
* swap the indexes if argv1_index is bigger than argv2_index

Change-Id: Id93ef544c4a4280587edce3fb2d70e254ee2b860
Closes-Bug: 1371504
9 years ago
Terry Yao 2b714e12e5 fix the glance client not refresh token issue
glance client is not refreshing the keystone token after expiration with
it's commit:
dbb242b776,
we need to patch this in our glance client to refresh the auth_token in
it's session head.

Closes-Bug: #1370402
Change-Id: I9c7a6620a587e855d7f9df8ad83450489daa8247
9 years ago
Jenkins 78bf927a6a Merge "Revert "Test gerrit review process on experimental branch."" 9 years ago
Terry Yao 1126d31be6 Revert "Test gerrit review process on experimental branch."
This reverts commit faba4c3767.

Change-Id: Id12e6534624cf42a51c3960ac091287f55b1a631
9 years ago
Jenkins eae4668ba3 Merge "Upstart process daemon scripts need to change." 9 years ago
Le Tian Ren 175cd1810d Upstart process daemon scripts need to change.
To adapt to new configuration files.

Check blueprint new-configuration-strategy-needed-to-adapt-to-oslo-messaging

Closes-Bug: 1370337
Change-Id: Ic8e624206490680de07827613d4474bac62686a9
(cherry picked from commit ba29f897db)
9 years ago
Le Tian Ren 0eefba3f77 Add support for multiple AMQP rpc backends
This is based on Oslo messaging API that supports RPC and notifications over a
number of different messsaging transports.

* remove old powervc.common.messaging and create a new one to adapt to Oslo
messaging

* adapt all sync service managers to new messaging model

Change-Id: I0c9b4a9fa5bb5d0eaac1433e768a110871d8dab8
Closes-Bug: 1363618
9 years ago
Le Tian Ren 05a8443e12 New config strategy to adapt to oslo-messaging
* Extract and remove --config-file amqp_openstack.conf(or
  amqp-openstack-neutron and --config-file amqp-powervc.conf from sys.argv to
  create 2 AMQP cfg.ConfigOpts objects without conflicting with other options
  parsing as before, particularly those OpenStack AMQP configurations in
  [DEFAULT] section of nova.conf, cinder.conf.

* adapt all affected code to the new config strategy

Implements: blueprint
https://blueprints.launchpad.net/powervc-driver/+spec/new-configuration-strategy-needed-to-adapt-to-oslo-messaging

Closes-Bug: 1356225
Change-Id: I61a4fd0c28148e31a8cb85acea3793f40028dfb4
9 years ago
Le Tian Ren faba4c3767 Test gerrit review process on experimental branch.
Add a script to help to create common utils symbolic links for each driver
component.

Change-Id: I45914db6d366511235e0e9507bc000e50651c992
Closes-Bug: 1356720
9 years ago
Eric_Zhao 5e0cd86117 Fix issue for glance image sync failed
Because of the code change of glanceclient , the component of glance-
powervc could not do the image sync sucessfully.

Change-Id: If0b31e20ec645478584c2dc08ad0aa48bb8db392
Closes-Bug: #1369817
9 years ago
Yi Ming Yin 66ac1ea035 Update powervc neutron agent to match new change.
neutron.common.config has changed setup_logging method signature.
powervc neutron agent code needs to be updated

Change-Id: Iab045cb3a42d8528c093006acf7e5cc0d3a2618d
Closes-Bug: #1368009
9 years ago
Jenkins 33e09d2496 Merge "Add host maintenance mode support for PowerVC Driver" 9 years ago
Jenkins 762f22786b Merge "Use primitive object while create nova client Server object" 9 years ago
Terry Yao 4ca5fa32b1 Use primitive object while create nova client Server object
We need to use primitive object while create nova client Server object
instead of directly using nova.object.Instance object, because the
Server object construction will mess up the nova.object.Instance change
fields, that will result in the db updating operation will not update
the field like "updated_at".

Closes-Bug: #1365895
Change-Id: Ifc8e41c753b5fa2fa73d1eb1a4c02cdcec363460
9 years ago
Jerry Cai aef2b5095d Temp fix for powervc side volumes operation not synced to local
Openstack in cinder-powervc

Currently cinder service uses threading instead of eventlet's event,
This causes if you don't monkey patch threading, it will hang there
all the time. For detail, check this fix in incubator project:
https://github.com/openstack/oslo-incubator/commit/\
1e7007824374842bc8108dff5e5e2694e12932b2
Will create a bug to cinder to fix this. Temporarily fix is to replace
cinder service instead of nova service in 1365373.

Change-Id: Ibe770e51563f43495228d84dd6d0284a62bba9e8
Closes-Bug: #1365373
9 years ago
Terry Yao 1e8cddd0a7 fix the failure to start cinder-volume for powervc driver
PowerVC cinder driver __init__ does not call it's super's __init__,
and latest cinder driver change result in cinder-volume can not be
started due to this reason.

Closes-Bug: #1363846
Change-Id: I4743513b115fd02521fac546985981ea5197527c
9 years ago
Jenkins 3ea6a37893 Merge "Change to use alembic to create db table schema" 9 years ago
Jerry Cai a41ee280aa The display name of volume which synchronized form PowerVC is None
To enhance the code to fetch volume display_name for latest PowerVC
If fetched "display_name" is empty then fetch "name" instead, if
still empty then just display local os as empty as previous.

Change-Id: I43161b50d153d9ed3750f8a2ea740c0dce633e35
Closes-Bug: #1363846
9 years ago
Jerry Cai 1c7474486f Add host maintenance mode support for PowerVC Driver
As a cloud admin, it is able to set the host managed by PowerVC to
"maintenance mode" and disable the "maintenance mode" support, through
PowerVC Driver.
1. If set maintenance mode to "true" it responses: "on_maintenance"
2. If set maintenance mode to "false" it responses: "off_maintenance"
3. If set maintenance mode to "true" when the host is already in
maintenance mode, it will report the error message from PowerVC to user.

Change-Id: I59ef830244202a4337ad72292e6341406b8464d3
Closes-Bug: #1363912
9 years ago
Jenkins 113d51f993 Merge "Timing issue in remote-keystone deployment model" 9 years ago