]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
build/ops: adding build spec for immutable object cache daemon
authorYuan Zhou <yuan.zhou@intel.com>
Sat, 29 Dec 2018 08:50:44 +0000 (16:50 +0800)
committerYuan Zhou <yuan.zhou@intel.com>
Thu, 21 Mar 2019 16:16:26 +0000 (00:16 +0800)
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
ceph.spec.in
debian/ceph-immutable-object-cache.install [new file with mode: 0644]
debian/control
debian/rules
doc/man/8/CMakeLists.txt
doc/man/8/ceph-immutable-object-cache.rst [new file with mode: 0644]
doc/man_index.rst
systemd/CMakeLists.txt

index 84a8127d72099db11c18988d5ac249e364e07a1e..c8ffc585b4c1bfd5deb22658d4b588feebce5a31 100644 (file)
@@ -580,6 +580,16 @@ Requires:  librbd1 = %{_epoch_prefix}%{version}-%{release}
 Daemon for mirroring RBD images between Ceph clusters, streaming
 changes asynchronously.
 
+%package -n ceph-immutable-object-cache
+Summary:       Ceph daemon for immutable object cache
+%if 0%{?suse_version}
+Group:         System/Filesystems
+%endif
+Requires:      ceph-common = %{_epoch_prefix}%{version}-%{release}
+Requires:      libradospp1 = %{_epoch_prefix}%{version}-%{release}
+%description -n ceph-immutable-object-cache
+Daemon for immutable object cache.
+
 %package -n rbd-nbd
 Summary:       Ceph RBD client base on NBD
 %if 0%{?suse_version}
@@ -1736,6 +1746,54 @@ if [ $1 -ge 1 ] ; then
   fi
 fi
 
+%files -n ceph-immutable-object-cache
+%{_bindir}/ceph-immutable-object-cache
+%{_mandir}/man8/ceph-immutable-object-cache.8*
+%{_unitdir}/ceph-immutable-object-cache@.service
+%{_unitdir}/ceph-immutable-object-cache.target
+
+%post -n ceph-immutable-object-cache
+%if 0%{?suse_version}
+if [ $1 -eq 1 ] ; then
+  /usr/bin/systemctl preset ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target >/dev/null 2>&1 || :
+fi
+%endif
+%if 0%{?fedora} || 0%{?rhel}
+%systemd_post ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
+%endif
+if [ $1 -eq 1 ] ; then
+/usr/bin/systemctl start ceph-immutable-object-cache.target >/dev/null 2>&1 || :
+fi
+
+%preun -n ceph-immutable-object-cache
+%if 0%{?suse_version}
+%service_del_preun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
+%endif
+%if 0%{?fedora} || 0%{?rhel}
+%systemd_preun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
+%endif
+
+%postun -n ceph-immutable-object-cache
+test -n "$FIRST_ARG" || FIRST_ARG=$1
+%if 0%{?suse_version}
+DISABLE_RESTART_ON_UPDATE="yes"
+%service_del_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
+%endif
+%if 0%{?fedora} || 0%{?rhel}
+%systemd_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target
+%endif
+if [ $FIRST_ARG -ge 1 ] ; then
+  # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
+  # "yes". In any case: if units are not running, do not touch them.
+  SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph
+  if [ -f $SYSCONF_CEPH -a -r $SYSCONF_CEPH ] ; then
+    source $SYSCONF_CEPH
+  fi
+  if [ "X$CEPH_AUTO_RESTART_ON_UPGRADE" = "Xyes" ] ; then
+    /usr/bin/systemctl try-restart ceph-immutable-object-cache@\*.service > /dev/null 2>&1 || :
+  fi
+fi
+
 %files -n rbd-nbd
 %{_bindir}/rbd-nbd
 %{_mandir}/man8/rbd-nbd.8*
diff --git a/debian/ceph-immutable-object-cache.install b/debian/ceph-immutable-object-cache.install
new file mode 100644 (file)
index 0000000..76daf19
--- /dev/null
@@ -0,0 +1,3 @@
+lib/systemd/system/ceph-immutable-object-cache*
+usr/bin/ceph-immutable-object-cache
+usr/share/man/man8/ceph-immutable-object-cache.8
index e7a01c6ff88f9b77633dae7a2f49ca2b1d92ec7b..ac61a87164eca7da5534b00c395c703ea3a18c8f 100644 (file)
@@ -438,6 +438,21 @@ Description: Ceph daemon for mirroring RBD images
  daemon for mirroring RBD images between Ceph clusters, streaming
  changes asynchronously.
 
