Quickstart Guide

The following guide explains how to quickly set up a LogScale cluster in AWS using the Humio Operator. We will create the required AWS resources, install the Humio Operator, and setting up a simple LogScale cluster, all in a couple of easy steps using Terraform. For production installations, it is recommended to follow the full AWS Installation Guide and Reference Architecture and decide how running LogScale fits into your infrastructure.

AWS Quickstart Guide - Prerequisites

Quickstart requires the following tooling:

For authentication and permissions, ensure that you are logged into the AWS through the terminal and have the necessary permissions to create resources such as EKS and MSK clusters and S3 buckets. For additional AWS authentication options, see the authentication section of the terraform AWS provider documentation.

Installation

To use the automations:

  1. Clone the LogScale AWS repo, which contains all the needed automations.

    shell
    git clone https://github.com/CrowdStrike/logscale-aws
    cd logscale-aws

    Export the LogScale license as a Terraform environment variable:

    shell
    export TF_VAR_humiocluster_license=<your_logscale_license>
  2. Setup the zone_name in the terraform.tfvars file. The zone name should be a Route53 zone of your choice, created before applying the following steps.

  3. Create an S3 bucket to hold the Terraform state, along with a DynamoDB table for state locks and edit the backend "s3" block in /versions.tf as such:

    backend "s3" {
            bucket = <state_s3_bucket_name>
            key = "state/terraform.tfstate"
            region = <aws_region>
            dynamodb_table = <dynamodb_table_name>
            encrypt = true
            profile = <aws_profile>
          }
  4. Initialize Terraform and apply the AWS Resources.

    $ terraform init
  5. Create and switch to a new Terraform workspace:

    $ terraform workspace new <workspace_name>
    $ terraform workspace select <workspace_name>
  6. Apply the Terraform resources

    shell
    $ terraform apply -var-file terraform.tfvars -target module.vpc -target module.msk -target module.eks
  7. After the previous apply completed, an EKS cluster will be up and running. Next we will install the required CRDs in EKS using the following command.

    shell
    $ terraform apply -var-file terraform.tfvars -target module.crds
  8. Once the CRDs are installed, the EKS cluster is ready to host the Humio Operator. Run the next command to install the LogScale Operator and configure a basic LogScale cluster.

    shell
    $ terraform apply -var-file terraform.tfvars -target module.logscale
  9. Finally, we'll check the status of the LogScale cluster by running

    shell
    $ kubectl get humiocluster -n logging -w

    Initially the cluster will go into the state Bootstrapping as it starts up, but once it starts all nodes it will go into the state of Running.

  10. Access the cluster using the URL: https://aws.<your_route53_zone_name>

Sending Data to the Cluster

To send data to the cluster, use the following section in our AWS Architecture.