Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1672065

Summary: [cinderlib] - Add managed SD on HP3PAR fails with : [CinderlibExecutor]cinderlib output: /usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:39: CryptographyDeprecationWarning: encode_point has been deprecated
Product: [oVirt] ovirt-engine Reporter: Avihai <aefrat>
Component: BLL.StorageAssignee: Eyal Shenitzky <eshenitz>
Status: CLOSED CURRENTRELEASE QA Contact: Shir Fishbain <sfishbai>
Severity: high Docs Contact:
Priority: unspecified    
Version: 4.3.0CC: bugs, frolland, tnisan
Target Milestone: ovirt-4.3.2Flags: rule-engine: ovirt-4.3+
Target Release: 4.3.2.1   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ovirt-engine-4.3.2.1 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-03-19 10:05:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Storage RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1539837    
Attachments:
Description Flags
engine log none

Description Avihai 2019-02-03 13:30:56 UTC
Description of problem:
Add a managed SD on HP3PAR fails with:

2019-02-03 14:42:28,673+02 INFO  [org.ovirt.engine.core.common.utils.cinderlib.CinderlibExecutor] (default task-6) [f2232630-86e2-41db-80bf-e5f0586b46bf] cinderlib output: /usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:39: CryptographyDeprecationWarning: encode_point has been deprecated on EllipticCurvePublicNumbers and will be removed in a future version. Please use EllipticCurvePublicKey.public_bytes to obtain both compressed and uncompressed point encoding.
  m.add_string(self.Q_C.public_numbers().encode_point())
/usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:96: CryptographyDeprecationWarning: Support for unsafe construction of public numbers from encoded data will be removed in a future version. Please use EllipticCurvePublicKey.from_encoded_point
  self.curve, Q_S_bytes
/usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:111: CryptographyDeprecationWarning: encode_point has been deprecated on EllipticCurvePublicNumbers and will be removed in a future version. Please use EllipticCurvePublicKey.public_bytes to obtain both compressed and uncompressed point encoding.
  hm.add_string(self.Q_C.public_numbers().encode_point())
{"driver_version": "4.0.2", "replication_enabled": false, "replication_targets": [], "array_id": 139115, "pools": [{"thick_provisioning_support": true, "bandwidth": null, "consistent_group_snapshot_enabled": true, "latency": null, "filter_function": null, "compression": true, "total_volumes": 17, "consistent_group_replication_enabled": false, "free_capacity_gb": 7134, "queue_length": null, "backend_state": "up", "pool_name": "O", "goodness_function": null, "multiattach": false, "provisioned_capacity_gb": 40, "thin_provisioning_support": true, "io_size": null, "reserved_percentage": 15, "QoS_support": true, "capacity_utilization": 0.23772898895259406, "total_capacity_gb": 7151, "location_info": "HPE3PARDriver:CZ3836C3RB:O", "avg_busy_perc": null, "throughput": null, "max_over_subscription_ratio": "20.0"}], "vendor_name": "Hewlett Packard Enterprise", "volume_backend_name": "cinder-hp3par", "storage_protocol": "iSCSI"}
2019-02-03 14:42:28,682+02 ERROR [org.ovirt.engine.core.bll.storage.domain.GetManagedBlockStorageStatsCommand] (default task-6) [f2232630-86e2-41db-80bf-e5f0586b46bf] Failed to fetch Managed block storage stats, output: '/usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:39: CryptographyDeprecationWarning: encode_point has been deprecated on EllipticCurvePublicNumbers and will be removed in a future version. Please use EllipticCurvePublicKey.public_bytes to obtain both compressed and uncompressed point encoding.
  m.add_string(self.Q_C.public_numbers().encode_point())
/usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:96: CryptographyDeprecationWarning: Support for unsafe construction of public numbers from encoded data will be removed in a future version. Please use EllipticCurvePublicKey.from_encoded_point
  self.curve, Q_S_bytes
/usr/lib/python2.7/site-packages/paramiko/kex_ecdh_nist.py:111: CryptographyDeprecationWarning: encode_point has been deprecated on EllipticCurvePublicNumbers and will be removed in a future version. Please use EllipticCurvePublicKey.public_bytes to obtain both compressed and uncompressed point encoding.
  hm.add_string(self.Q_C.public_numbers().encode_point())



Version-Release number of selected component (if applicable):
ovirt-engine : 4.3.0.2-0.1.el7
CinderLib: 0.3.5

How reproducible:
100%

Steps to Reproduce:
1.Add via REST HP3PAR storage domain:

request:
<storage_domain>
   <name>cinder-hp3par</name>
   <type>managed_block_storage</type>
   <storage>
      <type>managed_block_storage</type>
      <driver_options>
      	<property>
            <name>hpe3par_api_url</name>
            <value>https://3par-cli.mgmt.lab3.tlv.redhat.com:8080/api/v1</value>
         </property>
      	<property>
            <name>san_ip</name>
            <value>10.35.84.14</value>
         </property>
      	<property>
            <name>san_login</name>
            <value>admin</value>
         </property>
         <property>
            <name>san_password</name>
            <value>Qum!0net</value>
         </property>
         <property>
            <name>hpe3par_username</name>
            <value>3paredit</value>
         </property>
         <property>
            <name>hpe3par_password</name>
            <value>123456</value>
         </property>
         <property>
            <name>hpe3par_cpg</name>
            <value>O</value>
         </property>
         <property>
            <name>volume_driver</name>
            <value>cinder.volume.drivers.hpe.hpe_3par_fc.HPE3PARFCDriver</value>
         </property>
         <property>
            <name>hpe3par_debug</name>
            <value>False</value>
         </property>
         <property>
            <name>hpe3par_iscsi_chap_enabled</name>
            <value>False</value>
         </property>
         <property>
            <name>hpe3par_snapshot_retention</name>
            <value>48</value>
         </property>
         <property>
            <name>hpe3par_snapshot_expiration</name>
            <value>72</value>
         </property>
         <property>
            <name>max_over_subscription_ratio</name>
            <value>20.0</value>
         </property>
         <property>
            <name>reserved_percentage</name>
            <value>15</value>
         </property>
      </driver_options>
   </storage>
   <host>
      <name>host_mixed_1</name>
   </host>
</storage_domain>


Actual results:
Add SD fails with CryptographyDeprecationWarning errors.

Expected results:
Add SD works without this error.

Additional info:

Comment 1 Avihai 2019-02-03 13:32:18 UTC
Created attachment 1526376 [details]
engine log

Comment 2 Avihai 2019-02-03 13:34:15 UTC
Fred, we saw this issue together you solved it by removing the deprecated package and installing a new one.

Comment 3 Avihai 2019-02-03 13:41:51 UTC
(In reply to Avihai from comment #2)
> Fred, we saw this issue together you solved it by removing the deprecated
> package and installing a new one.

downgrade the version with pip:
pip2.7 install cryptography==2.2.2

Comment 4 Avihai 2019-03-18 09:59:26 UTC
Verified on ovirt-engine 4.3.2.1-0.1

Comment 5 Sandro Bonazzola 2019-03-19 10:05:22 UTC
This bugzilla is included in oVirt 4.3.2 release, published on March 19th 2019.

Since the problem described in this bug report should be
resolved in oVirt 4.3.2 release, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.