Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
fr:manager [2017/11/02 21:11] – aleajactaest | fr:manager [2021/12/03 18:19] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Manager ====== | ====== Manager ====== | ||
- | Présentation d'un outil pour manipuler/ | + | {{ : |
+ | |||
+ | Présentation d'un outil python | ||
Ligne 9: | Ligne 11: | ||
* python3 | * python3 | ||
+ | |||
+ | |||
+ | On récupère les scripts | ||
+ | |||
+ | <WRAP center round important 90%> | ||
+ | Attention, dans la version de test on pointe sur mon repo khanat-code, | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | git clone https:// | ||
+ | cd khanat-code; | ||
+ | </ | ||
===== programme ===== | ===== programme ===== | ||
Ligne 36: | Ligne 50: | ||
==== Création d'un certificat ==== | ==== Création d'un certificat ==== | ||
- | La communication entre le client et le serveur s’effectue via une clef et un certificat. | + | Pour la création du certificat, nous utilisons |
- | Cela sécurise | + | |
+ | Vous retrouver dans le code un script python pour générer (pour le test) les certificats | ||
< | < | ||
- | openssl req -nodes -x509 -newkey rsa:2048 -keyout "crt/key.pem" | + | khanat-code/code/khaganat/tools/create_certificate.py |
</ | </ | ||
- | On aura deux fichier | + | Il génère (en autre) |
- | * key.pem : clef | + | * ca/ |
- | * cert.pem : certificat | + | * ca/ |
+ | * ca/ | ||
+ | * ca/ | ||
+ | * ca/ | ||
+ | * ca/ | ||
+ | * ca/ | ||
+ | * ca/ | ||
==== Configuration ==== | ==== Configuration ==== | ||
Ligne 56: | Ligne 78: | ||
# Define port listen (default 8000) | # Define port listen (default 8000) | ||
port = 8000 | port = 8000 | ||
- | |||
- | # Generate key | ||
- | # openssl req -nodes -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -subj "/ | ||
# key | # key | ||
- | keyfile = / | + | keyfile = / |
# certificate | # certificate | ||
- | certfile = / | + | certfile = / |
+ | |||
+ | # certification to check signature | ||
+ | ca_cert = / | ||
# address listen (default all port) | # address listen (default all port) | ||
Ligne 86: | Ligne 108: | ||
path = / | path = / | ||
- | # size buffer log for each program launched | + | # size buffer log for each program launched |
- | sizelog | + | logsize |
+ | |||
+ | # buffer size (define value bufsize on subprocess.Popen, | ||
+ | bufsize = 100 | ||
# Define other program | # Define other program | ||
Ligne 107: | Ligne 132: | ||
contrôle l' | contrôle l' | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 113: | Ligne 138: | ||
Démarre tous les programmes (retourne " | Démarre tous les programmes (retourne " | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 119: | Ligne 144: | ||
Arrête tous les programmes (retourne " | Arrête tous les programmes (retourne " | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 125: | Ligne 150: | ||
Arrête le manager (ainsi que tous les programmes) | Arrête le manager (ainsi que tous les programmes) | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 131: | Ligne 156: | ||
Retourne la liste de tous les programmes disponible (démarré ou arrêté) | Retourne la liste de tous les programmes disponible (démarré ou arrêté) | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 137: | Ligne 162: | ||
contrôle l' | contrôle l' | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 143: | Ligne 168: | ||
Démarre un programme (retourne " | Démarre un programme (retourne " | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 149: | Ligne 174: | ||
Arrête un programme (retourne " | Arrête un programme (retourne " | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 157: | Ligne 182: | ||
firstline: première ligne que vous souhaitez récupérer | firstline: première ligne que vous souhaitez récupérer | ||
< | < | ||
- | / | + | / |
</ | </ | ||
Ligne 164: | Ligne 189: | ||
< | < | ||
- | / | + | / |
- | </code | + | </code> |
Souvent utilisé avec la commande " | Souvent utilisé avec la commande " | ||
+ | |||
+ | |||
+ | ===== Fonctionnement ===== | ||
+ | |||
+ | Le serveur " | ||
+ | |||
+ | Il attend les commandes et les envoient à ces fils (chaque fils gère un programme) | ||
+ | |||
+ | Nous utilisons le format REST pour communiquer avec le serveur (les données envoyées au format json). | ||