diff --git a/docs/filesystem_layer/installing_a_client/ansible.md b/docs/filesystem_layer/installing_a_client/ansible.md new file mode 100644 index 000000000..397d8fd15 --- /dev/null +++ b/docs/filesystem_layer/installing_a_client/ansible.md @@ -0,0 +1,20 @@ +# Option 3: Ansible + +Start by cloning the EESSI filesystem-layer repo: + +```bash +git clone https://github.com/EESSI/filesystem-layer.git +``` + +Make sure that the `inventory/hosts` file contains the list of hosts where the CVMFS client should be +installed. Furthermore, you can define a list of (local) proxy servers that your clients should use +in `inventory/local_site_specific_vars.yml` using the parameter `local_cvmfs_http_proxies`. See +`inventory/local_site_specific_vars.yml.example` for more details. If you just want to roll out one +client without a proxy, you can leave this out. + +Finally, install the client by running the playbook: + +```bash +ansible-playbook -b -K -e @inventory/local_site_specific_vars.yml client.yml +``` + diff --git a/docs/filesystem_layer/installing_a_client/client_configuration_options.md b/docs/filesystem_layer/installing_a_client/client_configuration_options.md new file mode 100644 index 000000000..cd6c8076c --- /dev/null +++ b/docs/filesystem_layer/installing_a_client/client_configuration_options.md @@ -0,0 +1,12 @@ +# Client configuration options + +The EESSI repository is made available through the CernVM-FS client. We support four methods for +installing, running and configuring the CernVM-FS client on a computer: + + +1. [`Manual installation using a standalone package`](standalone_package.md) +2. [`Installation via the EESSI package repository`](package_repository.md) +3. [`Automated installation using a Ansible playbook`](ansible.md) +4. [`Running a fully prepared Singularity container`](singularity.md) + + diff --git a/docs/filesystem_layer/installing_a_client/package_repository.md b/docs/filesystem_layer/installing_a_client/package_repository.md new file mode 100644 index 000000000..7d448dd3a --- /dev/null +++ b/docs/filesystem_layer/installing_a_client/package_repository.md @@ -0,0 +1,34 @@ +# Option 2: Package repository + + +We have a yum repository where you can install the configuration package from. If you opt for this +solution you will get automatic updates. To configure your client using this option, run the +following commands: + +``` +sudo yum -y install http://repo.eessi-infra.org/eessi/rhel/8/noarch/eessi-release-0-1.noarch.rpm +sudo yum check-update +sudo yum -y install cvmfs-config-eessi +``` + +Next, you need to make a file `/etc/cvmfs/default.local` manually; this file is used for local +settings and contains, for instance, the URL to your local proxy and the size of the local cache. As +an example, you can put the following in this file, which corresponds to not using a proxy and +setting the local quota limit to 40000MB: + +```bash +CVMFS_CLIENT_PROFILE=single +CVMFS_QUOTA_LIMIT=40000 +``` + +If you do want to use your own proxy, replace the first line by: + +```bash +CVMFS_HTTP_PROXY=: +``` + +For more details about configuring your client, see the CVMFS documentation on [`client +configuration`](https://cvmfs.readthedocs.io/en/stable/cpt-configure.html). + +Finally, run `cvmfs_config setup` to set up CVMFS. + diff --git a/docs/filesystem_layer/installing_a_client/singularity.md b/docs/filesystem_layer/installing_a_client/singularity.md new file mode 100644 index 000000000..c0a450555 --- /dev/null +++ b/docs/filesystem_layer/installing_a_client/singularity.md @@ -0,0 +1,3 @@ +# Option 4: Singularity + +You can also access the EESSI pilot via [`Singularity`](../../pilot.md#accessing-the-eessi-pilot-repository-through-singularity). diff --git a/docs/filesystem_layer/installing_a_client/standalone_package.md b/docs/filesystem_layer/installing_a_client/standalone_package.md new file mode 100644 index 000000000..aeb38f651 --- /dev/null +++ b/docs/filesystem_layer/installing_a_client/standalone_package.md @@ -0,0 +1,37 @@ +# Option 1: Standalone package + +On many operating systems the CVMFS client can be installed through your package manager. For +details for your OS/Distro, see the [Getting Started +page](https://cvmfs.readthedocs.io/en/stable/cpt-quickstart.html) in the CVMFS documentation. + +After installing the client, you will have to configure it. For this you can use the CVMFS +configuration packages that we provide for clients. These packages can be found on the +[Releases](https://github.com/eessi/filesystem-layer/releases) page. Download the package for your +operating system, and install it, e.g.: + +```bash +rpm -i cvmfs-config-eessi-*.rpm +dpkg -i cvmfs-config-eessi-*.deb +``` + +Next, you need to make a file `/etc/cvmfs/default.local` manually; this file is used for local +settings and contains, for instance, the URL to your local proxy and the size of the local cache. As +an example, you can put the following in this file, which corresponds to not using a proxy and +setting the local quota limit to 40000MB: + +```bash +CVMFS_CLIENT_PROFILE=single +CVMFS_QUOTA_LIMIT=40000 +``` + +If you do want to use your own proxy, replace the first line by: + +```bash +CVMFS_HTTP_PROXY=: +``` + +For more details about configuring your client, see the CVMFS documentation on [`client +configuration`](https://cvmfs.readthedocs.io/en/stable/cpt-configure.html). + +Finally, run `cvmfs_config setup` to set up CVMFS. + diff --git a/docs/filesystem_layer/stratum1.md b/docs/filesystem_layer/stratum1.md index e13d03c49..edf9d0493 100644 --- a/docs/filesystem_layer/stratum1.md +++ b/docs/filesystem_layer/stratum1.md @@ -59,30 +59,14 @@ cvmfs_srv_mount: /srv ``` Make sure that you have added the hostname or IP address of your server to the -`inventory/hosts` file. Finally, install the Stratum 1 using one of the two following options. +`inventory/hosts` file. Finally, install the Stratum 1 by running the playbook: -Option 1: ``` bash # -b to run as root, optionally use -K if a sudo password is required ansible-playbook -b [-K] -e @inventory/local_site_specific_vars.yml stratum1.yml ``` -Option2: - -Create a ssh key pair and make sure the `ansible-host-keys.pub` is in the -`$HOME/.ssh/authorized_keys` file on your Stratum 1 server. - -```bash -ssh-keygen -b 2048 -t rsa -f ~/.ssh/ansible-host-keys -q -N "" -``` - -Then run the playbook: - -```bash -ansible-playbook -b --private-key ~/.ssh/ansible-host-keys -e @inventory/local_site_specific_vars.yml stratum1.yml -``` - Running the playbook will automatically make replicas of all the repositories defined in `group_vars/all.yml`. diff --git a/mkdocs.yml b/mkdocs.yml index a26853dce..8b663d095 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -19,6 +19,12 @@ nav: - Filesystem layer: - Overview: filesystem_layer.md - filesystem_layer/stratum1.md + - Configuring the client: + - filesystem_layer/installing_a_client/client_configuration_options.md + - filesystem_layer/installing_a_client/standalone_package.md + - filesystem_layer/installing_a_client/package_repository.md + - filesystem_layer/installing_a_client/ansible.md + - filesystem_layer/installing_a_client/singularity.md - Compatibility layer: compatibility_layer.md - Software layer: - Overview: software_layer.md