Skip to content

Commit

Permalink
feat: remove network topology config (#326)
Browse files Browse the repository at this point in the history
Signed-off-by: Gaius <[email protected]>
  • Loading branch information
gaius-qi authored Sep 30, 2024
1 parent b02430c commit eb5560e
Show file tree
Hide file tree
Showing 6 changed files with 6 additions and 51 deletions.
8 changes: 1 addition & 7 deletions charts/dragonfly-stack/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,6 @@ helm delete dragonfly --namespace dragonfly-system
| dragonfly.externalRedis.brokerDB | int | `1` | External redis broker db. |
| dragonfly.externalRedis.db | int | `0` | External redis db. |
| dragonfly.externalRedis.masterName | string | `""` | External redis sentinel master name. |
| dragonfly.externalRedis.networkTopologyDB | int | `3` | External redis networkTopology db. |
| dragonfly.externalRedis.password | string | `""` | External redis password. |
| dragonfly.externalRedis.username | string | `""` | External redis username. |
| dragonfly.manager.config.auth.jwt.key | string | `"ZHJhZ29uZmx5Cg=="` | Key is secret key used for signing, default value is encoded base64 of dragonfly. Please change the key in production. |
Expand Down Expand Up @@ -357,19 +356,14 @@ helm delete dragonfly --namespace dragonfly-system
| dragonfly.scheduler.config.resource.task.downloadTiny.timeout | string | `"1m"` | timeout is http request timeout. |
| dragonfly.scheduler.config.resource.task.downloadTiny.tls | object | `{"insecureSkipVerify":true}` | tls is download tiny task TLS configuration. |
| dragonfly.scheduler.config.resource.task.downloadTiny.tls.insecureSkipVerify | bool | `true` | insecureSkipVerify controls whether a client verifies the server's certificate chain and hostname. |
| dragonfly.scheduler.config.scheduler.algorithm | string | `"default"` | Algorithm configuration to use different scheduling algorithms, default configuration supports "default", "ml" and "nt". "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm, "nt" is the rule-based and networkTopology-based scheduling algorithm. It also supports user plugin extension, the algorithm value is "plugin", and the compiled `d7y-scheduler-plugin-evaluator.so` file is added to the dragonfly working directory plugins. |
| dragonfly.scheduler.config.scheduler.algorithm | string | `"default"` | Algorithm configuration to use different scheduling algorithms, default configuration supports "default", "ml" and "nt". "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm. It also supports user plugin extension, the algorithm value is "plugin", and the compiled `d7y-scheduler-plugin-evaluator.so` file is added to the dragonfly working directory plugins. |
| dragonfly.scheduler.config.scheduler.backToSourceCount | int | `200` | backToSourceCount is single task allows the peer to back-to-source count. |
| dragonfly.scheduler.config.scheduler.gc.hostGCInterval | string | `"6h"` | hostGCInterval is the interval of host gc. |
| dragonfly.scheduler.config.scheduler.gc.hostTTL | string | `"1h"` | hostTTL is time to live of host. If host announces message to scheduler, then HostTTl will be reset. |
| dragonfly.scheduler.config.scheduler.gc.peerGCInterval | string | `"10s"` | peerGCInterval is the interval of peer gc. |
| dragonfly.scheduler.config.scheduler.gc.peerTTL | string | `"24h"` | peerTTL is the ttl of peer. If the peer has been downloaded by other peers, then PeerTTL will be reset. |
| dragonfly.scheduler.config.scheduler.gc.pieceDownloadTimeout | string | `"30m"` | pieceDownloadTimeout is the timeout of downloading piece. |
| dragonfly.scheduler.config.scheduler.gc.taskGCInterval | string | `"30m"` | taskGCInterval is the interval of task gc. If all the peers have been reclaimed in the task, then the task will also be reclaimed. |
| dragonfly.scheduler.config.scheduler.networkTopology.cache.interval | string | `"5m"` | interval is cache cleanup interval. |
| dragonfly.scheduler.config.scheduler.networkTopology.cache.ttl | string | `"5m"` | ttl is networkTopology cache items ttl. |
| dragonfly.scheduler.config.scheduler.networkTopology.collectInterval | string | `"2h"` | collectInterval is the interval of collecting network topology. |
| dragonfly.scheduler.config.scheduler.networkTopology.probe.count | int | `10` | count is the number of probing hosts. |
| dragonfly.scheduler.config.scheduler.networkTopology.probe.queueLength | int | `5` | queueLength is the length of probe queue. |
| dragonfly.scheduler.config.scheduler.retryBackToSourceLimit | int | `5` | retryBackToSourceLimit reaches the limit, then the peer back-to-source. |
| dragonfly.scheduler.config.scheduler.retryInterval | string | `"700ms"` | Retry scheduling interval. |
| dragonfly.scheduler.config.scheduler.retryLimit | int | `7` | Retry scheduling limit times. |
Expand Down
17 changes: 1 addition & 16 deletions charts/dragonfly-stack/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -404,7 +404,7 @@ dragonfly:
scheduler:
# -- Algorithm configuration to use different scheduling algorithms,
# default configuration supports "default", "ml" and "nt".
# "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm, "nt" is the rule-based and networkTopology-based scheduling algorithm.
# "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm.
# It also supports user plugin extension, the algorithm value is "plugin",
# and the compiled `d7y-scheduler-plugin-evaluator.so` file is added to
# the dragonfly working directory plugins.
Expand Down Expand Up @@ -433,19 +433,6 @@ dragonfly:
# -- hostTTL is time to live of host. If host announces message to scheduler,
# then HostTTl will be reset.
hostTTL: 1h
networkTopology:
# -- collectInterval is the interval of collecting network topology.
collectInterval: 2h
probe:
# -- queueLength is the length of probe queue.
queueLength: 5
# -- count is the number of probing hosts.
count: 10
cache:
# -- interval is cache cleanup interval.
interval: 5m
# -- ttl is networkTopology cache items ttl.
ttl: 5m
# -- resource configuration.
resource:
# -- task configuration.
Expand Down Expand Up @@ -1438,8 +1425,6 @@ dragonfly:
brokerDB: 1
# -- External redis backend db.
backendDB: 2
# -- External redis networkTopology db.
networkTopologyDB: 3

# Using default values from https://github.com/dragonflyoss/helm-charts/blob/main/charts/nydus-snapshotter/values.yaml
nydus-snapshotter:
Expand Down
6 changes: 2 additions & 4 deletions charts/dragonfly/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: dragonfly
description: Dragonfly is an intelligent P2P based image and file distribution system
icon: https://raw.githubusercontent.com/dragonflyoss/Dragonfly2/main/docs/images/logo/dragonfly.svg
type: application
version: 1.2.15
version: 1.2.16
appVersion: 2.1.59
keywords:
- dragonfly
Expand All @@ -27,9 +27,7 @@ sources:

annotations:
artifacthub.io/changes: |
- Update dragonfly version to v2.1.59.
- Update client version to v0.1.109.
- Add insecureSkipVerify and tlsConfig for preheating in the manager.
- Remove the network topology configuration.
artifacthub.io/links: |
- name: Chart Source
Expand Down
8 changes: 1 addition & 7 deletions charts/dragonfly/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,6 @@ helm delete dragonfly --namespace dragonfly-system
| externalRedis.brokerDB | int | `1` | External redis broker db. |
| externalRedis.db | int | `0` | External redis db. |
| externalRedis.masterName | string | `""` | External redis sentinel master name. |
| externalRedis.networkTopologyDB | int | `3` | External redis networkTopology db. |
| externalRedis.password | string | `""` | External redis password. |
| externalRedis.username | string | `""` | External redis username. |
| fullnameOverride | string | `""` | Override dragonfly fullname. |
Expand Down Expand Up @@ -374,19 +373,14 @@ helm delete dragonfly --namespace dragonfly-system
| scheduler.config.resource.task.downloadTiny.timeout | string | `"1m"` | timeout is http request timeout. |
| scheduler.config.resource.task.downloadTiny.tls | object | `{"insecureSkipVerify":true}` | tls is download tiny task TLS configuration. |
| scheduler.config.resource.task.downloadTiny.tls.insecureSkipVerify | bool | `true` | insecureSkipVerify controls whether a client verifies the server's certificate chain and hostname. |
| scheduler.config.scheduler.algorithm | string | `"default"` | Algorithm configuration to use different scheduling algorithms, default configuration supports "default", "ml" and "nt". "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm, "nt" is the rule-based and networkTopology-based scheduling algorithm. It also supports user plugin extension, the algorithm value is "plugin", and the compiled `d7y-scheduler-plugin-evaluator.so` file is added to the dragonfly working directory plugins. |
| scheduler.config.scheduler.algorithm | string | `"default"` | Algorithm configuration to use different scheduling algorithms, default configuration supports "default", "ml" and "nt". "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm. It also supports user plugin extension, the algorithm value is "plugin", and the compiled `d7y-scheduler-plugin-evaluator.so` file is added to the dragonfly working directory plugins. |
| scheduler.config.scheduler.backToSourceCount | int | `200` | backToSourceCount is single task allows the peer to back-to-source count. |
| scheduler.config.scheduler.gc.hostGCInterval | string | `"5m"` | hostGCInterval is the interval of host gc. |
| scheduler.config.scheduler.gc.hostTTL | string | `"1h"` | hostTTL is time to live of host. If host announces message to scheduler, then HostTTl will be reset. |
| scheduler.config.scheduler.gc.peerGCInterval | string | `"10s"` | peerGCInterval is the interval of peer gc. |
| scheduler.config.scheduler.gc.peerTTL | string | `"24h"` | peerTTL is the ttl of peer. If the peer has been downloaded by other peers, then PeerTTL will be reset. |
| scheduler.config.scheduler.gc.pieceDownloadTimeout | string | `"30m"` | pieceDownloadTimeout is the timeout of downloading piece. |
| scheduler.config.scheduler.gc.taskGCInterval | string | `"30m"` | taskGCInterval is the interval of task gc. If all the peers have been reclaimed in the task, then the task will also be reclaimed. |
| scheduler.config.scheduler.networkTopology.cache.interval | string | `"5m"` | interval is cache cleanup interval. |
| scheduler.config.scheduler.networkTopology.cache.ttl | string | `"5m"` | ttl is networkTopology cache items ttl. |
| scheduler.config.scheduler.networkTopology.collectInterval | string | `"2h"` | collectInterval is the interval of collecting network topology. |
| scheduler.config.scheduler.networkTopology.probe.count | int | `10` | count is the number of probing hosts. |
| scheduler.config.scheduler.networkTopology.probe.queueLength | int | `5` | queueLength is the length of probe queue. |
| scheduler.config.scheduler.retryBackToSourceLimit | int | `5` | retryBackToSourceLimit reaches the limit, then the peer back-to-source. |
| scheduler.config.scheduler.retryInterval | string | `"700ms"` | Retry scheduling interval. |
| scheduler.config.scheduler.retryLimit | int | `7` | Retry scheduling limit times. |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ data:
password: {{ .Values.externalRedis.password }}
brokerDB: {{ .Values.externalRedis.brokerDB }}
backendDB: {{ .Values.externalRedis.backendDB }}
networkTopologyDB: {{ .Values.externalRedis.networkTopologyDB }}
{{- end }}
resource:
{{ toYaml .Values.scheduler.config.resource | indent 6 }}
Expand Down
17 changes: 1 addition & 16 deletions charts/dragonfly/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -447,7 +447,7 @@ scheduler:
scheduler:
# -- Algorithm configuration to use different scheduling algorithms,
# default configuration supports "default", "ml" and "nt".
# "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm, "nt" is the rule-based and networkTopology-based scheduling algorithm.
# "default" is the rule-based scheduling algorithm, "ml" is the machine learning scheduling algorithm.
# It also supports user plugin extension, the algorithm value is "plugin",
# and the compiled `d7y-scheduler-plugin-evaluator.so` file is added to
# the dragonfly working directory plugins.
Expand Down Expand Up @@ -476,19 +476,6 @@ scheduler:
# -- hostTTL is time to live of host. If host announces message to scheduler,
# then HostTTl will be reset.
hostTTL: 1h
networkTopology:
# -- collectInterval is the interval of collecting network topology.
collectInterval: 2h
probe:
# -- queueLength is the length of probe queue.
queueLength: 5
# -- count is the number of probing hosts.
count: 10
cache:
# -- interval is cache cleanup interval.
interval: 5m
# -- ttl is networkTopology cache items ttl.
ttl: 5m
# -- resource configuration.
resource:
# -- task configuration.
Expand Down Expand Up @@ -1516,5 +1503,3 @@ externalRedis:
brokerDB: 1
# -- External redis backend db.
backendDB: 2
# -- External redis networkTopology db.
networkTopologyDB: 3

0 comments on commit eb5560e

Please sign in to comment.