.. _infra-sites:

Sites
=====

.. index:: Site

Définition
----------

Un site est un regroupement logique de partenaires. Les sites peuvent
correspondre à l'architecture  réseau (LAN/VLAN, datacenter, etc.), ou
tout simplement regrouper un certain nombre de :term:`partenaires
<partenaire>` et simplifier les règles de gestion des flux (par exemple
partenaires externes, clients FTP).

Un site a les propriétés suivantes :

Nom
  Le nom du site
Description
  Un champ permettant d’ajouter de l’information supplémentaire
Passerelle interne
   Passerelle Waarp R66 par laquelle transitent tous les transferts
   depuis et/ou vers un partenaire de ce site
Passerelle externe
   Passerelle Waarp R66 par laquelle transitent tous les transferts
   entre ceux sites (dont le courant).
Relais clients
  Les clients Waarp R66, en tant que clients, ne sont pas addressables.
  Les fichiers transférés à destination des clients de ce site seront
  déposés sur ce serveur Waarp R66 en attendant que le client de
  destination vienne le récupérer.
Proxy HTTP
  Selon les besoins, ou pour simplifier le paramétrage des pare-feux, il est
  possible de définir un proxy HTTP pour un site. Si un proxy est défini pour un
  site, toutes les requêtes REST émises par Waarp Manager à destination d'un
  serveur Waarp R66 de ce site sont routées via ce proxy.

  .. seealso::

     * :any:`concepts_proxy_http`


.. todo:: déporter dans concepts de base
.. _site-about-gateways:

Un point sur les passerelles
----------------------------

Trois passerelles peuvent être définies pour chaque site en fonction
du niveau d'isolation et de contrôle des sites souhaités.



.. index:: Passerelle interne (Site)

.. _site_internal_gateway:

Passerelles internes
~~~~~~~~~~~~~~~~~~~~

Les passerelles internes permettent de forcer un rebond pour les
transferts impliquant un partenaire du site.

Celles-ci verront donc passer l'intégralité des transferts de ce site,
permettant par exemple de centraliser des contrôles de sécurité

Par exemple, un transfert entre un *client A* et un *serveur B* d'un
même site devra nécessairement passer par la passerelle interne.

.. uml::

   left to right direction

   rectangle "Site A" {

     (Client A) --> (passerelle interne)
     (Client C) --> (passerelle interne)

     (passerelle interne) --> (Serveur B)
     (Serveur B) --> (passerelle interne)

     (passerelle interne) --> (Serveur D)
     (Serveur D) --> (passerelle interne)
   }

