迁移哪吒探针

技术 · 2022-05-09

最近virmach支持迁移到其它地区的Ryzen服务器,正好之前买的ip被墙了,由于当时在忙工作,没注意,过了几天才发现是被墙的,也懒得找客服,心想就等着解封吧,结果等了将近半年依然没有解封,看来是永封了,正好现在支持迁移就立马迁移到西雅图了。

由于迁移的比较仓促,只备份了哪吒探针的服务端,没有备份相关的nginx配置,所以之后又重新部署了一遍。下面就梳理一下迁移流程:

  1. 备份服务端下的/opt/nezha文件夹。
  2. 在新服务器上新安装哪吒服务面板,安装完成之后将之前备份的覆盖到本地的/opt/nezha文件夹下,启动就可以了。
  3. 配置nginx转发,由于客户端连接的域名通过nginx转发之后无法进行域名证书续签,所以只好走80端口了。

具体的nginx配置如下:

(1)服务器端转发配置:

    location /
    {
        proxy_pass http://127.0.0.1:8008;
        proxy_set_header Host $host;
    }
    location /ws
    {
        proxy_pass http://127.0.0.1:8008;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_set_header Host $host;
    }
    location /terminal
    {
        proxy_pass http://127.0.0.1:8008;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
        proxy_set_header Host $host;
    }

(2)客户端转发配置:

    #开启http2
    listen       80 http2;
    #可以把access日志关了,不然太多
    access_log  off;
    #重要,不开启是不行的
    underscores_in_headers on;
    location / {
        grpc_read_timeout 300s;
        grpc_send_timeout 300s;
        grpc_pass grpc://127.0.0.1:5555;
    }

好了,基本上部署完毕后就可以看到所有的服务器都在线了。

补充:
最近登录的时候一直提示 server response missing access_token,网上查说是反代https的问题,可是我这里明明之前是可以的,查找半天无果,后来在github的secret界面发现密钥一直没有使用过,感觉不太对劲,于是重新添加了一个新的并替换了现有配置,重启之后发现问题解决,这才想起来之前迁移的时候可能是误删了新建的secret。具体替换方法是在修改/opt/nezha/dashboard/data下的config.yaml文件。

nginx nezha
Theme Jasmine by Kent Liao