[Yandex Cloud documentation](../../../index.md) > [Yandex Cloud CDN](../../index.md) > [Step-by-step guides](../index.md) > Origin groups > Creating an origin group

# Creating an origin group

To create an [origin group](../../concepts/origins.md):

{% list tabs group=instructions %}

- Management console {#console}

  1. In the [management console](https://console.yandex.cloud), select the [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder) to host your origin group.
  1. Navigate to **Cloud CDN**.
  1. In the left-hand panel, select ![image](../../../_assets/console-icons/folder-tree.svg) **Origin groups**.
  1. Click **Create origin group**.
  1. Enter a name for the origin group.
  1. Configure **Origin**:
     * Specify the **Origin type**: `Server`, `Bucket`, or `L7 load balancer`. For more information about types, see [Origins and origin groups](../../concepts/origins.md).
     * Specify an origin.
     * Select the **Priority**: `Active` or `Backup`. For more information about priorities, see [Origin groups](../../concepts/origins.md#groups).
     * Add other origins if needed.
  1. Select the CDN provider. Always set it to `Yandex Cloud CDN`.
  1. Click **Create**.

- CLI {#cli}

  If you do not have the Yandex Cloud CLI yet, [install and initialize it](../../../cli/quickstart.md#install).

  The folder used by default is the one specified when [creating](../../../cli/operations/profile/profile-create.md) the CLI profile. To change the default folder, use the `yc config set folder-id <folder_ID>` command. You can also specify a different folder for any command using `--folder-name` or `--folder-id`. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.

  1. View the description of the [CLI](../../../cli/index.md) command to create an origin group:

     ```bash
     yc cdn origin-group create --help
     ```

  1. Create an origin group in the default [folder](../../../resource-manager/concepts/resources-hierarchy.md#folder):

     ```bash
     yc cdn origin-group create --name <origin_group_name> \
       --origin source=<origin_IP_address_or_domain_name>,enabled=true \
       --origin source=<origin_IP_address_or_domain_name>,enabled=true,backup=true
     ```

     Where `--origin` is the [origin](../../concepts/resource.md) specification:
     * `source`: Origin [IP address](../../../vpc/concepts/address.md) or domain name.
     * `enabled`: Flag showing whether the origin is enabled.
     * `backup`: Flag showing whether the origin as a backup one. For more information about priorities, see [Origin groups](../../concepts/origins.md#groups).

     Result:

     ```text
     id: "89018"
     folder_id: b1g86q4m5vej********
     name: test-group
     use_next: true
     origins:
     - id: "559295"
       origin_group_id: "89018"
       source: www.example2.com
       enabled: true
       backup: true
     - id: "559294"
       origin_group_id: "89018"
       source: www.example1.com
       enabled: true
     ```

     For more information about the `yc cdn origin-group create` command, see the [CLI reference](../../../cli/cli-ref/cdn/cli-ref/origin-group/create.md).

- Terraform {#tf}

  With [Terraform](https://www.terraform.io/), you can quickly create a cloud infrastructure in Yandex Cloud and manage it using configuration files. These files store the infrastructure description written in HashiCorp Configuration Language (HCL). If you change the configuration files, Terraform automatically detects which part of your configuration is already deployed, and what should be added or removed.
  
  Terraform is distributed under the [Business Source License](https://github.com/hashicorp/terraform/blob/main/LICENSE). The [Yandex Cloud provider for Terraform](https://github.com/yandex-cloud/terraform-provider-yandex) is distributed under the [MPL-2.0](https://www.mozilla.org/en-US/MPL/2.0/) license.
  
  For more information about the provider resources, see the relevant documentation on the [Terraform](https://www.terraform.io/docs/providers/yandex/index.html) website or [its mirror](../../../terraform/index.md).

  If you do not have Terraform yet, [install it and configure the Yandex Cloud provider](../../../tutorials/infrastructure-management/terraform-quickstart.md#install-terraform).
  
  
  To manage infrastructure using Terraform under a service account or user accounts (a Yandex account, a federated account, or a local user), [authenticate](../../../terraform/authentication.md) using the appropriate method.

  1. Define the parameters of the `yandex_cdn_origin_group` resource in the configuration file.

     ```hcl
     resource "yandex_cdn_origin_group" "my_group" {
       name          = "<origin_group_name>"
       use_next      = true
       provider_type = "<CDN_provider>"
       origin {
       source = "<origin_1_IP_address_or_domain_name>"
       }
       origin {
       source = "<origin_2_IP_address_or_domain_name>"
       }
       origin {
       source = "<origin_3_IP_address_or_domain_name>"
       backup = false
       }
     }
     ```
     
     Where:
     * `name`: Origin group name.
     * `use_next`: Indicates whether to use the next [origin](../../concepts/resource.md) on the list.
     * `provider_type`: CDN provider. This is an optional setting. The only possible value is `ourcdn`, the Yandex Cloud CDN provider.
     * `origin`: Origin specification:
         * `source`: Origin [IP address](../../../vpc/concepts/address.md) or domain name.
         * `enabled`: Flag showing whether the origin is enabled.
         * `backup`: Flag showing whether the origin as a backup one. For more information about priorities, see [Origin groups](../../concepts/origins.md#groups).
     
     For more information about the resources you can create with Terraform, see [this provider guide](../../../terraform/resources/cdn_origin_group.md).

  1. Create the resources:

     1. In the terminal, navigate to the configuration file directory.
     1. Make sure the configuration is correct using this command:
     
        ```bash
        terraform validate
        ```
     
        If the configuration is valid, you will get this message:
     
        ```bash
        Success! The configuration is valid.
        ```
     
     1. Run this command:
     
        ```bash
        terraform plan
        ```
     
        You will see a list of resources and their properties. No changes will be made at this step. Terraform will show any errors in the configuration.
     1. Apply the configuration changes:
     
        ```bash
        terraform apply
        ```
     
     1. Type `yes` and press **Enter** to confirm the changes.

     Terraform will create all the required resources. You can check the new CDN resource using the [management console](https://console.yandex.cloud) or this [CLI](../../../cli/index.md) command:

     ```bash
     yc cdn origin-group list
     ```

- API {#api}

  Use the [create](../../api-ref/OriginGroup/create.md) REST API method for the [OriginGroup](../../api-ref/OriginGroup/index.md) resource or the [OriginGroupService/Create](../../api-ref/grpc/OriginGroup/create.md) gRPC API call.

{% endlist %}