Skip to content

akamai-compute-marketplace/nomad-client-occ

Repository files navigation

HashiCorp Nomad Client One-Click CLUSTER

HashiCorp Nomad is a simple and flexible container orchestration platform for managing workloads at scale. The Akamai Connected Cloud One-Click Nomad Clients will deploy 3, 5 or 7 Nomad Clients to an Existing Nomad One-Click Cluster.

Software Included on Nomad Clients

Software Version Description
Nomad 1.5.2 HashiCorp Container Orchestration
Consul 1.16.1 HashiCorp Service Discovery Mesh
Docker latest Container Management Service
Java-jdk 17.0.1 Java JDK
Fail2ban 0.11.2 Provides protection against brute force and authentication attempts
UFW 0.36 Easy-to-use firewall wrapper used to allow HTTP/S and SSH ports
Certbot 1.12 Is used to obtain HTTPS/TLS/SSL certificate for the provided domain

Supported Distributions:

  • Ubuntu 22.04 LTS

Linode Helpers Included

Name Action
Hostname Assigns a hostname to the Linode based on domains provided via UDF or uses default rDNS.
Update Packages The Update Packages module performs apt update and upgrade actions as root.
UFW Add UFW firewalls to the Linode
Fail2Ban The Fail2Ban module installs, activates and enables the Fail2Ban service.

Use our API

Customers can choose to the deploy the Nomad Clients through the Linode Marketplace or directly using API. Before using the commands below, you will need to create an API token or configure linode-cli on an environment, and substitute for default values.

SHELL:

curl -H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X POST -d '{
    "authorized_users": [
        "user1",
        "user2"
    ],
    "backups_enabled": false,
    "booted": true,
    "image": "linode/ubuntu22.04",
    "label": "nomad-client-occ",
    "private_ip": true,
    "region": "us-ord",
    "root_pass": "A_Really_Great_password",
    "stackscript_data": {
        "clusterheader": "Yes",
        "add_ssh_keys": "yes",
        "cluster_size": "3",
        "cluster_uuid": "CLUSTER_UUID",
        "consul_nomad_autojoin_token_password": "CONSUL_NOMAD_AUTOJOIN_TOKEN",
        "token_password": "LINODE_API_TOKEN",
        "sudo_username": "sudo_user"
    },
    "stackscript_id": 1226545,
    "tags": [],
    "type": "g6-dedicated-4"
}' https://api.linode.com/v4/linode/instances

CLI:

linode-cli linodes create \
  --authorized_users user1 \
  --authorized_users user2 \
  --backups_enabled false \
  --booted true \
  --image 'linode/ubuntu22.04' \
  --label nomad-occ \
  --private_ip true \
  --region us-ord \
  --root_pass 'A_Really_Great_password' \
  --stackscript_data '{"clusterheader": "Yes","add_ssh_keys":"yes","cluster_size":"3","cluster_uuid":"CLUSTER_UUID", 
"consul_nomad_autojoin_token_password":"CONSUL_NOMAD_AUTOJOIN_TOKEN","token_password":"LINODE_API_TOKEN","sudo_username":"user1"}' \
  --stackscript_id 1226545 \
  --type g6-dedicated-4

Resources

About

Akamai Compute Marketplace Nomad Client Deployment playbook

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •