GithubHelp home page GithubHelp logo

jzj / nomad-occ Goto Github PK

View Code? Open in Web Editor NEW

This project forked from akamai-compute-marketplace/nomad-occ

0.0 0.0 0.0 64 KB

Akamai Compute Marketplace Nomad Cluster Deployment playbook

License: MIT License

Shell 66.48% HCL 6.24% Jinja 27.28%

nomad-occ's Introduction

HashiCorp Nomad One-Click CLUSTER

HashiCorp Nomad is a simple and flexible container orchestration platform for managing workloads at scale. The Akamai Connected Cloud One-Click CLUSTER will deploy 3 Nomad Servers and 3 Nomad Clients, bootstrapped into a single cluster and ready to accept jobs. Limitations: The current bootstrap method limits to ONE server cluster per datacenter.

Software Included on Nomad Servers

Software Version Description
Nomad 1.5.2 HashiCorp Container Orchestration
Consul 1.16.1 HashiCorp Service Discovery Mesh
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

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 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 One-Click Cluster 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-occ",
    "private_ip": true,
    "region": "us-ord",
    "root_pass": "A_Really_Great_password",
    "stackscript_data": {
        "clusterheader": "Yes",
        "add_ssh_keys": "yes",
        "cluster_size": "6",
        "servers": "3",
        "clients": "3",
        "token_password": "LINODE_API_TOKEN",
        "sudo_username": "sudo_user"
        "email_address": "EMAIL_ADDRESS",
    },
    "stackscript_id": 1226544,
    "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":"6","clients":"3","servers":"3","token_password":"LINODE_API_TOKEN","sudo_username":"user1","email_address":"EMAIL_ADDRESS"}' \
  --stackscript_id 1226544 \
  --type g6-dedicated-4

Resources

nomad-occ's People

Contributors

n0vabyte avatar tbaka avatar hmorris3293 avatar rylabs-billy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.