+Package: ceph-immutable-object-cache
+Architecture: linux-any
+Depends: ceph-common (= ${binary:Version}),
+         librados3 (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
+Description: Ceph daemon for mirroring RBD images
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.  This is a
+ daemon for mirroring RBD images between Ceph clusters, streaming
+ changes asynchronously.
+
+
+
 Package: rbd-mirror-dbg
 Architecture: linux-any
 Section: debug
index 8579f42613f32dbe2c534d1fd828961f0ae77b49..33b5f28ff70162164935ab525513c9a243956cce 100755 (executable)
@@ -96,6 +96,7 @@ override_dh_strip:
        dh_strip -pceph-fuse --dbg-package=ceph-fuse-dbg
        dh_strip -prbd-fuse --dbg-package=rbd-fuse-dbg
        dh_strip -prbd-mirror --dbg-package=rbd-mirror-dbg
+       dh_strip -pceph-immutable-object-cache --dbg-package=ceph-immutable-object-cache-dbg
        dh_strip -prbd-nbd --dbg-package=rbd-nbd-dbg
        dh_strip -pceph-common --dbg-package=ceph-common-dbg
        dh_strip -plibrados2 --dbg-package=librados2-dbg
index dd3f8af3f3b217d09f97c97854f85e6e26a5ec75..1fb6465ae3ff00f36e025fc9ba9131d84e49b81e 100644 (file)
@@ -68,6 +68,7 @@ if(WITH_RBD)
   endif()
 endif()
 
+list(APPEND man_srcs ceph-immutable-object-cache.rst)
 foreach(man ${man_srcs})
   list(APPEND sphinx_input ${CMAKE_CURRENT_SOURCE_DIR}/${man})
   # mount.ceph.rst => mount if we use
diff --git a/doc/man/8/ceph-immutable-object-cache.rst b/doc/man/8/ceph-immutable-object-cache.rst
new file mode 100644 (file)
index 0000000..4efbf96
--- /dev/null
@@ -0,0 +1,76 @@
+:orphan:
+
+======================================================================
+ ceph-immutable-object-cache -- Ceph daemon for immutable object cache
+======================================================================
+
+.. program:: ceph-immutable-object-cache
+
+Synopsis
+========
+
+| **ceph-immutable-object-cache**
+
+
+Description
+===========
+
+:program:`ceph-immutable-object-cache` is a daemon for object cache of RADOS
+objects among Ceph clusters. It will promote the objects to a local directory
+upon promote requests and future reads will be serviced from these cached
+objects.
+
+It connects to remote clusters via the RADOS protocol, relying on
+default search paths to find ceph.conf files, monitor addresses and
+authentication information for them, i.e. ``/etc/ceph/$cluster.conf``,
+``/etc/ceph/$cluster.keyring``, and
+``/etc/ceph/$cluster.$name.keyring``, where ``$cluster`` is the
+human-friendly name of the cluster, and ``$name`` is the rados user to
+connect as, e.g. ``client.ceph-immutable-object-cache``.
+
+
+Options
+=======
+
+.. option:: -c ceph.conf, --conf=ceph.conf
+
+   Use ``ceph.conf`` configuration file instead of the default
+   ``/etc/ceph/ceph.conf`` to determine monitor addresses during startup.
+
+.. option:: -m monaddress[:port]
+
+   Connect to specified monitor (instead of looking through ``ceph.conf``).
+
+.. option:: -i ID, --id ID
+
+   Set the ID portion of name for ceph-immutable-object-cache
+
+.. option:: -n TYPE.ID, --name TYPE.ID
+
+   Set the rados user name for the gateway (eg. client.ceph-immutable-object-cache)
+
+.. option:: --cluster NAME
+
+   Set the cluster name (default: ceph)
+
+.. option:: -d
+
+   Run in foreground, log to stderr
+
+.. option:: -f
+
+   Run in foreground, log to usual location
+
+
+Availability
+============
+
+:program:`ceph-immutable-object-cache` is part of Ceph, a massively scalable, open-source, distributed
+storage system. Please refer to the Ceph documentation at http://ceph.com/docs for
+more information.
+
+
+See also
+========
+
+:doc:`rbd <rbd>`\(8)
index d32fd2fe2a58cbc349f3723113cd22766d259695..0c54f32fb6c986e7f11ac7648e7b95c7377bc719 100644 (file)
@@ -40,3 +40,4 @@
    man/8/rbd-replay
    man/8/rbd
    man/8/rbdmap
+   man/8/ceph-immutable-object-cache
index 56be619d44cabe80a2ad401a40d025f8479367c0..43adf7be142c5f229c61dd04eb3b2fc6da4b2f80 100644 (file)
@@ -12,6 +12,7 @@ foreach(service
     ceph-osd@
     ceph-radosgw@
     ceph-rbd-mirror@
+    ceph-immutable-object-cache@
     rbdmap)
   configure_file(
     ${service}.service.in
@@ -31,5 +32,6 @@ install(FILES
   ceph-mds.target
   ceph-radosgw.target
   ceph-rbd-mirror.target
+  ceph-immutable-object-cache.target
   ceph-volume@.service
   DESTINATION ${CMAKE_INSTALL_SYSTEMD_SERVICEDIR})