Skip to content

Commit

Permalink
Fix version incompatibility causing Kafka service fails to launch (#…
Browse files Browse the repository at this point in the history
…2158)

This issue is caused by multiple version incompatibilities.

- The `DOCKER_API_VERSION` IN `docker-compose.yml` of `kafka-docker` is out of date. This prevents the kafka server from launching. Below is the error message from docker:
`Error response from daemon: {"message":"client version 1.22 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version"}`
 Thus the `DOCKER_API_VERSION` needs to be updated manually.

- After launching the `kafka` service, there are two exceptions being thrown when the LLM agent pipeline connecting to `kafka` service. According to https://stackoverflow.com/questions/78518146/docker-compose-fails-with-error-urllib3-exceptions-urlschemeunknown-not-suppor and google-deepmind/alphafold#867 (comment), those are caused by conda package version incompatibility of `requests` and `urllib3`. Those need to be pinned to a lower version to avoid the issue.

Closes #2152 

## By Submitting this PR I confirm:
- I am familiar with the [Contributing Guidelines](https://github.com/nv-morpheus/Morpheus/blob/main/docs/source/developer_guide/contributing.md).
- When the PR is ready for review, new or existing tests cover these changes.
- When the PR is ready for review, the documentation is up to date with these changes.

Authors:
  - Yuchen Zhang (https://github.com/yczhang-nv)

Approvers:
  - David Gardner (https://github.com/dagardner-nv)

URL: #2158
  • Loading branch information
yczhang-nv authored Jan 30, 2025
1 parent 7694641 commit 5b1cf84
Show file tree
Hide file tree
Showing 12 changed files with 28 additions and 11 deletions.
3 changes: 2 additions & 1 deletion ci/conda/recipes/morpheus-libs/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -102,13 +102,14 @@ outputs:
- python-confluent-kafka >=1.9.2,<1.10.0a0
- python-graphviz
- rapids-dask-dependency {{ rapids_version }} # provides dask and distributed
- requests
- requests<2.29.0
- requests-cache =1.1.*
- scikit-learn =1.3.2.*
- sqlalchemy <2.0 # 2.0 is incompatible with pandas=1.3
- tqdm =4.*
- tritonclient =2.34.*
- typing_utils =0.1.*
- urllib3<2.0
- watchdog =3.0.*
- websockets
test:
Expand Down
3 changes: 2 additions & 1 deletion ci/conda/recipes/morpheus/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -108,13 +108,14 @@ outputs:
- python-confluent-kafka >=1.9.2,<1.10.0a0
- python-graphviz
- rapids-dask-dependency {{ rapids_version }} # provides dask and distributed
- requests
- requests<2.29.0
- requests-cache =1.1.*
- scikit-learn =1.3.2.*
- sqlalchemy <2.0 # 2.0 is incompatible with pandas=1.3
- tqdm =4.*
- tritonclient =2.34.*
- typing_utils =0.1.*
- urllib3<2.0
- watchdog =3.0.*
- websockets
test:
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/all_cuda-125_arch-aarch64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -101,9 +101,9 @@ dependencies:
- rapidjson=1.1.0
- rapids-dask-dependency=24.10
- rdma-core>=48
- requests
- requests-cache=1.1
- requests-toolbelt=1.0
- requests<2.29.0
- s3fs=2024.10
- scikit-build=0.17.6
- scikit-learn=1.3.2
Expand All @@ -115,6 +115,7 @@ dependencies:
- transformers=4.36.2
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- versioneer
- versioneer-518
- watchdog=3.0
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/all_cuda-125_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -104,9 +104,9 @@ dependencies:
- rapidjson=1.1.0
- rapids-dask-dependency=24.10
- rdma-core>=48
- requests
- requests-cache=1.1
- requests-toolbelt=1.0
- requests<2.29.0
- s3fs=2024.10
- scikit-build=0.17.6
- scikit-learn=1.3.2
Expand All @@ -118,6 +118,7 @@ dependencies:
- transformers=4.36.2
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- vale-styles-microsoft
- vale-styles-write-good
- vale=3.7
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/dev_cuda-125_arch-aarch64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,8 @@ dependencies:
- rapidjson=1.1.0
- rapids-dask-dependency=24.10
- rdma-core>=48
- requests
- requests-cache=1.1
- requests<2.29.0
- scikit-build=0.17.6
- scikit-learn=1.3.2
- sphinx
Expand All @@ -96,6 +96,7 @@ dependencies:
- tqdm=4
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- versioneer
- versioneer-518
- watchdog=3.0
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/dev_cuda-125_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ dependencies:
- rapidjson=1.1.0
- rapids-dask-dependency=24.10
- rdma-core>=48
- requests
- requests-cache=1.1
- requests<2.29.0
- scikit-build=0.17.6
- scikit-learn=1.3.2
- sphinx
Expand All @@ -98,6 +98,7 @@ dependencies:
- tqdm=4
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- vale-styles-microsoft
- vale-styles-write-good
- vale=3.7
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/examples_cuda-125_arch-aarch64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -49,16 +49,17 @@ dependencies:
- python-graphviz
- python=3.10
- rapids-dask-dependency=24.10
- requests
- requests-cache=1.1
- requests-toolbelt=1.0
- requests<2.29.0
- s3fs=2024.10
- scikit-learn=1.3.2
- sqlalchemy<2.0
- tqdm=4
- transformers=4.36.2
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- watchdog=3.0
- websockets
- pip:
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/examples_cuda-125_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -51,16 +51,17 @@ dependencies:
- python-graphviz
- python=3.10
- rapids-dask-dependency=24.10
- requests
- requests-cache=1.1
- requests-toolbelt=1.0
- requests<2.29.0
- s3fs=2024.10
- scikit-learn=1.3.2
- sqlalchemy<2.0
- tqdm=4
- transformers=4.36.2
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- watchdog=3.0
- websockets
- pip:
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/runtime_cuda-125_arch-aarch64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,14 @@ dependencies:
- python-graphviz
- python=3.10
- rapids-dask-dependency=24.10
- requests
- requests-cache=1.1
- requests<2.29.0
- scikit-learn=1.3.2
- sqlalchemy<2.0
- tqdm=4
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- watchdog=3.0
- websockets
- pip:
Expand Down
3 changes: 2 additions & 1 deletion conda/environments/runtime_cuda-125_arch-x86_64.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,14 @@ dependencies:
- python-graphviz
- python=3.10
- rapids-dask-dependency=24.10
- requests
- requests-cache=1.1
- requests<2.29.0
- scikit-learn=1.3.2
- sqlalchemy<2.0
- tqdm=4
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- watchdog=3.0
- websockets
- pip:
Expand Down
3 changes: 2 additions & 1 deletion dependencies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -402,13 +402,14 @@ dependencies:
- python-graphviz
- pluggy=1.3
- rapids-dask-dependency=24.10 # provides dask and distributed
- requests
- requests<2.29.0
- requests-cache=1.1
- scikit-learn=1.3.2
- sqlalchemy<2.0 # 2.0 is incompatible with pandas=1.3
- tqdm=4
- tritonclient=2.34
- typing_utils=0.1
- urllib3<2.0
- watchdog=3.0
- websockets
- pip
Expand Down
6 changes: 6 additions & 0 deletions docs/source/developer_guide/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -314,6 +314,12 @@ Launching a full production Kafka cluster is outside the scope of this project;
$ echo $KAFKA_ADVERTISED_HOST_NAME
"172.17.0.1"
```
1. Change the value of `DOCKER_API_VERSION` to an updated version. The default version `1.22` is no longer supported by Kafka. The supported version can be obtained by running `docker version` command and looking into `API version` field. For example, if the `API version` of the machine is `1.47`, the configuration should be updated to:

```yaml
environment:
DOCKER_API_VERSION: 1.47
```
6. Launch Kafka with 3 instances:

```bash
Expand Down

0 comments on commit 5b1cf84

Please sign in to comment.