Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cinderclient version not supported - seems v2 is used #715

Open
maikenp opened this issue Mar 16, 2022 · 5 comments
Open

cinderclient version not supported - seems v2 is used #715

maikenp opened this issue Mar 16, 2022 · 5 comments

Comments

@maikenp
Copy link
Contributor

maikenp commented Mar 16, 2022

Hi,

I did a fresh install of elasticluster today.

OS: centos stream 8

Procedure used to install:

sudo yum install gcc gcc-c++ git libffi-devel openssl-devel python3 python3-devel python3 python3-virtualenv
virtualenv --python python3 elasticluster
. elasticluster/bin/activate
cd elasticluster
git clone https://github.com/elasticluster/elasticluster.git src
cd src
pip3 install --upgrade 'pip>=9.0.0'
pip3 install -e .

My config:

[cloud/nrec]
provider=openstack
auth_url=https://api.nrec.no:5000/v3
username=<some-username>
password=<some-pwd>
project_name=<some-proj-name>
user_domain_name=<some-domain-name>
project_domain_name=<some-project-domain-name>
region_name=<region>
identity_api_version=3

[login/centos]
image_user=centos
image_user_sudo=root
image_sudo=True
user_key_name=<some-key-name>
user_key_private=<some-private-key>
user_key_public=<some-public-key>

[setup/slurm]
slow_but_safer=True
provider=ansible
global_var_multiuser_cluster=no
login_groups=slurm_master
compute_groups=slurm_worker

[cluster/student01]
cloud=nrec
login=centos
setup=slurm
security_group=<some-sec-group>
login_nodes=1
compute_nodes=2
ssh_to=login
network_ids=<some-id>
image_id=<some-id>

[cluster/student01/login]
flavor=m1.small

[cluster/student01/compute]
flavor=m1.small

This is the result:

(elasticluster) [centos@admin-student01 src]$ elasticluster start student01
2022-03-16 17:21:57 admin-student01.novalocal elasticluster[16541] WARNING FutureWarning: OpenStack auth URL is present both in the environment and the config file. Environment variable OS_AUTH_URL takes precedence, but this may change in the future.
Starting cluster `student01` with:
* 1 login nodes.
* 2 compute nodes.
(This may take a while...)
Version 2 is not supported, use supported version 3 instead.
2022-03-16 17:21:57 admin-student01.novalocal elasticluster[16541] ERROR Could not start node `compute002`: Invalid client version '2.0'. Major part should be '3' -- <class 'cinderclient.exceptions.UnsupportedVersion'>
Traceback (most recent call last):
  File "/home/centos/elasticluster/src/elasticluster/cluster.py", line 583, in _start_node
    node.start()
  File "/home/centos/elasticluster/src/elasticluster/cluster.py", line 1325, in start
    **self.extra)
  File "/home/centos/elasticluster/src/elasticluster/providers/openstack.py", line 484, in start_instance
    self._init_os_api()
  File "/home/centos/elasticluster/src/elasticluster/providers/openstack.py", line 331, in _init_os_api
    cacert=self._os_cacert)
  File "/home/centos/elasticluster/lib/python3.6/site-packages/cinderclient/client.py", line 851, in Client
    api_version, client_class = _get_client_class_and_version(version)
  File "/home/centos/elasticluster/lib/python3.6/site-packages/cinderclient/client.py", line 761, in _get_client_class_and_version
    version = api_versions.get_api_version(version)
  File "/home/centos/elasticluster/lib/python3.6/site-packages/cinderclient/api_versions.py", line 231, in get_api_version
    check_major_version(api_version)
  File "/home/centos/elasticluster/lib/python3.6/site-packages/cinderclient/api_versions.py", line 216, in check_major_version
    raise exceptions.UnsupportedVersion(msg)
cinderclient.exceptions.UnsupportedVersion: Invalid client version '2.0'. Major part should be '3'
Version 2 is not supported, use supported version 3 instead.

Related to:
https://groups.google.com/g/elasticluster/c/OwGEtheH5Nc

pip3 freeze:

