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
debian/rpm split servers #7746
debian/rpm split servers #7746
Conversation
00793dc
to
7dbced2
Compare
@alimaredia can you please remove the "wip:" text in the git commit log ? Otherwise this looks good to me. Ali has run this through the ceph-deploy and upgrade-x Teuthology suites. @smithfarm @BRANTO1 @javacruft care to review? I would like to merge this Wednesday, barring any huge issues. |
7dbced2
to
705b12b
Compare
I'm not aware of any package that depends on "ceph", but that doesn't mean there aren't any. I think this makes sense.
|
Eventually the configuration management systems, docker files, and installer tools will need to be updated for this change, so that they only install the ceph-mon or ceph-osd or ceph-mds packages on the various cluster nodes. CC'ing @leseb @alfredodeza @andrewschoen for ceph-ansible FYI Not quite sure who's working on puppet-ceph these days; CC'ing @gfidente in case it's him :) |
@@ -536,6 +577,21 @@ librbd1 or libcephfs1 instead. | |||
|
|||
%endif | |||
|
|||
%package compat |
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.
Why don't we just build/ship an empty ceph package that does exactly this? I'd say people are quite used to 'ceph' being a shortcut for these 3 daemons or meaning something like 'default install'.
The packages probably do not depend directly on the ceph package but people (and their scripts) do.
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.
Hmm, ok, the patch does not delete the main ceph package. However, it deprecates (even obsoletes) it, here. I'm not sure what is the reason for that. The -compat packages are generally used to warn users that we are going to delete a (sub-)package. In this case, I don't think it would be of any benefit for us to delete the main ceph package. Why are we creating the ceph-compat package in the first place when the new ceph meta-package serves its purpose just as well?
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.
Thanks @BRANTO1 , good catch. "ceph-compat" came from my ancient version of this change, before we decided to convert "ceph" into a meta-package, and it can be dropped in this latest version. @alimaredia please just remove the ceph-compat subpackage.
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.
@ktdreyer should I also remove ceph-devel-compat, python-ceph-compat, and ceph-libs-compat? According to my audit those are empty as well (http://pad.ceph.com/p/package_contents)
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.
Those will need to stay for now (we could probably drop them after Jewel, since it's been so long, but let's not touch them now.) You can just drop this one ceph-compat package.
705b12b
to
65b7285
Compare
This will need to be rebased one more time |
@ktdreyer in the middle of a rebase i noticed that %{_libdir}/ceph and %{_libdir}/ceph/ceph_common.sh have become %{_libexecdir}/ceph and %{_libexecdir}/ceph/ceph_common.sh. Is the libexecdir way right? |
@alimaredia |
65b7285
to
5c0117b
Compare
Split up the "ceph" package into four new packages: 1. ceph-mon 2. ceph-osd 3. ceph-mds (already done on Debian) 4. ceph-base (files shared among multiple servers) and then: 5. Make "ceph" into a metapackage that depends on both -mon and -osd (and -mds, for RPMs). To describe the outcome of this change another way: For RPMs: - "ceph-{mon,osd,mds}" Require: ceph-base. - "ceph" will become a metapackage that Requires: ceph-{mon,osd,mds}. For DEBs: - "ceph-{mon,osd,mds}" will Depends: ceph-base. - "ceph" will become a metapackage that Depends: ceph-{mon,osd}. - "ceph" will continue to Recommends: ceph-mds New users should "yum install ceph-mon" or "yum install ceph-osd" (or "apt-get install ceph-mon", etc) in order to install the exact daemons that they need. http://tracker.ceph.com/issues/10587 Fixes: #10587 Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
5c0117b
to
0cbe3de
Compare
debian/rpm split servers Reviewed-by: Nathan Cutler <ncutler@suse.com> Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Will it be backported to Infernalis ? |
@FlorentCoppint Due to limited development, QA, and testing resources, we do not backport features unless they are required to support bugfixes. |
Ok, I said this because this commit solves an issue with "ceph_daemon.py" absent from "ceph-common" package in Infernalis. Maybe it have to be fixed in a separate commit ? |
Yes, that sounds like a separate Infernalis-specific bug that should be addressed in a separate commit. Would you please open a ticket at http://tracker.ceph.com/ ? |
@FlorentCoppint What operating system are you seeing this on? I'm guessing Ubuntu or Debian? |
Yes Debian Jessie, I opened an issue : http://tracker.ceph.com/issues/15046 |
@FlorentCoppint Right :-) Fixing it now; should make it into the next infernalis release. |
Split up the "ceph" package into four new packages:
and then:
(and -mds, for RPMs).
To describe the outcome of this change another way:
For RPMs:
"ceph-{mon,osd,mds}" Require: ceph-base.
"ceph" will become a metapackage that Requires: ceph-{mon,osd,mds}.
For DEBs:
"ceph-{mon,osd,mds}" will Depends: ceph-base.
"ceph" will become a metapackage that Depends: ceph-{mon,osd}.
"ceph" will continue to Recommends: ceph-mds
New users should "yum install ceph-mon" or "yum install ceph-osd" (or
"apt-get install ceph-mon", etc) in order to install the exact daemons
that they need.
http://tracker.ceph.com/issues/10587 Fixes: #10587
Signed-off-by: Ken Dreyer kdreyer@redhat.com