Il n'est pas obligatoire de définir une passerelle interne pour un site.
Sans passerelle interne (c'est-à-dire en mode « point à point », les
partenaires Waarp R66 du site peuvent communiquer directement :

.. uml::

   left to right direction

   rectangle "Site A" {
     (Client A) --> (Serveur B)
     (Client A) --> (Serveur D)
     (client C) --> (Serveur B)
     (client C) --> (Serveur D)
     (Serveur B) <--> (Serveur D)
   }


Enfin, comme la passerelle interne capture tous les transferts du
site, les transferts depuis un autre site ou vers un autre site
passent également par cette passerelle.

.. uml::

   left to right direction

   rectangle "Site A" {
     (Client A) --> (Passerelle interne)
     (Serveur B) <-- (Passerelle interne)
   }

   rectangle "Site B" {
     (Serveur C) <-left- (Passerelle interne)
     (Serveur C) -right-> (Passerelle interne)
   }



.. index:: Passerelle externe (Site)

.. _site_external_gateway:

Passerelles externes
~~~~~~~~~~~~~~~~~~~~

Les passerelles fournissent un point de passage obligatoire pour tous
les transferts entrant ou sortant d'un site.

Par exemple, un transfert entre un *serveur A* du *site A* et un
*serveur B* du *site B* devra nécessairement passer par la passerelle
externe.

.. uml::

   left to right direction
   skinparam packageStyle rect

   rectangle "Site A" {
     (Serveur A) --> (Passerelle externe)
     (Serveur A) <-- (Passerelle externe)
   }

   rectangle "Site B" {
     (Passerelle externe) --> (Serveur B)
     (Passerelle externe) <-- (Serveur B)
   }

Il n'est pas obligatoire de définir une passerelle externe pour un site.
Sans passerelle externe c'est-à-dire en mode « accès direct »), les
partenaires du site peuvent communiquer directement avec les partenaires
d'autres sites, et les partenaires d'autres sites peuvent être joints
directement :

.. uml::

   left to right direction

   rectangle "Site A" {
     (Client A) as (A)
     (Serveur B) as (B)
   }

   rectangle "Site B" {
     (Client C) as (C)
     (Serveur D) as (D)
   }

   (A) --> (D)
   (C) --> (B)
   (B) <--> (D)


En revanche, si une passerelle interne est définie pour un site,
celle-ci reste utilisée et n'est pas remplacée par une passerelle
interne :

.. uml::

   left to right direction

   rectangle "Site A" {
     (Client A) as (A)
     (Passerelle interne A) as (PIA)
     (Passerelle externe A) as (PEA)
   }

   rectangle "Site B" {
     (Serveur B) as (B)
     (Passerelle interne B) as (PIB)
     (Passerelle externe B) as (PEB)
   }

   (A) --> (PIA)
   (PIA) --> (PEA)
   (PEA) --> (PEB)
   (PEB) --> (PIB)
   (PIB) --> (B)



.. index:: Relais clients (Site)

.. _site_client_relay:

Relais clients
~~~~~~~~~~~~~~

Par définition, et au contrairement aux serveurs, les clients Waarp R66
ne sont pas addressables, c'est-à-dire qu'un autre partenaire Waarp R66
ne peut pas s'y connecter pour initier un transferts.

En revanche, Waarp Manager permet de définir un flux à destination d'un
client. Il est donc nécessaire de choisir un serveur relais, sur lequel
les fichiers à destination des clients sont déposés pour que les clients
viennent les récupérer.

Par exemple, un transfert entre un *client A* et un *client B* devra
nécessairement passer par le relais client :

.. uml::

   left to right direction

   rectangle "Site A" {
      (Client A) as (A)
      (Relais client) as (RC)
      (client B) as (B)

      (A) -down-> (RC): 2
      (B) -up-> (RC): 1
   }

.. _site-list:

Liste des sites
---------------

L'index de cette section affiche la liste des sites définis.

.. figure:: ../../_static/img/waarp_sites.png
   :align: center

   Liste des sites

Cette liste peut être triée, en cliquant sur les en-têtes de colonnes,
et filtrée.

En fonction des droits de l'utilisateur, les boutons en regard de chaque
ligne permettent d'accéder aux écrans suivants :

- :ref:`site-details`
- :ref:`site-edit`
- :ref:`site-delete`



.. _site-details:

Détails d'un site
-----------------

L'écran de visualisation des détails d'un site regroupe l'ensemble des
informations disponibles pour le site choisi.

.. figure:: ../../_static/img/waarp_sites_details.png
   :align: center

   Écran de détails d'un site

Si les droits de l'utilisateur le permettent, un lien en haut à droite
de l'écran permet d'`éditer les informations <site-edit_>`_



.. _site-edit:

Édition d'un site
-----------------

L'écran d'édition d'un site permet d'éditer la plupart des informations
d'un site, notamment sa description et des passerelles.

.. figure:: ../../_static/img/waarp_sites_edit.png
   :align: center

   Écran d'édition d'un site

Les modes de communication intra-site a deux types de paramétrages
disponibles :

- le mode *point-à-point*, c'est-à-dire l'absence de passerelle (les
  transferts ne transitent pas par la passerelle interne) ;
- le passage par une passerelle, et un serveur Waarp R66 du site doit
  être choisi comme passerelle.

De même, les modes de communication extra-site a deux types de paramétrages
disponibles :

- le mode *accès direct*, c'est-à-dire l'absence de passerelle (les
  partenaires du site peuvent sortir sans rebond du site et les
  transferts entrant dans le site ne doivent pas effectuer de rebond) ;
- le passage par une passerelle, et un serveur Waarp R66 du site doit
  être choisi comme passerelle.

.. seealso::

   `Fonctionnement des passerelles et des relais <site-about-gateways_>`_

.. _site-delete:

Suppression d'un site
---------------------

Il y a deux manières de supprimer un site.

- soit par la `liste des sites <site-list_>`_ :

   .. figure:: ../../_static/img/waarp_sites_deletion_from_list_view.png
      :align: center

      Écran de suppression d'un site depuis la liste des sites

- soit par l'écran de visualisation des `détail du site <site-details_>`_ :

   .. figure:: ../../_static/img/waarp_sites_deletion_from_details_view.png
      :align: center

      Écran de suppression d'un site depuis le détail d'un site

Si les droits de l'utilisateur le permettent, le bouton de suppression
permet de supprimer le site.

.. warning::
    Un site peut être supprimer seulement si aucun partnenaire n'est défini
    dans ce site.



