GNU/Linux >> Tutoriels Linux >  >> Cent OS

Hashicorp Nomad Cluster Lab sur Centos et RockyLinux

Présentation

Nous recherchons depuis un certain temps d'autres moyens d'utiliser les ressources du serveur, une approche simple pour la configuration. Il n'est peut-être pas prêt pour la production, mais il est presque certain que cela vaut la peine d'être mis en place pour le développement. Un orchestrateur qui nous facilite la vie. C'est un outil de gestion d'automatisation. Il fournit, déploie, déclenche, surveille, mesure, suit et assure la sécurité du robot dans l'organisation.

Ainsi, Kubernetes a été conçu pour les conteneurs par Google. Il a l'intention de fournir toutes les fonctionnalités des applications de conteneur Linux, y compris la gestion des clusters, la planification, la découverte de services, la surveillance, la gestion des secrets, etc. Hashicorp nomade se concentre uniquement sur la gestion et la planification des clusters et est conçu avec Philosophie Unix ayant une petite portée.

De plus, Kubernetes est une collection de nombreux services interopérables avec toutes les fonctionnalités. Stockage et coordination fournis par etcd au cœur.

En outre, l'état correspond aux contrôleurs d'API consommés par d'autres services qui offrent des fonctionnalités d'API de haut niveau telles que le planificateur. Kubernetes prend en charge la haute disponibilité pour la configuration des opérations complexes à configurer.

Nomad est également beaucoup plus simple. Un seul binaire pour les clients et les serveurs ne nécessite aucun service externe pour la coordination ou le stockage. Combine un gestionnaire léger et un ordonnanceur sophistiqué. distribué, hautement disponible et simple d'utilisation.

En plus, il est disponible sous forme de binaire précompilé pour presque tous les systèmes d'exploitation. Pour macOS, vous pouvez l'obtenir gratuitement et en open source auprès de Homebrew. Pour Windows, installez le à partir du gestionnaire de packages open source chocolaté. Avec Linux, utilisez yum, dnf ou apt pour installer le paquet.

Hashicorp nomand Installation dans votre système en utilisant dnf

Ainsi, Hashicorp maintient et signe les packages sur son référentiel.

Créez donc ce fichier sur /etc/yum.repos.d/hashicorp.repo avec le contenu ci-dessous.Voudriez-vous s'il vous plaît faire cela pour tous les nœuds maîtres et esclaves ?

Nomade – Lien vers la documentation

# vi /etc/yum.repos.d/hashicorp.repo
[hashicorp]
name=Hashicorp Stable - $basearch
baseurl=https://rpm.releases.hashicorp.com/RHEL/$releasever/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://rpm.releases.hashicorp.com/gpg

[hashicorp-test]
name=Hashicorp Test - $basearch
baseurl=https://rpm.releases.hashicorp.com/RHEL/$releasever/$basearch/test
enabled=0
gpgcheck=1
gpgkey=https://rpm.releases.hashicorp.com/gpg

Installation nomade de Hashicorp avec yum

# dnf -y install nomad 
Last metadata expiration check: 0:11:47 ago on Sat 10 Jul 2021 07:10:43 AM UTC.
Dependencies resolved.
================================================================================================================ Package
          Architecture             Version                     Repository                   Size
================================================================================================================Installing:
 nomad                   x86_64                   1.1.2-1                     hashicorp                    26 M
 consul                       x86_64                       1.10.0-1                       hashicorp                        29 M

Transaction Summary
================================================================================================================Install  1 Pack
age

Total download size: 26 M
Installed size: 82 M
Downloading Packages:
nomad-1.1.2-1.x86_64.rpm                                                                       1.6 MB/s |  26 MB 
    00:15

-------------------------------------------------------------------------------------------------------------------------------
Total                                                                                          1.6 MB/s |  55 MB     00:15
warning: /var/cache/dnf/hashicorp-164999f2fbadbd87/packages/nomad-1.1.2-1.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a3
219f7b: NOKEY
Hashicorp Stable - x86_64                                                                      666  B/s | 3.1 kB     00:04
Importing GPG key 0xA3219F7B:
 Userid     : "HashiCorp Security (HashiCorp Package Signing) <[email protected]>"
 Fingerprint: E8A0 32E0 94D8 EB4E A189 D270 DA41 8C88 A321 9F7B
 From       : https://rpm.releases.hashicorp.com/gpg
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                       1/2
  Running scriptlet: nomad-1.1.2-1.x86_64                                                                                  2/2
