Pour la mise en place du swarm voir Mise en place du cluster swarm
Pour la mise en place du Ceph voir Mise en place du cluster ceph

Vous pouvez lister le details des connexions avec la commande ceph tell mds.0 client ls
root@ceph-node01:~# ceph tell mds.0 client ls
2023-12-20T19:22:13.707+0000 7f1adf7fe700 0 client.45162 ms_handle_reset on v2:192.168.70.43:6808/1671115095
2023-12-20T19:22:13.839+0000 7f1adf7fe700 0 client.44968 ms_handle_reset on v2:192.168.70.43:6808/1671115095
[
{
"id": 44516,
"entity": {
"name": {
"type": "client",
"num": 44516
},
"addr": {
"type": "v1",
"addr": "192.168.88.53:0",
"nonce": 2239173948
}
},
"state": "open",
"num_leases": 0,
"num_caps": 9,
"request_load_avg": 0,
"uptime": 7945.0290929929997,
"requests_in_flight": 0,
"num_completed_requests": 0,
"num_completed_flushes": 0,
"reconnecting": false,
"recall_caps": {
"value": 0,
"halflife": 60
},
"release_caps": {
"value": 0,
"halflife": 60
},
"recall_caps_throttle": {
"value": 0,
"halflife": 1.5
},
"recall_caps_throttle2o": {
"value": 0,
"halflife": 0.5
},
"session_cache_liveness": {
"value": 0.035933784772333659,
"halflife": 300
},
"cap_acquisition": {
"value": 0,
"halflife": 30
},
"last_trim_completed_requests_tid": 29,
"last_trim_completed_flushes_tid": 0,
"delegated_inos": [],
"inst": "client.44516 v1:192.168.88.53:0/2239173948",
"completed_requests": [],
"prealloc_inos": [],
"client_metadata": {
"client_features": {
"feature_bits": "0x0000000000037bff"
},
"metric_spec": {
"metric_flags": {
"feature_bits": "0x000000000080ffff"
}
},
"entity_id": "swarm",
"hostname": "swarm-node03",
"kernel_version": "6.1.0-16-amd64",
"root": "/swarm"
}
},
{
"id": 44510,
"entity": {
"name": {
"type": "client",
"num": 44510
},
"addr": {
"type": "v1",
"addr": "192.168.88.51:0",
"nonce": 1295370626
}
},
"state": "open",
"num_leases": 0,
"num_caps": 14,
"request_load_avg": 0,
"uptime": 8511.5154690759991,
"requests_in_flight": 0,
"num_completed_requests": 0,
"num_completed_flushes": 2,
"reconnecting": false,
"recall_caps": {
"value": 0,
"halflife": 60
},
"release_caps": {
"value": 0,
"halflife": 60
},
"recall_caps_throttle": {
"value": 0,
"halflife": 1.5
},
"recall_caps_throttle2o": {
"value": 0,
"halflife": 0.5
},
"session_cache_liveness": {
"value": 0.055929768045338592,
"halflife": 300
},
"cap_acquisition": {
"value": 0,
"halflife": 30
},
"last_trim_completed_requests_tid": 43,
"last_trim_completed_flushes_tid": 11,
"delegated_inos": [
{
"start": "0x10000000003",
"length": 500
}
],
"inst": "client.44510 v1:192.168.88.51:0/1295370626",
"completed_requests": [],
"prealloc_inos": [
{
"start": "0x10000000003",
"length": 500
},
{
"start": "0x100000001fe",
"length": 492
},
{
"start": "0x100000009c9",
"length": 502
}
],
"client_metadata": {
"client_features": {
"feature_bits": "0x0000000000037bff"
},
"metric_spec": {
"metric_flags": {
"feature_bits": "0x000000000080ffff"
}
},
"entity_id": "all",
"hostname": "swarm-node01",
"kernel_version": "6.1.0-16-amd64",
"root": "/swarm"
}
},
{
"id": 44519,
"entity": {
"name": {
"type": "client",
"num": 44519
},
"addr": {
"type": "v1",
"addr": "192.168.88.52:0",
"nonce": 975920371
}
},
"state": "open",
"num_leases": 0,
"num_caps": 13,
"request_load_avg": 0,
"uptime": 7768.0163265439996,
"requests_in_flight": 0,
"num_completed_requests": 0,
"num_completed_flushes": 2,
"reconnecting": false,
"recall_caps": {
"value": 0,
"halflife": 60
},
"release_caps": {
"value": 0,
"halflife": 60
},
"recall_caps_throttle": {
"value": 0,
"halflife": 1.5
},
"recall_caps_throttle2o": {
"value": 0,
"halflife": 0.5
},
"session_cache_liveness": {
"value": 0.021196926411011834,
"halflife": 300
},
"cap_acquisition": {
"value": 0,
"halflife": 30
},
"last_trim_completed_requests_tid": 57,
"last_trim_completed_flushes_tid": 8,
"delegated_inos": [
{
"start": "0x100000003ed",
"length": 499
}
],
"inst": "client.44519 v1:192.168.88.52:0/975920371",
"completed_requests": [],
"prealloc_inos": [
{
"start": "0x100000003ed",
"length": 499
},
{
"start": "0x100000005ea",
"length": 991
}
],
"client_metadata": {
"client_features": {
"feature_bits": "0x0000000000037bff"
},
"metric_spec": {
"metric_flags": {
"feature_bits": "0x000000000080ffff"
}
},
"entity_id": "swarm",
"hostname": "swarm-node02",
"kernel_version": "6.1.0-16-amd64",
"root": "/swarm"
}
}
]
Fichier docker-compose.yaml
version: "3.3"
services:
nginx:
image: nginx
networks:
- traefik-public
environment:
- NGINX_PORT:80
volumes:
- /mnt/ceph/nginx/config:/etc/nginx
- /mnt/ceph/nginx/content:/usr/share/nginx
deploy:
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik-public"
- "traefik.http.routers.nginx.rule=Host(`nginx.msi.stef.lan`)"
- "traefik.http.services.nginx.loadbalancer.server.port=80"
- "traefik.http.routers.nginx.entrypoints=websecure"
- "traefik.http.routers.nginx.tls=true"
networks:
traefik-public:
external: true
Idem avec