Облачная платформаEvolution

Подключение к Spark Connect через внешний хост


  1. Перейдите в раздел Пользователи → Сервисные аккаунты.

  2. Создайте cервисный аккаунт или откройте уже существующий.

  3. Перейдите на вкладку API-ключи.

  4. Нажмите Создать API-ключ.

  5. Введите название ключа, например spark-api-key.

  6. Введите описание ключа.

  7. В поле Сервисы выберите Evolution Data Platform.

  8. Нажмите Создать.

  9. Сохраните значение API-ключа. После закрытия окна получить его будет нельзя.

  10. Добавьте путь к скачанному сертификату в переменную окружения:

    export GRPC_DEFAULT_SSL_ROOTS_FILE_PATH="<path-to-certificate>"

    Вместо <path-to-certificate> укажите путь к скачанному сертификату.

  11. Сформируйте URI для подключения к Spark Connect:

    f"sc://{host}:{port}/;use_ssl=true;x-api-key={apikey}"

    Укажите следующие значения:

    • {host} — хост из карточки инстанса Managed Spark.

    • {port} — 443.

    • {apikey} — сохраненное значение API-ключа.

    URI содержит значения параметров:

    Параметр

    Значение

    Описание

    use_ssl

    true

    Обязательный параметр. Включает TLS-шифрование соединения.

    x-api-key

    Cохраненное значение API-ключа.

    Обязательный параметр. Включает аутентификацию по API-ключу.

  12. Инициализируйте подключение с помощью скрипта:

    import os
    from pyspark.sql.connect.session import SparkSession
    from dotenv import load_dotenv
    load_dotenv()
    host = os.environ["SPARK_CONNECT_HOST"]
    apikey = os.environ["SA_API_KEY"]
    port = 443
    spark = SparkSession.builder.remote(f"sc://{host}:{port}/;use_ssl=true;x-api-key={apikey}").getOrCreate()