(elasticluster) [centos@admin-student01 ~]$ pip3 freeze
adal==1.2.7
ansible==2.9.27
apache-libcloud==3.5.0
appdirs==1.4.4
attrs==21.4.0
autopage==0.5.0
azure-common==1.1.28
azure-core==1.23.0
azure-mgmt-compute==26.1.0
azure-mgmt-core==1.3.0
azure-mgmt-network==19.3.0
azure-mgmt-resource==20.1.0
Babel==2.9.1
bcrypt==3.2.0
boto==2.49.0
cachetools==4.2.4
certifi==2021.10.8
cffi==1.15.0
charset-normalizer==2.0.12
click==8.0.4
cliff==3.10.1
cmd2==2.4.0
coloredlogs==15.0.1
contextlib2==21.6.0
cryptography==36.0.2
debtcollector==2.5.0
decorator==5.1.1
distro==1.7.0
dogpile.cache==1.1.5
-e git+https://github.com/elasticluster/elasticluster.git@6bfad91bd18375533a616ac88b89e2266bb5c8c6#egg=elasticluster
future==0.18.2
google-api-core==2.7.1
google-api-python-client==2.41.0
google-auth==2.6.0
google-auth-httplib2==0.1.0
google-compute-engine==2.8.13
googleapis-common-protos==1.55.0
httplib2==0.20.4
humanfriendly==10.0
idna==3.3
importlib-metadata==4.8.3
importlib-resources==5.4.0
ipaddress==1.0.23
iso8601==1.0.2
isodate==0.6.1
Jinja2==3.0.3
jmespath==0.10.0
jsonpatch==1.32
jsonpointer==2.2
jsonschema==3.2.0
keystoneauth1==4.5.0
MarkupSafe==2.0.1
msgpack==1.0.3
msrest==0.6.21
msrestazure==0.6.4
munch==2.5.0
netaddr==0.8.0
netifaces==0.11.0
oauth2client==4.1.3
oauthlib==3.2.0
openstacksdk==0.61.0
os-client-config==2.1.0
os-service-types==1.7.0
osc-lib==2.5.0
oslo.config==8.8.0
oslo.context==4.1.0
oslo.i18n==5.1.0
oslo.log==4.7.0
oslo.serialization==4.3.0
oslo.utils==4.12.2
packaging==21.3
paramiko==2.10.2
pbr==5.8.1
prettytable==2.5.0
protobuf==3.19.4
pyasn1==0.4.8
pyasn1-modules==0.2.8
pyCLI==2.0.3
pycparser==2.21
pycrypto==2.6.1
pyinotify==0.9.6
PyJWT==2.3.0
PyNaCl==1.5.0
pyOpenSSL==22.0.0
pyparsing==3.0.7
pyperclip==1.8.2
pyrsistent==0.18.0
python-cinderclient==8.3.0
python-dateutil==2.8.2
python-gflags==3.1.2
python-glanceclient==3.6.0
python-keystoneclient==4.4.0
python-neutronclient==7.8.0
python-novaclient==17.7.0
pytz==2021.3
PyYAML==6.0
requests==2.27.1
requests-oauthlib==1.3.1
requestsexceptions==1.4.0
rfc3986==1.5.0
rsa==4.8
scandir==1.10.0
schema==0.7.5
SecretStorage==2.3.1
simplejson==3.17.6
six==1.16.0
stevedore==3.5.0
subprocess32==3.5.4
typing_extensions==4.1.1
uritemplate==4.1.1
urllib3==1.26.9
warlock==1.3.3
wcwidth==0.2.5
wrapt==1.14.0
zipp==3.6.0
@riccardomurri
Copy link
Contributor

I've pushed the temporary fix suggested by Vitor in the email you cited, i.e., pin python-cinderclient to v7.4.0 -- can you please check if it works?

@maikenp
Copy link
Contributor Author

maikenp commented Mar 16, 2022 via email

@maikenp
Copy link
Contributor Author

maikenp commented Mar 16, 2022

Hi again,

Next problem in line, maybe I should create a separate issue:

2022-03-16 22:04:14 admin-student01.novalocal elasticluster[18739] WARNING ResourceWarning: unclosed <socket.socket fd=38, family=AddressFamily.AF_INET6, type=2049, proto=0, laddr=('2001:700:2:8200::213a', 33734, 0, 0)>
Configuring the cluster ...
(this too may take a while)
[WARNING]: Could not match supplied host pattern, ignoring: pvfs2
[WARNING]: Could not match supplied host pattern, ignoring: pvfs2_data
[WARNING]: Could not match supplied host pattern, ignoring: pvfs2_meta
[WARNING]: Could not match supplied host pattern, ignoring: pvfs2_client
[WARNING]: Could not match supplied host pattern, ignoring: ipython_controller
[WARNING]: Could not match supplied host pattern, ignoring: ipython_engine
[WARNING]: Could not match supplied host pattern, ignoring: jenkins

PLAY [Prepare VM for running Ansible] ************************************************************************************************************************************

TASK [Ensure Python is installed] ****************************************************************************************************************************************
fatal: [compute002]: FAILED! => {"changed": true, "msg": "non-zero return code", "rc": 70, "stderr": "Shared connection to 158.37.63.50 closed.\r\n", "stderr_lines": ["Shared connection to 158.37.63.50 closed."], "stdout": "install-py2.sh: ERROR: Python interpreter '/usr/bin/python' not found, even after installation. Aborting.\r\n", "stdout_lines": ["install-py2.sh: ERROR: Python interpreter '/usr/bin/python' not found, even after installation. Aborting."]}
fatal: [compute001]: FAILED! => {"changed": true, "msg": "non-zero return code", "rc": 70, "stderr": "Shared connection to 158.39.200.214 closed.\r\n", "stderr_lines": ["Shared connection to 158.39.200.214 closed."], "stdout": "install-py2.sh: ERROR: Python interpreter '/usr/bin/python' not found, even after installation. Aborting.\r\n", "stdout_lines": ["install-py2.sh: ERROR: Python interpreter '/usr/bin/python' not found, even after installation. Aborting."]}
fatal: [login001]: FAILED! => {"changed": true, "msg": "non-zero return code", "rc": 70, "stderr": "Shared connection to 2001:700:2:8200::2436 closed.\r\n", "stderr_lines": ["Shared connection to 2001:700:2:8200::2436 closed."], "stdout": "install-py2.sh: ERROR: Python interpreter '/usr/bin/python' not found, even after installation. Aborting.\r\n", "stdout_lines": ["install-py2.sh: ERROR: Python interpreter '/usr/bin/python' not found, even after installation. Aborting."]}

Are you assuming python2?

@riccardomurri
Copy link
Contributor

Are you assuming python2?

Yes, most of that code should be revised now that Py3 is the default on most platforms. Can you please open a separate issue?

@maikenp
Copy link
Contributor Author

maikenp commented Mar 17, 2022

Thanks for the prompt reply and fixing the earlier bug.

I think I will come back to it at some later point. It would seem maybe that the software is not sufficiently maintained at the moment, so will come back later and see then!

Thanks again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants