Compare commits
8 Commits
0e0ca6b1a3
...
master
Author | SHA1 | Date | |
---|---|---|---|
00098996c6 | |||
61974f9d64 | |||
067e9c4cd4 | |||
c1f4d772be | |||
7ab4575ae4 | |||
7b70ebeb27 | |||
9f7f993aa2 | |||
cee40adb92 |
12
README.rst
Normal file
12
README.rst
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
=====================
|
||||||
|
P2P Storage Simulator
|
||||||
|
=====================
|
||||||
|
|
||||||
|
The system consists of two types of components, the producer sends logs to consumer, to one at a time. Consumer discovery is done
|
||||||
|
by the producers and other consumers.
|
||||||
|
This repository connect the two component of the system. It uses docker-compose to build a demo
|
||||||
|
system (with multiple producers and consumers), which can be used for evaluation. After cloning, run the command
|
||||||
|
*docker-compose up.*
|
||||||
|
which will set up the system.
|
||||||
|
|
||||||
|
Produced by GoldenPogácsa Inc.
|
@ -36,8 +36,10 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.111.21
|
- PRODUCER_KNOWNCONSUMER=192.168.111.21
|
||||||
- PRODUCER_REDIS=localhost
|
- PRODUCER_REDIS=192.168.111.211
|
||||||
network_mode: "service:producer-redis1-1"
|
networks:
|
||||||
|
firstsubnet:
|
||||||
|
ipv4_address: 192.168.111.11
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api1
|
- consumer-api1
|
||||||
- producer-redis1-1
|
- producer-redis1-1
|
||||||
@ -46,8 +48,8 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.111.211/0
|
||||||
network_mode: "service:producer-redis1-1"
|
network_mode: "service:producer1-1"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api1
|
- consumer-api1
|
||||||
- producer-redis1-1
|
- producer-redis1-1
|
||||||
@ -57,7 +59,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
firstsubnet:
|
firstsubnet:
|
||||||
ipv4_address: 192.168.111.11
|
ipv4_address: 192.168.111.211
|
||||||
|
|
||||||
|
|
||||||
#### Producer 2
|
#### Producer 2
|
||||||
@ -68,7 +70,10 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.111.21
|
- PRODUCER_KNOWNCONSUMER=192.168.111.21
|
||||||
network_mode: "service:producer-redis1-2"
|
- PRODUCER_REDIS=192.168.111.210
|
||||||
|
networks:
|
||||||
|
firstsubnet:
|
||||||
|
ipv4_address: 192.168.111.10
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api1
|
- consumer-api1
|
||||||
- producer-redis1-2
|
- producer-redis1-2
|
||||||
@ -77,8 +82,8 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.111.210/0
|
||||||
network_mode: "service:producer-redis1-2"
|
network_mode: "service:producer1-2"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api1
|
- consumer-api1
|
||||||
- producer-redis1-2
|
- producer-redis1-2
|
||||||
@ -89,7 +94,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
firstsubnet:
|
firstsubnet:
|
||||||
ipv4_address: 192.168.111.10
|
ipv4_address: 192.168.111.210
|
||||||
|
|
||||||
|
|
||||||
#### Producer 3
|
#### Producer 3
|
||||||
@ -100,7 +105,10 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.111.21
|
- PRODUCER_KNOWNCONSUMER=192.168.111.21
|
||||||
network_mode: "service:producer-redis1-3"
|
- PRODUCER_REDIS=192.168.111.209
|
||||||
|
networks:
|
||||||
|
firstsubnet:
|
||||||
|
ipv4_address: 192.168.111.9
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api1
|
- consumer-api1
|
||||||
- producer-redis1-3
|
- producer-redis1-3
|
||||||
@ -109,8 +117,8 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.111.209/0
|
||||||
network_mode: "service:producer-redis1-3"
|
network_mode: "service:producer1-3"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api1
|
- consumer-api1
|
||||||
- producer-redis1-3
|
- producer-redis1-3
|
||||||
@ -121,7 +129,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
firstsubnet:
|
firstsubnet:
|
||||||
ipv4_address: 192.168.111.9
|
ipv4_address: 192.168.111.209
|
||||||
|
|
||||||
### Producer group 2
|
### Producer group 2
|
||||||
|
|
||||||
@ -132,7 +140,10 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.222.22
|
- PRODUCER_KNOWNCONSUMER=192.168.222.22
|
||||||
network_mode: "service:producer-redis2-1"
|
- PRODUCER_REDIS=192.168.222.212
|
||||||
|
networks:
|
||||||
|
secondsubnet:
|
||||||
|
ipv4_address: 192.168.222.12
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api2
|
- consumer-api2
|
||||||
- producer-redis2-1
|
- producer-redis2-1
|
||||||
@ -141,8 +152,8 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.222.212/0
|
||||||
network_mode: "service:producer-redis2-1"
|
network_mode: "service:producer2-1"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api2
|
- consumer-api2
|
||||||
- producer-redis2-1
|
- producer-redis2-1
|
||||||
@ -152,7 +163,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
secondsubnet:
|
secondsubnet:
|
||||||
ipv4_address: 192.168.222.12
|
ipv4_address: 192.168.222.212
|
||||||
|
|
||||||
|
|
||||||
#### Producer 2
|
#### Producer 2
|
||||||
@ -163,7 +174,10 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.222.22
|
- PRODUCER_KNOWNCONSUMER=192.168.222.22
|
||||||
network_mode: "service:producer-redis2-2"
|
- PRODUCER_REDIS=192.168.222.213
|
||||||
|
networks:
|
||||||
|
secondsubnet:
|
||||||
|
ipv4_address: 192.168.222.13
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api2
|
- consumer-api2
|
||||||
- producer-redis2-2
|
- producer-redis2-2
|
||||||
@ -172,8 +186,8 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.222.213/0
|
||||||
network_mode: "service:producer-redis2-2"
|
network_mode: "service:producer2-2"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api2
|
- consumer-api2
|
||||||
- producer-redis2-2
|
- producer-redis2-2
|
||||||
@ -183,7 +197,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
secondsubnet:
|
secondsubnet:
|
||||||
ipv4_address: 192.168.222.13
|
ipv4_address: 192.168.222.213
|
||||||
|
|
||||||
|
|
||||||
#### Producer 3
|
#### Producer 3
|
||||||
@ -194,7 +208,10 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.222.22
|
- PRODUCER_KNOWNCONSUMER=192.168.222.22
|
||||||
network_mode: "service:producer-redis2-3"
|
- PRODUCER_REDIS=192.168.222.214
|
||||||
|
networks:
|
||||||
|
secondsubnet:
|
||||||
|
ipv4_address: 192.168.222.14
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api2
|
- consumer-api2
|
||||||
- producer-redis2-3
|
- producer-redis2-3
|
||||||
@ -203,8 +220,8 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.222.214/0
|
||||||
network_mode: "service:producer-redis2-3"
|
network_mode: "service:producer2-3"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api2
|
- consumer-api2
|
||||||
- producer-redis2-3
|
- producer-redis2-3
|
||||||
@ -214,7 +231,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
secondsubnet:
|
secondsubnet:
|
||||||
ipv4_address: 192.168.222.14
|
ipv4_address: 192.168.222.214
|
||||||
|
|
||||||
|
|
||||||
## Producer Group 3
|
## Producer Group 3
|
||||||
@ -226,28 +243,30 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.123.21
|
- PRODUCER_KNOWNCONSUMER=192.168.123.21
|
||||||
- PRODUCER_REDIS=localhost
|
- PRODUCER_REDIS=192.168.123.211
|
||||||
network_mode: "service:producer-redis1-1"
|
networks:
|
||||||
|
thirdsubnet:
|
||||||
|
ipv4_address: 192.168.123.11
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api3
|
- consumer-api3
|
||||||
- producer-redis1-1
|
- producer-redis3-1
|
||||||
|
|
||||||
producer-endpoint3-1:
|
producer-endpoint3-1:
|
||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.123.211/0
|
||||||
network_mode: "service:producer-redis1-1"
|
network_mode: "service:producer3-1"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api3
|
- consumer-api3
|
||||||
- producer-redis1-1
|
- producer-redis3-1
|
||||||
|
|
||||||
producer-redis3-1:
|
producer-redis3-1:
|
||||||
image: redis
|
image: redis
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
thirdsubnet:
|
thirdsubnet:
|
||||||
ipv4_address: 192.168.123.11
|
ipv4_address: 192.168.123.211
|
||||||
|
|
||||||
|
|
||||||
#### Producer 2
|
#### Producer 2
|
||||||
@ -258,28 +277,30 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.123.21
|
- PRODUCER_KNOWNCONSUMER=192.168.123.21
|
||||||
network_mode: "service:producer-redis1-2"
|
- PRODUCER_REDIS=192.168.123.210
|
||||||
|
networks:
|
||||||
|
thirdsubnet:
|
||||||
|
ipv4_address: 192.168.123.10
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-api3
|
- consumer-api3
|
||||||
- producer-redis1-2
|
- producer-redis3-2
|
||||||
|
|
||||||
producer-endpoint3-2:
|
producer-endpoint3-2:
|
||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.123.210/0
|
||||||
network_mode: "service:producer-redis1-2"
|
network_mode: "service:producer3-2"
|
||||||
depends_on:
|
depends_on:
|
||||||
# - consumer-api1
|
- consumer-api3
|
||||||
- producer-redis1-2
|
- producer-redis3-2
|
||||||
|
|
||||||
|
|
||||||
producer-redis3-2:
|
producer-redis3-2:
|
||||||
image: redis
|
image: redis
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
thirdsubnet:
|
thirdsubnet:
|
||||||
ipv4_address: 192.168.123.10
|
ipv4_address: 192.168.123.210
|
||||||
|
|
||||||
|
|
||||||
#### Producer 3
|
#### Producer 3
|
||||||
@ -287,28 +308,31 @@ services:
|
|||||||
image: registry.kmlabz.com/goldenpogacsa/producer
|
image: registry.kmlabz.com/goldenpogacsa/producer
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- PRODUCER_KNOWNCONSUMER=192.168.123.22
|
- PRODUCER_KNOWNCONSUMER=192.168.123.21
|
||||||
network_mode: "service:producer-redis2-3"
|
- PRODUCER_REDIS=192.168.123.214
|
||||||
|
networks:
|
||||||
|
thirdsubnet:
|
||||||
|
ipv4_address: 192.168.123.14
|
||||||
depends_on:
|
depends_on:
|
||||||
# - consumer-api2
|
- consumer-api3
|
||||||
- producer-redis2-3
|
- producer-redis3-3
|
||||||
|
|
||||||
producer-endpoint3-3:
|
producer-endpoint3-3:
|
||||||
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
image: registry.kmlabz.com/goldenpogacsa/producer-endpoint
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://localhost
|
- REDIS_URL=redis://192.168.123.214/0
|
||||||
network_mode: "service:producer-redis2-3"
|
network_mode: "service:producer3-3"
|
||||||
depends_on:
|
depends_on:
|
||||||
# - consumer-api2
|
- consumer-api3
|
||||||
- producer-redis2-3
|
- producer-redis3-3
|
||||||
|
|
||||||
producer-redis3-3:
|
producer-redis3-3:
|
||||||
image: redis
|
image: redis
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
thirdsubnet:
|
thirdsubnet:
|
||||||
ipv4_address: 192.168.123.14
|
ipv4_address: 192.168.123.214
|
||||||
|
|
||||||
## Consumer stuff
|
## Consumer stuff
|
||||||
|
|
||||||
@ -331,8 +355,9 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://192.168.111.121/0
|
- REDIS_URL=redis://192.168.111.121/0
|
||||||
- INITIAL_SERVERS="192.168.222.22, 192.168.222.122"
|
- INITIAL_SERVERS=192.168.222.22,192.168.123.21
|
||||||
- LOCAL_UUID=d8b2e5e2-f675-4194-9324-af58e4b70c54
|
- LOCAL_UUID=d8b2e5e2-f675-4194-9324-af58e4b70c54
|
||||||
|
- FORCE_IP_OVERRIDE=True
|
||||||
network_mode: "service:consumer-api1"
|
network_mode: "service:consumer-api1"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-redis1
|
- consumer-redis1
|
||||||
@ -364,8 +389,9 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://192.168.222.122/0
|
- REDIS_URL=redis://192.168.222.122/0
|
||||||
- INITIAL_SERVERS="192.168.111.21, 192.168.123.21"
|
- INITIAL_SERVERS=192.168.123.21,192.168.111.21
|
||||||
- LOCAL_UUID=9e79d4e7-f4c2-44d2-ac11-682f62fda985
|
- LOCAL_UUID=9e79d4e7-f4c2-44d2-ac11-682f62fda985
|
||||||
|
- FORCE_IP_OVERRIDE=True
|
||||||
network_mode: "service:consumer-api2"
|
network_mode: "service:consumer-api2"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-redis2
|
- consumer-redis2
|
||||||
@ -385,7 +411,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://192.168.123.121/0
|
- REDIS_URL=redis://192.168.123.121/0
|
||||||
- LOCAL_UUID=d8b2e5e2-f675-4194-9324-af58e4b70c54
|
- LOCAL_UUID=d8b2e5e3-f675-4194-9324-af58e4b70c55
|
||||||
networks:
|
networks:
|
||||||
thirdsubnet:
|
thirdsubnet:
|
||||||
ipv4_address: 192.168.123.21
|
ipv4_address: 192.168.123.21
|
||||||
@ -397,8 +423,9 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
environment:
|
environment:
|
||||||
- REDIS_URL=redis://192.168.123.121/0
|
- REDIS_URL=redis://192.168.123.121/0
|
||||||
- INITIAL_SERVERS="192.168.111.21, 192.168.222.122"
|
- INITIAL_SERVERS=192.168.111.21,192.168.222.22
|
||||||
- LOCAL_UUID=d8b2e5e3-f675-4194-9324-af58e4b70c55
|
- LOCAL_UUID=d8b2e5e3-f675-4194-9324-af58e4b70c55
|
||||||
|
- FORCE_IP_OVERRIDE=True
|
||||||
network_mode: "service:consumer-api3"
|
network_mode: "service:consumer-api3"
|
||||||
depends_on:
|
depends_on:
|
||||||
- consumer-redis1
|
- consumer-redis1
|
||||||
@ -408,4 +435,4 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
networks:
|
networks:
|
||||||
thirdsubnet:
|
thirdsubnet:
|
||||||
ipv4_address: 192.168.123.121
|
ipv4_address: 192.168.123.121
|
||||||
|
Reference in New Issue
Block a user