Statistics
| Branch: | Tag: | Revision:

root / snf-pithos-app / README @ d7c850a0

History | View | Annotate | Download (5.5 kB)

1 dfb1fafa Antony Chazapis
README
2 dfb1fafa Antony Chazapis
======
3 dfb1fafa Antony Chazapis
4 dfb1fafa Antony Chazapis
Pithos is a file storage service, built by GRNET using Django (https://www.djangoproject.com/).
5 dfb1fafa Antony Chazapis
Learn more about Pithos at: http://code.grnet.gr/projects/pithos
6 dfb1fafa Antony Chazapis
7 dfb1fafa Antony Chazapis
Consult COPYRIGHT for licensing information.
8 dfb1fafa Antony Chazapis
9 dfb1fafa Antony Chazapis
About Pithos application
10 dfb1fafa Antony Chazapis
------------------------
11 dfb1fafa Antony Chazapis
12 dfb1fafa Antony Chazapis
This package contains the Django application that implements the Pithos v2 API. It depends on the Pithos backend, which does the actual data and metadata operations.
13 dfb1fafa Antony Chazapis
14 dfb1fafa Antony Chazapis
How to run
15 dfb1fafa Antony Chazapis
----------
16 dfb1fafa Antony Chazapis
17 dfb1fafa Antony Chazapis
Use snf-webproject to run Pithos automatically.
18 dfb1fafa Antony Chazapis
19 dfb1fafa Antony Chazapis
To use Pithos in a custom Django project, just add ``pithos.api`` to ``INSTALLED_APPS``.
20 dfb1fafa Antony Chazapis
21 2c04b1dd Antony Chazapis
Pithos has been tested with SQLite and PostgreSQL backend databases. When using PostgreSQL, ensure that the has been created with the appropriate encoding and collation::
22 2c04b1dd Antony Chazapis
23 2c04b1dd Antony Chazapis
    CREATE DATABASE pithos WITH ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' TEMPLATE=template0;
24 2c04b1dd Antony Chazapis
25 dfb1fafa Antony Chazapis
Settings
26 dfb1fafa Antony Chazapis
--------
27 dfb1fafa Antony Chazapis
28 dfb1fafa Antony Chazapis
Configure in ``settings.py`` or a ``.conf`` file in ``/etc/synnefo`` if using snf-webproject.
29 dfb1fafa Antony Chazapis
30 56f3c759 Sofia Papagiannaki
===============================  ================================================================   ============================================================
31 56f3c759 Sofia Papagiannaki
Name                             Default value                                                      Description
32 56f3c759 Sofia Papagiannaki
===============================  ================================================================   ============================================================
33 4ab620b6 Christos Stavrakakis
ASTAKOS_URL                      \https://<astakos.host>/                                           Astakos Authentication URL
34 16f2673e Sofia Papagiannaki
PITHOS_ASTAKOSCLIENT_POOLSIZE    200                                                                The size of the http pool for the astakos client
35 56f3c759 Sofia Papagiannaki
PITHOS_ASTAKOS_COOKIE_NAME       _pithos2_a                                                         Cookie name to retrieve fallback token
36 dfb1fafa Antony Chazapis
PITHOS_BACKEND_DB_MODULE         pithos.backends.lib.sqlalchemy
37 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_DB_CONNECTION     sqlite:////tmp/pithos-backend.db                                   SQLAlchemy database connection string
38 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_BLOCK_MODULE      pithos.backends.lib.hashfile
39 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_BLOCK_PATH        /tmp/pithos-data/                                                  Map and block storage path
40 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_BLOCK_UMASK       0o022                                                              Map and block storage umask
41 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_QUEUE_MODULE      None                                                               Use ``pithos.backends.lib.rabbitmq`` to enable
42 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_QUEUE_HOSTS       None                                                               Format like [``amqp://guest:guest@localhost:5672``
43 4cfccdd2 Sofia Papagiannaki
PITHOS_BACKEND_QUEUE_EXCHANGE    pithos
44 c72c19e4 Sofia Papagiannaki
PITHOS_BACKEND_ACCOUNT_QUOTA     50 GB (50 * 1024 ** 3)                                             Default account quota (set to 0 to disable control)
45 c72c19e4 Sofia Papagiannaki
PITHOS_BACKEND_CONTAINER_QUOTA   0                                                                  Default container quota (set to 0 to disable control - default disabled)
46 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_VERSIONING        auto                                                               Default versioning policy for containers
47 56f3c759 Sofia Papagiannaki
PITHOS_BACKEND_FREE_VERSIONING   True                                                               Default versioning debit policy (default free)
48 61c5b615 Sofia Papagiannaki
PITHOS_BACKEND_POOL_SIZE         5                                                                  Default backend pool size
49 591e1df0 Sofia Papagiannaki
PITHOS_UPDATE_MD5                False                                                               Update object checksums
50 56f3c759 Sofia Papagiannaki
PITHOS_SERVICE_TOKEN             ''                                                                 Service token acquired by the identity provider (astakos)
51 56f3c759 Sofia Papagiannaki
PITHOS_RADOS_STORAGE             False                                                              Enables or disables secondary Pithos storage on RADOS
52 56f3c759 Sofia Papagiannaki
PITHOS_RADOS_POOL_BLOCKS         None                                                               RADOS pool to be used for block storage
53 56f3c759 Sofia Papagiannaki
PITHOS_RADOS_POOL_MAPS           None                                                               RADOS pool to be used for maps storage
54 56f3c759 Sofia Papagiannaki
PITHOS_TRANSLATE_UUIDS           False                                                              Enables a ui compatibility layer for the introduction of UUIDs in identity management.
55 56f3c759 Sofia Papagiannaki
PITHOS_PROXY_USER_SERVICES       True                                                               Whether to proxy user feedback and catalog services
56 4a105ce2 Sofia Papagiannaki
PITHOS_PUBLIC_URL_SECURITY       16                                                                 How many random bytes to use for constructing the URL of Pithos public files
57 4a105ce2 Sofia Papagiannaki
PITHOS_PUBLIC_URL_ALPHABET       '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'   The alphabet to use for constructing the URL of Pithos public files
58 56f3c759 Sofia Papagiannaki
===============================  ================================================================   ============================================================
59 dfb1fafa Antony Chazapis
60 b3155065 Antony Chazapis
To update checksums asynchronously, enable the queue, install snf-pithos-tools and use ``pithos-dispatcher``::
61 b3155065 Antony Chazapis
62 8d9a3fbd Antony Chazapis
    pithos-dispatcher --exchange=pithos --key=pithos.object --callback=pithos.api.dispatch.update_md5
63 b3155065 Antony Chazapis
64 a74ba506 Sofia Papagiannaki
To send sharing notifications::
65 a74ba506 Sofia Papagiannaki
66 a74ba506 Sofia Papagiannaki
    pithos-dispatcher --exchange=pithos --key=pithos.sharing --callback=pithos.api.dispatch.send_sharing_notification
67 a74ba506 Sofia Papagiannaki
68 dfb1fafa Antony Chazapis
Administrator functions
69 dfb1fafa Antony Chazapis
-----------------------
70 dfb1fafa Antony Chazapis
71 dfb1fafa Antony Chazapis
Available as extensions to Django's command-line management utility:
72 dfb1fafa Antony Chazapis
73 dfb1fafa Antony Chazapis
============  ======================
74 dfb1fafa Antony Chazapis
Name          Description
75 dfb1fafa Antony Chazapis
============  ======================
76 dfb1fafa Antony Chazapis
storagequota  Get/set a user's quota
77 dfb1fafa Antony Chazapis
============  ======================
78 dfb1fafa Antony Chazapis