Skip to content
Snippets Groups Projects
Commit 4c05c40d authored by kiady.arintsoa's avatar kiady.arintsoa :man_with_turban_tone2:
Browse files

final cmmit

parent fc6846ef
No related branches found
No related tags found
No related merge requests found
# Groupe 16
Adresse du GIT :https://gitedu.hesge.ch/simon.cirilli/sysdistribbroadcast
# Version online sur des instances AWS
# Version GOLANG
## Client
Le client se lance en faisant `go run client.go [--local-debug]`
Le client se lance en faisant `go run client.go [--local-debug]`, l’argument est optionnel, il permet d’utiliser le projet sur la même machine. Le client demande à chaque itération le nœud auquel se connecter ainsi que la commande à effectuer sur ce nœud.
## Serveurs
Il faut modifier les fichiers YAML pour mettre les IP correctes des instances AWS dans les voisins et pour sa propore addresse il fautr mettre 0.0.0.0 pour accéder à toute les demandes, il faut autoriser les connections sur différents ports pour les instances.
Suite à une connection sur le serveur, le serveur traite la demande effectue différents appels et au final affiche le résultat dans son terminal pour le verify et le create donc dans le terminal du serveur choisi de base. Tandis que pour le fake et le list il renvoie au client les informations.
Le serveur se lance en faisant `go run server.go [n] [--local-debug]`, l’argument local est aussi optionnel, il sert le même but que le client. `[n]` correspond au numéro du nœud, Le fichier `neighbour-[n].yaml` doit exister au même endroit. Le serveur ne fait que traiter les commandes entrantes.
## Topologie
![Screenshot](topologie.png)
## Dépendances
- PyYAML
## Déploiement
## Lancer le programme
Il faut bien sûr commencer par clôner le repot puis :
Pour déployer le projet, il faut modifier les fichiers YAML pour mettre les IP correctes des instances AWS dans les voisins et pour sa propre adresse il faut mettre 0.0.0.0 pour accéder à toute les demandes, il faut autoriser les connections sur différents ports pour les instances.
Client :
- cd client/client
- python3 client.py
## Topologie
Serveur :
Pour les serveurs il faut donc lancer un à un les différents serveurs donc ce qui vaut pour s1 vaut également pour les autres serveurs mais avant de lancer le serveur bien penser à modifier les ficher YAML.
- cd s1
- python3 serveur.py
Déployé :
![Screenshot](topologie.png)
## Tests
Pour tester la manière est de lancer le client sans le mode autoTest et de rentrer l'adresse du serveur pour la communication et d'enchaîner les demandes.
\ No newline at end of file
Local:
![Topologie](reseau.png)
id: 10
address: "127.0.0.10"
neighbours:
- id: 9
address: "127.0.0.9"
edge_weight: 1
id: 7
address: "127.0.0.7"
neighbours:
- id: 6
address: "127.0.0.6"
edge_weight: 1
- id: 8
address: "127.0.0.8"
edge_weight: 1
id: 8
address: "127.0.0.8"
neighbours:
- id: 7
address: "127.0.0.7"
edge_weight: 1
- id: 9
address: "127.0.0.9"
edge_weight: 1
id: 9
address: "127.0.0.9"
neighbours:
- id: 8
address: "127.0.0.8"
edge_weight: 1
- id: 10
address: "127.0.0.10"
edge_weight: 1
go/reseau.png

14.7 KiB

go/topologie.png

4.44 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment