BASCULE
La fonctionnalité de bascule autorise le moteur à basculer automatiquement
sur un serveur différent si le serveur actuel est défaillant.
Syntaxe de bascule
La liste des serveurs est donnée sous forme de liste séparée par des
virgules ; un nombre quelconque d'espaces est autorisé autour de la
virgule. Les serveurs sont répertoriés par ordre de préférence. La liste
peut contenir un nombre quelconque de serveurs.
Pour chaque option de configuration alors que la bascule est activée, il
existe deux variantes : primary et
backup. L'idée est que les serveurs dans la liste
principale sont préférés et les serveurs de secours sont interrogés
uniquement si aucun serveur primaire ne peut être atteint. Si un serveur de
secours est sélectionné, un délai d'attente de 31 secondes est défini. Après
ce délai d'attente, SSSD tentera périodiquement de se reconnecter à un des
serveurs primaires. S'il réussit, il remplacera l'actuel serveur (de
secours) actif.
Mécanisme de bascule
Le mécanisme de bascule fait la distinction entre une machine et d'un
service. Le moteur tente d'abord de résoudre le nom d'hôte d'un ordinateur
donné ; en cas d'échec de cette tentative de résolution, la machine est
considérée comme hors ligne. Aucune autre tentative n'est faite pour se
connecter à cette machine pour tout autre service. Si la tentative de
résolution réussit, le serveur principal tente de se connecter à un service
sur cette machine. Si la tentative de connexion de service échoue, alors ce
seul service est considéré comme hors ligne et le moteur passe
automatiquement au service suivant. La machine est toujours considérée en
ligne et peut toujours être considérée pour une tentative d'accès à un autre
service.
Les tentatives de connexion ultérieures sont faites vers des machines ou des
services marqués comme hors connexion après un délai spécifié ; ce délai est
actuellement spécifié en dur à 30 secondes.
S'il n'y a plus aucune machine à essayer, le moteur dans son ensemble
bascule dans le mode hors connexion et tente ensuite de se reconnecter
toutes les 30 secondes.
Failover time outs and tuning
Resolving a server to connect to can be as simple as running a single DNS
query or can involve several steps, such as finding the correct site or
trying out multiple host names in case some of the configured servers are
not reachable. The more complex scenarios can take some time and SSSD needs
to balance between providing enough time to finish the resolution process
but on the other hand, not trying for too long before falling back to
offline mode. If the SSSD debug logs show that the server resolution is
timing out before a live server is contacted, you can consider changing the
time outs.
This section lists the available tunables. Please refer to their description
in the
sssd.conf5
, manual page.
dns_resolver_server_timeout
Time in milliseconds that sets how long would SSSD talk to a single DNS
server before trying next one.
Par défaut : 1000
dns_resolver_op_timeout
Time in seconds to tell how long would SSSD try to resolve single DNS query
(e.g. resolution of a hostname or an SRV record) before trying the next
hostname or discovery domain.
Par défaut : 3
dns_resolver_timeout
How long would SSSD try to resolve a failover service. This service
resolution internally might include several steps, such as resolving DNS SRV
queries or locating the site.
Par défaut : 6
For LDAP-based providers, the resolve operation is performed as part of an
LDAP connection operation. Therefore, also the
ldap_opt_timeout
timeout should be set to a larger value than
dns_resolver_timeout
which in turn should be set to a larger
value than dns_resolver_op_timeout
which should be larger
than dns_resolver_server_timeout
.