oap-project / raydp

RayDP provides simple APIs for running Spark on Ray and integrating Spark with AI libraries.
Apache License 2.0
293 stars 66 forks source link

Failed validating 'additionalProperties' in schema when using Python 3.8 for docker example #305

Open hudan1992 opened 1 year ago

hudan1992 commented 1 year ago

I followed the guidance to start a ray cluster on k8s using https://github.com/oap-project/raydp/blob/master/docker/example.yaml. It was working for Python 3.7. However, for Python 3.8, it kept raising schema validation error as follows. I was using raydp-0.6.0 with ray-2.0.0. Thanks for the help!

 $ ray up raydp-master/docker/example.yaml
Cluster: default_new

Converting legacy cluster config to a multi node type cluster config. Multi-node-type cluster configs are the recommended format for configuring Ray clusters. See the docs for more information:
https://docs.ray.io/en/master/cluster/config.html#full-configuration
Checking Kubernetes environment settings
Traceback (most recent call last):
  File "/Users/opt/anaconda3/envs/automl-env/bin/ray", line 8, in <module>
    sys.exit(main())
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/scripts/scripts.py", line 2588, in main
    return cli()
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/click/core.py", line 1128, in __call__
    return self.main(*args, **kwargs)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/click/core.py", line 1053, in main
    rv = self.invoke(ctx)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/click/core.py", line 1659, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/click/core.py", line 1395, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/click/core.py", line 754, in invoke
    return __callback(*args, **kwargs)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/autoscaler/_private/cli_logger.py", line 852, in wrapper
    return f(*args, **kwargs)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/scripts/scripts.py", line 1206, in up
    create_or_update_cluster(
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/autoscaler/_private/commands.py", line 273, in create_or_update_cluster
    config = _bootstrap_config(config, no_config_cache=no_config_cache)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/autoscaler/_private/commands.py", line 367, in _bootstrap_config
    validate_config(config)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/autoscaler/_private/util.py", line 143, in validate_config
    raise e from None
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/ray/autoscaler/_private/util.py", line 141, in validate_config
    jsonschema.validate(config, schema)
  File "/Users/opt/anaconda3/envs/automl-env/lib/python3.8/site-packages/jsonschema/validators.py", line 1121, in validate
    raise error
jsonschema.exceptions.ValidationError: Additional properties are not allowed ('head_node', 'worker_nodes' were unexpected)

Failed validating 'additionalProperties' in schema:
    {'$id': 'http://github.com/ray-project/ray/python/ray/autoscaler/ray-schema.json',
     '$schema': 'http://json-schema.org/draft-07/schema#',
     'additionalProperties': False,
     'definitions': {'commands': {'items': {'description': 'shell command',
                                            'type': 'string'},
                                  'type': 'array'}},
     'description': 'Ray autoscaler schema',
kira-lin commented 1 year ago

Sorry, this file is pretty stale now, we did not update it for a long time. Please refer to here to start a ray cluster on k8s.