hi, I’m trying to upgrade my ray cluster to latest 1.9.0 but encountered below error during serve deployment.
- @serve class:
@serve.deployment(num_replicas=1)
@serve.ingress(app=serve_app)
class PricingApi(object):
- deploy script:
ray.init(address='localhost:6379',
_redis_password='5241590000000000',
log_to_driver=False,
namespace='serve')
PricingApi.deploy()
- I run above deploy script from project root and I got errors:
2021-12-07 03:48:37,383 INFO worker.py:842 -- Connecting to existing Ray cluster at address: 10.1.1.14:6379
2021-12-07 03:48:37,652 INFO api.py:242 -- Updating deployment 'PricingApi'. component=serve deployment=PricingApi
{'object_store_memory': 1491309772.0, 'memory': 2982619547.0, 'CPU': 2.0, 'node:10.1.1.14': 1.0}
Traceback (most recent call last):
File "deploy_ray_serve.py", line 10, in <module>
deploy_cluster()
File "deploy_ray_serve.py", line 7, in deploy_cluster
PricingApi.deploy()
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/ray/serve/api.py", line 789, in deploy
return _get_global_client().deploy(
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/ray/serve/api.py", line 93, in check
return f(self, *args, **kwargs)
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/ray/serve/api.py", line 248, in deploy
self._wait_for_goal(goal_id)
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/ray/serve/api.py", line 184, in _wait_for_goal
raise async_goal_exception
RuntimeError: Deployment 'PricingApi' failed, deleting it asynchronously.
- Here’s related log from ray’s log:
2021-12-07 03:48:39,670 ERROR worker.py:431 -- Exception raised in creation task: The actor died because of an error raised in its creation task, ray::SERVE_REPLICA::PricingApi#gxItCf:RayServeWrappedReplica.__init__ (pid=3668, ip=10.1.1.14)
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/concurrent/futures/_base.py", line 437, in result
return self.__get_result()
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result
raise self._exception
File "/opt/hostedtoolcache/Python/3.8.12/x64/lib/python3.8/site-packages/ray/serve/replica.py", line 48, in __init__
deployment_def = cloudpickle.loads(serialized_deployment_def)
ModuleNotFoundError: No module named 'bct'
:actor_name:PricingApi
Any thought?