Running scriptlet: consul-1.10.0-1.x86_64                                                                                  1/2
  Installing       : nomad-1.1.2-1.x86_64                                                                                  2/2
Installing       : consul-1.10.0-1.x86_64                                                                                  1/2
  Running scriptlet: nomad-1.1.2-1.x86_64                                                                                  2/2
  Verifying        : nomad-1.1.2-1.x86_64                                                                                1/2
Verifying        : consul-1.10.0-1.x86_64                                                                                2/2

Installed:
  nomad-1.1.2-1.x86_64    consul.x86_64

Complete!
[root@master8 ~]#

Nomade Hashicorp vérifier l'installation

# nomad
Usage: nomad [-version] [-help] [-autocomplete-(un)install] <command> [args]

Common commands:
    run         Run a new job or update an existing job
    stop        Stop a running job
    status      Display the status output for a resource
    alloc       Interact with allocations
    job         Interact with jobs
    node        Interact with nodes
    agent       Runs a Nomad agent

Other commands:
    acl                 Interact with ACL policies and tokens
    agent-info          Display status information about the local agent
    deployment          Interact with deployments
    eval                Interact with evaluations
    exec                Execute commands in task
    license             Interact with Nomad Enterprise License
    monitor             Stream logs from a Nomad agent
    namespace           Interact with namespaces
    operator            Provides cluster-level tools for Nomad operators
    plugin              Inspect plugins
    quota               Interact with quotas
    recommendation      Interact with the Nomad recommendation endpoint
    scaling             Interact with the Nomad scaling endpoint
    sentinel            Interact with Sentinel policies
    server              Interact with servers
    system              Interact with the system API
    ui                  Open the Nomad Web UI
    version             Prints the Nomad version
    volume              Interact with volumes
[root@master8 ~]#

Installez également l'agent sur tous les clients

Alors Configurez maintenant le serveur Leader pour le cluster

[root@master ~]# cat /etc/nomad.d/nomad.hcl
# Full configuration options can be found at https://www.nomadproject.io/docs/configuration

data_dir = "/opt/nomad/data"
datacenter = "antipolo"

server {
  enabled = true
  bootstrap_expect = 1
}

[root@master ~]#

Configurer les nœuds clients

[root@worker1 ~]# cat /etc/nomad.d/nomad.hcl
# Full configuration options can be found at https://www.nomadproject.io/docs/configuration

data_dir = "/opt/nomad/data"
datacenter = "antipolo"

client {
  enabled = true
  servers = ["192.168.56.101"]
}

[root@worker1 ~]#

[root@worker2 ~]# cat /etc/nomad.d/nomad.hcl
# Full configuration options can be found at https://www.nomadproject.io/docs/configuration

data_dir = "/opt/nomad/data"
datacenter = "antipolo"

client {
  enabled = true
  servers = ["192.168.56.101"]
}

[root@worker2 ~]#

Vérifiez maintenant le chef s'il est élu

[root@master ~]# nomad server members
Name                       Address         Port  Status  Leader  Protocol  Build  Datacenter  Region
master.example.com.global  192.168.56.101  4648  alive   true    2         1.1.2  antipolo    global

Vérifier l'état des nœuds clients

[root@worker1 ~]# nomad node status
ID        DC        Name                 Class   Drain  Eligibility  Status
522508a4  antipolo  worker2.example.com  <none>  false  eligible     ready
7a357baa  antipolo  worker1.example.com  <none>  false  eligible     ready

Conclusion

Ce tutoriel est de comparer les capacités et les solutions alternatives. Nous voudrons peut-être rester à ce que vous utilisez.


Cent OS
  1. Comment installer un cluster Kubernetes sur CentOS 7

  2. Comment installer Hashicorp Vault sur CentOS 7

  3. Comment configurer le cluster RabbitMQ sur CentOS 7

  4. Comment configurer le cluster de bases de données Riak KV NoSQL sur CentOS 7

  5. Comment installer le cluster Percona XtraDB sur CentOS 7

Comment configurer un cluster haute disponibilité sur CentOS 7 / RHEL 7

Comment installer Openldap sur RockyLinux ou Centos 8 étape par étape

Installer Proftpd sur Centos et Rockylinux 8

Configurer VCS sur CentOS 8 | RHEL 8 étape par étape

Comment configurer un cluster Redis dans CentOS 8 - Partie 3

Comment installer le cluster Kubernetes sur CentOS 8