Yandex Cloud
Search
Discuss with expertTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
    • Cloud Interconnect
    • Cloud Backup
    • Cloud Registry
    • Yandex AI Studio
    • Compute Cloud
    • Object Storage
    • Managed Service for Kubernetes®
    • Yandex BareMetal
    • Smart Web Security
    • Security Deck
    • Managed Service for PostgreSQL
    • Managed Service for ClickHouse®
    • Monium
    • Cloud CDN
    • Network Load Balancer
    • Virtual Private Cloud
    • Cloud DNS
    • Application Load Balancer
    • Yandex Cloud Video
    • Stackland
    • Yandex Cloud Router
    • Yandex Managed Service for Trino
    • Managed Service for MySQL®
    • Managed Service for Valkey™
    • Managed Service for Apache Spark™
    • Yandex StoreDoc
    • Managed Service for OpenSearch
    • Managed Service for Apache Kafka®
    • Data Transfer
    • Yandex MPP Analytics Engine for PostgreSQL
    • Yandex Managed Service for Apache Airflow®
    • Data Processing
    • Yandex MetaData Hub
    • Managed Service for YDB
    • Managed Service for Sharded PostgreSQL
    • Managed Service for YTsaurus
    • Yandex WebSQL
    • DataLens
    • Yandex Search API
    • SpeechSense
    • SpeechKit
    • DataSphere
    • Vision OCR
    • Translate
    • Yandex Identity Hub
    • Key Management Service
    • Certificate Manager
    • Yandex Lockbox
    • Audit Trails
    • SmartCaptcha
    • Cloud Desktop
    • Yandex SIEM
    • SourceCraft Code Assistant
    • Container Registry
    • Managed Service for GitLab
    • Managed Service for Prometheus®
    • Cloud Functions
    • API Gateway
    • Yandex Cloud Postbox
    • Message Queue
    • Serverless Integrations
    • IoT Core
    • Data Streams
    • Serverless Containers
    • Cloud Notification Service
    • Yandex Query
    • Identity and Access Management
    • Yandex Cloud Console
    • Resource Manager
    • Yandex Cloud Billing
    • Yandex Cloud Quota Manager
    • Cloud Apps
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex Managed Service for Apache Spark™
  • Getting started
    • All guides
      • Creating a workspace
      • Updating a workspace
      • Delete the environments.
  • Access management
  • Pricing policy
  • Yandex Monitoring metrics
  • Audit Trails events
  • Terraform reference
  • Release notes

In this article:

  • Creating a workspace
  • Creating a new environment based on an existing one
  1. Step-by-step guides
  2. Environments
  3. Creating a workspace

Creating a workspace

Written by
Yandex Cloud
Updated at September 9, 2026
View in Markdown
  • Creating a workspace
  • Creating a new environment based on an existing one

You can create an environment from scratch or create a new environment based on an existing one and edit the parameters.

Creating a workspaceCreating a workspace

Management console
gRPC API
  1. In the management console, select the folder.

  2. Navigate to Managed Service for Apache Spark™.

  3. In the left-hand panel, select  Environments.

  4. Click Create environment.

  5. Under General information:

    1. Specify a name for the environment.

    2. Optionally, enter a description for the environment.

    3. Optionally, create labels:

      1. Click Add label.
      2. Add a label in key: value format.
      3. Press Enter.
  6. Under Base environment, select a base environment from the list.

  7. Under Packages:

    • Pip packages: pip package names separated by spaces to install additional libraries and applications into the environment.
    • Deb packages: deb package names separated by spaces to install additional libraries and applications into the environment.

    You can set version restrictions for the installed packages, e.g.:

    py4j>=0.10.9.7 pandas>=1.05 grpcio>=1.48,<1.57 grpcio-status>=1.48,<1.57 googleapis-common-protos==1.56.4
    

    The package name format and version are defined by the install command: pip install for pip packages and apt install for deb packages.

    Warning

    You cannot change the package list after the environment has been created. If you want to change the list of packages, create a new environment based on an existing one and make the changes.

  8. Click Create.

  1. Get an IAM token for API authentication and put it into an environment variable:

    export IAM_TOKEN="<IAM_token>"
    
  2. Clone the cloudapi repository:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Below, we assume that the repository contents reside in the ~/cloudapi/ directory.

  3. Get a list of base environments by calling EnvironmentService/ListBase:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/spark/v1/environment/environment_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d '{
             "folder_id": "<folder_ID>"
         }' \
      spark.api.cloud.yandex.net:443 \
      yandex.cloud.spark.v1.environment.EnvironmentService.ListBase
    

    You can get the folder ID with the list of folders in the cloud.

  4. Use the EnvironmentService/Create call to create your environment:

    grpcurl \
      -format json \
      -import-path ~/cloudapi/ \
      -import-path ~/cloudapi/third_party/googleapis/ \
      -proto ~/cloudapi/yandex/cloud/spark/v1/environment/environment_service.proto \
      -rpc-header "Authorization: Bearer $IAM_TOKEN" \
      -d '{
             "base_id": "<base_environment_ID>",
             "folder_id": "<folder_ID>",
             "name": "<environment_name>",
             "description": "<environment_description>",
             "labels": {
               "<label_key>": "<label_value>"
             },
             "config": {
               "pip_packages": [
                 "<pip_package_1>",
                 "<pip_package_2>"
               ],
               "deb_packages": [
                 "<deb_package_1>",
                 "<deb_package_2>"
               ]
             }
         }' \
      spark.api.cloud.yandex.net:443 \
      yandex.cloud.spark.v1.environment.EnvironmentService.Create
    

    Where:

    • base_id: Base environment ID you got in the previous step.

    • folder_id: Folder ID.

    • name: Environment name.

    • description: Environment description.

    • labels: Environment labels.

    • config: Parameters of packages you need to install into the environment:

      • pip_packages: List of pip packages.
      • deb_packages: List of deb packages.

      You can set version restrictions for the installed packages, e.g.:

      "pip_packages": [
        "pandas==2.1.1",
        "scikit-learn>=1.0.0",
        "clickhouse-driver~=0.2.0"
      ]
      

      The package name format and version are defined by the install commands: pip install for pip packages and apt install for deb packages.

  5. Check the server response to make sure your request was successful.

Creating a new environment based on an existing oneCreating a new environment based on an existing one

Management console
  1. In the management console, select the folder.
  2. Navigate to Managed Service for Apache Spark™.
  3. In the left-hand panel, select  Environments.
  4. Select the required environment from the list, navigate to it and click Create a copy of the environment on the top panel.
  5. Add or change the environment parameters.
  6. Click Create.

Was the article helpful?

Previous
Deleting a cluster
Next
Updating a workspace
© 2026 Direct Cursus Technology L.L.C.