-
Notifications
You must be signed in to change notification settings - Fork 141
install cephadm on all nodes #3552
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
base: main
Are you sure you want to change the base?
install cephadm on all nodes #3552
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
2241460 to
0c9047f
Compare
| ansible.builtin.include_role: | ||
| name: cifmw_cephadm | ||
| tasks_from: install_cephadm | ||
| when: cifmw_cephadm_install_on_all_nodes | default(false) | bool |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cifmw_cephadm_install_on_all_nodes: true var will be used only by the adoption jobs which uses external ceph.
| ansible.builtin.include_role: | ||
| name: cifmw_cephadm | ||
| tasks_from: install_cephadm | ||
| when: cifmw_cephadm_install_on_all_nodes | default(false) | bool |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see that the purpose here is to install the cephadm package in all the HCI nodes that are part of the ceph cluster. By doing this, when the migration happens (e.g. mons are moved from controller-0 to compute-0 and so forth) you have and available cephadm command to interact with the cluster.
Also I see you can't reuse pre.yaml because it is called in the bootstrap part that is run against the first mon.
I assume this task preserves backward compatibility due to default(false), so we can explicitly add it in that context.
I'd like to have @fultonj's opinion on this, because I'm not entirely sure if there's a better way to perform the same task in a different part of the process.
The other question is: should this be part of post_tasks or should be handled in it's own playbook (I see we have many playbooks here)?
It might result confusing having it within the "Distribute SSH keypairs ...", so I'm wondering if we should do things differently.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For example we could have a small "Prerequisites" playbook that does the cephadm install in the short term, and review what we do in general to have some common section that applies to all the involved nodes.
Just an idea, but I'd like to hear your opinions first.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@fmount Thanks for the feedback! You're right that having it within the SSH keypairs section is a bit confusing organizationally.
I think of two options:
Option 1: Update the play name from:
- name: Distribute SSH keypair to target nodes
to:
- name: Distribute SSH keypair to target nodes and prepare node prerequisites
The task would remain in post_tasks, called conditionally based on cifmw_cephadm_install_on_all_nodes and keep backward compatibility with default(false).
Option 2: Move this to a separate play in the same file:
- name: Ceph prerequisites
hosts: "{{ cifmw_ceph_target | default('computes') }}"
tasks:
- name: Install cephadm package on all nodes
ansible.builtin.include_role:
name: cifmw_cephadm
tasks_from: install_cephadm
when: cifmw_cephadm_install_on_all_nodes | default(false) | bool
This way it can serve as a home for other prerequisite tasks in the future.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@fultonj Need your opinion on this.
|
This PR is stale because it has been for over 15 days with no activity. |
0c9047f to
a27c4f4
Compare
No description provided.