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

ceph-ansible: failure in ceph-mon playbook #1737

Closed
tmuthamizhan opened this issue Aug 2, 2017 · 6 comments
Closed

ceph-ansible: failure in ceph-mon playbook #1737

tmuthamizhan opened this issue Aug 2, 2017 · 6 comments

Comments

@tmuthamizhan
Copy link

ceph branch: jewel

ceph-ansible fails at "generate monitor initial keyring" in ceph-mon playbook with the following error "The conditional check 'not containerized_deployment' failed. The error was: error while evaluating conditional (not containerized_deployment): 'containerized_deployment' is undefined"

latest logs can be found at - http://qa-proxy.ceph.com/teuthology/teuthology-2017-08-02_04:15:01-ceph-ansible-jewel-distro-basic-vps/1471779/teuthology.log

@leseb
Copy link
Member

leseb commented Aug 3, 2017

What's the content of cephlab.yml? I suspect you need to update it to reflect our recent changes with the introduction of the ceph-defaults role, see: https://github.com/ceph/ceph-ansible/blob/master/site.yml.sample

@tmuthamizhan
Copy link
Author

@leseb, can you please merge the fix so we can proceed with testing?

@guits
Copy link
Collaborator

guits commented Aug 8, 2017

@tmuthamizhan, unless I missed something, I think there is a misunderstanding here? There is no fix to push, you just need to include the ceph-defaults role in your cephlab.yml, indeed, we merged some days ago in master some commits which introduced a new role ceph-defaults that needs to be called before playing ceph-common, this role handles all default variables and sets all many facts that which are all consumed by ceph-common.

@tmuthamizhan
Copy link
Author

@guits, where can i find cephlab.yml?
I believe this is a ceph-ansible change and thought you may simply add the new role ceph-defaults before ceph-common.

please correct me if am wrong

@andrewschoen
Copy link
Contributor

@tmuthamizhan you need to explicitly define ceph-defaults and ceph-common roles now. It looks like teuthology does that here https://github.com/ceph/teuthology/blob/master/teuthology/task/ceph_ansible.py#L32

Our site.yml.sample playbook also does this now: https://github.com/ceph/ceph-ansible/blob/master/site.yml.sample#L44

@tmuthamizhan
Copy link
Author

@andrewschoen , thank you! it works fine and am stuck with a new issue - #1752

@guits guits closed this as completed Aug 9, 2017
openstack-gerrit pushed a commit to openstack/openstack-ansible that referenced this issue Sep 19, 2017
ceph-ansible has undergone significant refactoring in their v3
development, adding new required roles such as ceph-defaults and
ceph-config, which are used to provide vars and configuration to
the ceph service roles. These roles must be executed before the
service roles to avoid missing vars[1][2].

During the v3 refactoring, ceph-common was removed as a galaxy-style
role dependency in the service roles meta files[3]. This means we
will need to explicitly execute ceph-common from now on also.

This change adds the defaults and config roles and executes them.
Also some minor cleanup such as alphabetizing the OpenStack roles
list is done.

Also added is an upgrade playbook, reno, and docs to assist in
cleaning up the older galaxy-named ceph common roles which are
no longer galaxy namespaced in our cloning configuration.

[1] http://jenkins-logs.objects-us-dfw-1.cloud.lstn.net/osa-ci/490192/1/21/logs/console.log
[2] ceph/ceph-ansible#1737
[3] ceph/ceph-ansible#1727

Change-Id: Ia8c0cb0a23f331fce7914afbfc05ef54ee3ffb0e
openstack-gerrit pushed a commit to openstack/openstack-ansible that referenced this issue Oct 25, 2017
ceph-ansible has undergone significant refactoring in their v3
development, adding new required roles such as ceph-defaults and
ceph-config, which are used to provide vars and configuration to
the ceph service roles. These roles must be executed before the
service roles to avoid missing vars[1][2].

During the v3 refactoring, ceph-common was removed as a galaxy-style
role dependency in the service roles meta files[3]. This means we
will need to explicitly execute ceph-common from now on also.

This change adds the defaults and config roles and executes them.
Also some minor cleanup such as alphabetizing the OpenStack roles
list is done.

Also added is an upgrade playbook, reno, and docs to assist in
cleaning up the older galaxy-named ceph common roles which are
no longer galaxy namespaced in our cloning configuration.

[1] http://jenkins-logs.objects-us-dfw-1.cloud.lstn.net/osa-ci/490192/1/21/logs/console.log
[2] ceph/ceph-ansible#1737
[3] ceph/ceph-ansible#1727

Conflicts:
  ansible-role-requirements.yml

Change-Id: Ia8c0cb0a23f331fce7914afbfc05ef54ee3ffb0e
(cherry picked from commit a53f1ae)
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

4 participants