[Unit] Description=NFS-Ganesha file server Documentation=http://github.com/nfs-ganesha/nfs-ganesha/wiki After=network.target [Service] EnvironmentFile=-/etc/environment {% if container_cli == 'podman' %} ExecStartPre=-/usr/bin/rm -f /%t/%n-pid /%t/%n-cid ExecStartPre=-/usr/bin/{{ container_cli }} rm --storage ceph-nfs-%i ExecStartPre=-/usr/bin/mkdir -p /var/log/ceph /var/log/ganesha {% endif %} ExecStartPre=-/usr/bin/{{ container_cli }} rm ceph-nfs-%i ExecStartPre=/usr/bin/mkdir -p /etc/ceph /etc/ganesha /var/lib/nfs/ganesha /var/log/ganesha ExecStart=/usr/bin/{{ container_cli }} run --rm --net=host \ --pids-limit={{ 0 if container_cli == 'podman' else -1 }} \ -d --log-driver journald --conmon-pidfile /%t/%n-pid --cidfile /%t/%n-cid \ -v /var/lib/ceph:/var/lib/ceph:z \ -v {{ tripleo_ceph_client_config_home }}:/etc/ceph:z \ -v /var/lib/nfs/ganesha:/var/lib/nfs/ganesha:z \ -v /etc/ganesha:/etc/ganesha:z \ -v /var/run/ceph:/var/run/ceph:z \ -v /var/log/ceph:/var/log/ceph:z \ -v /var/log/ganesha:/var/log/ganesha:z \ -v /etc/localtime:/etc/localtime:ro \ -v /var/lib/nfs/rpc_pipefs/nfs:/var/lib/nfs/rpc_pipefs/nfs \ --name=ceph-nfs-{{ tripleo_cephadm_ceph_nfs_service_suffix | default(ansible_facts['hostname']) }} \ {% if tripleo_cephadm_ceph_nfs_dynamic_exports | bool %} --privileged \ -v /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket \ {% endif -%} {# Ceph Pacific is defined in the form "v16.x.y": filtering "16.*" is enough #} {% if (tripleo_cephadm_ceph_version is defined) and (tripleo_cephadm_ceph_version is match(tripleo_cephadm_pacific_filter)) %} -e CLUSTER={{ tripleo_cephadm_cluster }} \ -e CEPH_DAEMON=NFS \ -e CONTAINER_IMAGE={{ tripleo_cephadm_container_ns }}/{{ tripleo_cephadm_container_image }}:{{ tripleo_cephadm_container_tag }} \ {{ tripleo_cephadm_container_ns }}/{{ tripleo_cephadm_container_image }}:{{ tripleo_cephadm_container_tag }} {% else %} --entrypoint=/bin/sh \ {{ tripleo_cephadm_container_ns }}/{{ tripleo_cephadm_container_image }}:{{ tripleo_cephadm_container_tag }} \ -c 'rpcbind && rpc.statd -L && rpc.idmapd && /usr/bin/ganesha.nfsd -F -L STDOUT' {% endif -%} ExecStop=-/usr/bin/sh -c "/usr/bin/{{ container_cli }} rm -f `cat /%t/%n-cid`" KillMode=none Restart=always RestartSec=10s TimeoutStartSec=120 TimeoutStopSec=15 Type=forking PIDFile=/%t/%n-pid [Install] WantedBy=multi-user.target