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

docs for mover resource requests/limits #1103

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions docs/usage/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Usage
:hidden:

permissionmodel
resourcerequirements
triggers
metrics/index
rclone/index
Expand Down Expand Up @@ -44,6 +45,13 @@ Namespaces. The permissions that are given to these Pods control what data can
be replicated. They also affect the security of the cluster. Please see the
:doc:`permission model documentation <permissionmodel>` for more details.

Resource requirements
=====================

The data replication mover Pods can be configured to set specific resource requirements. This can include CPU and memory
resource requirements or resource limits. Please see the
:doc:`resource requirements documentation <resourcerequirements>` for more details.

Triggers
========

Expand Down
45 changes: 45 additions & 0 deletions docs/usage/resourcerequirements.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
===========================
Mover resource requirements
===========================

.. toctree::
:hidden:

VolSync's data movers do not run with any specific limits or requests by default.
Each mover's spec can be modified to set resource requests to set limits or requests.

Note that setting these values can have negative affects as mover pods can fail to be
scheduled if requests are set too high or crash due to lack of resources if limits are
set.

Each mover spec has a spec section where ``moverResources`` can be set. Here is an
example restic ``replicationsource`` that sets resource requests for CPU and memory:

.. code-block:: yaml

apiVersion: volsync.backube/v1alpha1
kind: ReplicationSource
metadata:
name: source
namespace: "test-ns"
spec:
sourcePVC: data-source
trigger:
manual: once
restic:
pruneIntervalDays: 1
repository: restic-secret
retain:
hourly: 3
daily: 2
monthly: 1
copyMethod: Snapshot
cacheCapacity: 1Gi
# Set specific resource requests for the mover container
moverResources:
requests:
memory: "64Mi"
cpu: "250m"

For more information about resource requirements and limits in kubernetes, see
`Resource Management for Pods and Containers <https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/>`_.
Loading