使用nomad管理集群-2 tailscale组网

背景#

上一篇文章介绍了如何单机部署nomad,这一篇介绍如何使用tailscale组成大内网,并使用nomad管理该内网集群

TAILSCALE介绍#

下面是引用知乎的原话

Tailscale 是一种基于 WireGuard 的虚拟组网工具,它能帮助我们把安装了 Tailscale 服务的机器,都放到同一个局域网内,即公司或者家里的 PC 机器连到同一网络,甚至云服务器都能放到同一个局域网。

如果用过zerotier,n2n或者openvpn,应该就能明白什么是虚拟局域网,tailscale的功能就是组一个局域网。

除此之外,tailscale有一个叫magic DNS的东西。一般来说我们需要通过ip去访问一个远程机器,但是tailscale可以直接通过一个hostname去访问,非常方便,具体看下面教程。

部署过程#

  1. 登陆tailscale官网,生成一个token用于后续在vps中登陆账号

    1379887140

    token类似下面这种形式

    tskey-auth-kE9MUB4CNTRL-cxxxx
    

    最后在dns中打开magic dns

    120002058

  2. 修改hostname(可选)

    修改/etc/hostname中的名称即可

    然后重启vps

  3. 运行以下命令安装tailscale

    sudo apt-get update && sudo apt-get install wget gpg coreutils curl
    curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.noarmor.gpg | sudo tee /usr/share/keyrings/tailscale-archive-keyring.gpg >/dev/null
    curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/focal.tailscale-keyring.list | sudo tee /etc/apt/sources.list.d/tailscale.list
    sudo apt-get update
    sudo apt-get install tailscal
    
  4. 登陆,用刚刚生成的token替换下面的tailscaleAuthkey 那部分

    tailscale login --auth-key "{{tailscaleAuthkey}}"
    
  5. 启动tailscale

    tailscale up
    
  6. 管理面板查看是否显示机器信息

    machine name默认是vps的hostname,也可以自行在管理面板修改,这个名字需要记住

  7. 在vps中ping当前vps的machine name。可以ping通就ok

  8. 在其他机器上(比如自己的本地电脑)也搭建tailscale

修改nomad的配置文件#

修改/etc/nomad.d/nomad.hcl

# Copyright (c) HashiCorp, Inc.
# SPDX-License-Identifier: MPL-2.0

# Full configuration options can be found at https://www.nomadproject.io/docs/configuration

data_dir  = "/opt/nomad/data"
bind_addr = "{{hostname}}"
name = "{{hostname}}"
datacenter="other"
region="1"
server {
  # license_path is required for Nomad Enterprise as of Nomad v1.1.1+
  #license_path = "/etc/nomad.d/license.hclic"
  enabled          = "false"
  #bootstrap_expect = 3
}

client {
  enabled = "true"
  servers = ["{{hostname}}"]
  network_interface="tailscale0"
}

其中name可以随便取,其余"{{hostname}}"填tailscale的machine name。如果client中需要配置多个server,则在后面接着填他们的名字即可。然后重启nomad

clients中的address都会变成tailscale分配的局域网地址,此时外网是访问不了nomad管理界面的,变成了纯内网集群。此时再打开防火墙,允许ssh以及tailscale网卡的流量就可以保证集群的安全了。

作者:velor2012

出处:https://www.cnblogs.com/pdysb/p/17750136.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

邮件: velor2012@163.com
欢迎访问个人博客: https://cwy666.com

posted @   velor2012  阅读(97)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
more_horiz
keyboard_arrow_up light_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示