3par driver does not reestablish CHAP session correctly if compute is rebooted

Bug #1690244 reported by Arun Kant
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Fix Released
Medium
Vivek Soni

Bug Description

We are seeing failure with CHAP authentication for 3Par iscsi driver when compute instances are restarted after host reboot.

Created compute servers on a specific host with 3 Par volumes and they are successfully started and attached to volumes. Stopped the nova instances running on host and then host was rebooted. Then we tried starting instances on that compute host, there are no any existing attached volumes. Instance start failed with error in compute log and then next instance start worked. For example, if you have X instances you may need to try to start different instances until you hit the one that created the original CHAP session.

As per nova block_device_mapping information, the credentials information is different.

select connection_info from block_device_mapping;
stack@helion-cp1-c1-m1-mgmt:~$ jq . foo1.txt
{
"driver_volume_type": "iscsi",
"connector": {
"initiator": "iqn.1993-08.org.debian:01:f7d473312d32",
"ip": "192.168.22.15",
"platform": "x86_64",
"host": "helion-cp1-comp0002-mgmt",
"os_type": "linux2",
"multipath": false
},
"serial": "91764da8-304f-439e-a1f4-8d94755a86d7",
"data": {
"device_path": "/dev/disk/by-path/ip-192.168.107.8:3260-iscsi-iqn.2000-05.com.3pardata:21220002ac00b10a-lun-0",
"target_discovered": true,
"encrypted": false,
"qos_specs": null,
"target_iqn": "iqn.2000-05.com.3pardata:21220002ac00b10a",
"target_portal": "192.168.107.8:3260",
"auth_password": "CzSaZTdCW4SnueW5",
"target_lun": 0,
"access_mode": "rw",
"auth_username": "ha-volume-manager",
"auth_method": "CHAP"
}
}
{
"driver_volume_type": "iscsi",
"connector": {
"initiator": "iqn.1993-08.org.debian:01:f7d473312d32",
"ip": "192.168.22.15",
"platform": "x86_64",
"host": "helion-cp1-comp0002-mgmt",
"os_type": "linux2",
"multipath": false
},
"serial": "882e1c36-04c9-4165-8e45-387e773d0b3b",
"data": {
"device_path": "/dev/disk/by-path/ip-192.168.107.8:3260-iscsi-iqn.2000-05.com.3pardata:21220002ac00b10a-lun-1",
"target_discovered": true,
"encrypted": false,
"qos_specs": null,
"target_iqn": "iqn.2000-05.com.3pardata:21220002ac00b10a",
"target_portal": "192.168.107.8:3260",
"auth_password": "bgQoR4q4nz5pSPqE",
"target_lun": 1,
"access_mode": "rw",
"auth_username": "ha-volume-manager",
"auth_method": "CHAP"
}
}

Revision history for this message
Walt Boring (walter-boring) wrote :

The problem is that the _create_export() is trying to find HostVLUNs based off of the volume['host'], which is the cinder "host". That will never work, because the driver creates hosts based off of the os-brick connector['host']. This is completely broken as it is.

Changed in cinder:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (master)

Fix proposed to branch: master
Review: https://review.openstack.org/482103

Changed in cinder:
assignee: nobody → Vivek Soni (viveksoni)
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.openstack.org/482103
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=e7a5ae1eaea6fa5b0dfc58920773fadae7ba0a68
Submitter: Jenkins
Branch: master

commit e7a5ae1eaea6fa5b0dfc58920773fadae7ba0a68
Author: Vivek Soni <email address hidden>
Date: Tue Jul 11 03:07:51 2017 -0700

    3PAR: Get host from os-brick

    Driver create hosts from os-brick connector
    so get hosts from os-brick connector instead of
    volume.

    Change-Id: Ib55b22009a496bae002bda94190d041519090c75
    Closes-Bug: 1690244

Changed in cinder:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/cinder 11.0.0.0b3

This issue was fixed in the openstack/cinder 11.0.0.0b3 development milestone.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (stable/ocata)

Fix proposed to branch: stable/ocata
Review: https://review.openstack.org/496922

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (stable/ocata)

Reviewed: https://review.openstack.org/496922
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=7973f02e84702f5b22fc27ee0fcfcb79543f8d14
Submitter: Jenkins
Branch: stable/ocata

commit 7973f02e84702f5b22fc27ee0fcfcb79543f8d14
Author: Vivek Soni <email address hidden>
Date: Tue Jul 11 03:07:51 2017 -0700

    3PAR: Get host from os-brick

    Driver create hosts from os-brick connector
    so get hosts from os-brick connector instead of
    volume.

    Change-Id: Ib55b22009a496bae002bda94190d041519090c75
    Closes-Bug: 1690244
    (cherry picked from commit e7a5ae1eaea6fa5b0dfc58920773fadae7ba0a68)

tags: added: in-stable-ocata
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/cinder 10.0.6

This issue was fixed in the openstack/cinder 10.0.6 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to cinder (driverfixes/newton)

Fix proposed to branch: driverfixes/newton
Review: https://review.openstack.org/530862

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (driverfixes/newton)

Reviewed: https://review.openstack.org/530862
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=379024675e028d1635b3fac7af913274369a815c
Submitter: Zuul
Branch: driverfixes/newton

commit 379024675e028d1635b3fac7af913274369a815c
Author: Vivek Soni <email address hidden>
Date: Tue Jul 11 03:07:51 2017 -0700

    3PAR: Get host from os-brick

    Driver create hosts from os-brick connector
    so get hosts from os-brick connector instead of
    volume.

    Change-Id: Ib55b22009a496bae002bda94190d041519090c75
    Closes-Bug: 1690244
    (cherry picked from commit e7a5ae1eaea6fa5b0dfc58920773fadae7ba0a68)
    (cherry picked from commit 7973f02e84702f5b22fc27ee0fcfcb79543f8d14)

tags: added: in-driverfixes-newton
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.