iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 21
0
DevOps

Hashicorp 0 到 0.003系列 第 21

Day 21. Nomad mount volume

  • 分享至 

  • xImage
  •  

今天介紹如何在Nomad job裡掛上host volume.

Nomad client

要在Nomad job裡設定像docker可以mount volume,要在Nomad client裡規劃host_volume.

  1. 首先我們先看一下沒有而外mount volume時,container裡面長怎樣:
    https://ithelp.ithome.com.tw/upload/images/20200921/20129223px8t0VIJ06.png
    可以看到裡面有一個/alloc這個是Nomad預設的,它在host實際的位置會在
    /home/ec2-user/nomad/data/alloc/f5ea985a-fccd-3a8d-9e3b-770a23806fac/alloc
    那一串亂數是task ID可以透過nomad job status erp來查看host的對應位置。
$ nomad job status erp
...
...
Allocations
ID        Node ID   Task Group  Version  Desired  Status   Created     Modified
f5ea985a  a7db9bf6  webfront    0        run      running  16m22s ago  15m51s ago
  1. 接下來在Nomad client設定兩個host_volume,名稱是ithome01與ithome02,名稱之後在設定job file時會使用到,重啟後生效。
    Note:如果有多個Nomad client就要都設定一樣,不然job重啟後因為不知道Nomad會幫你分配到哪一台,所以會報錯喔!不然就是要設定constraint讓job固定在某幾台Nomad client上。
client {
  enabled = true
  servers = ["10.168.1.135:4647"]
  server_join {
    retry_join = ["10.168.1.135:4647"]
    retry_max = 3
    retry_interval = "15s"
  }

  host_volume "ithome01" {
    path = "/home/ec2-user/client_volumes/v01"
    read_only = false
  }

  host_volume "ithome02" {
    path = "/home/ec2-user/client_volumes/v02"
    read_only = false
  }
...
...
}
...
...

可以從Web UI看到client volume數是2,新增成功。
https://ithelp.ithome.com.tw/upload/images/20200921/20129223nrWTJHw0ei.png

  1. 設定job file
job "erp" {
  datacenters = ["Nomad-WHQ-DEV"]
  group "webfront" {
    count = 1
    volume "task_ithome" {
      type      = "host"
      read_only = false
      source    = "ithome01"
    }
....
   task "nginx" {
      
...
     volume_mount {
        volume      = "task_ithome"
        destination = "/ithome"
        read_only   = false
     }
  ...

說明:
https://ithelp.ithome.com.tw/upload/images/20200921/201292239d0qU6FKkL.png

  1. 到裡面看一下是不是成功了呢?
    https://ithelp.ithome.com.tw/upload/images/20200921/20129223y3ONjdIGb3.png

上一篇
Day 20. Nomad Job Update Strategies
下一篇
Day 22. Nomad Monitor with Prometheus
系列文
Hashicorp 0 到 0.00330
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言