前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >哪吒监控部署记录

哪吒监控部署记录

作者头像
IT不难
发布2024-12-10 09:41:22
发布2024-12-10 09:41:22
13200
代码可运行
举报
文章被收录于专栏:IT不难技术家园IT不难技术家园
运行总次数:0
代码可运行

前言

哪吒监控 一个开源、轻量的服务器和网站监控、运维工具。本文记录部署过程。 本教程使用版本v0,最近作者升级了v1最新版。v1和v0无法兼容。

单点登录

github

配置地址: https://github.com/settings/developers

应用名:nezha-monitor 访问域名:http://ip:8090 回调地址:http://ip:8090/oauth2/callback

JihuLab

配置地址: https://jihulab.com/-/profile/applications

回调地址:http://ip:8090/oauth2/callback 范围:read_user 和 read_api

服务端安装

代码语言:javascript
代码运行次数:0
复制
# 国外
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh  -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh

# 国内
curl -L https://jihulab.com/nezha/nezha/-/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
lb69mho0.png
lb69mho0.png

服务端配置

配置接收数据地址

添加主机

lb6e85hc.png
lb6e85hc.png

nginx反向代理

代码语言:javascript
代码运行次数:0
复制
server {
    listen 443 ssl http2;
    server_name mon.itbunan.xyz;
    server_tokens off;
    ssl_certificate /etc/nginx/cert/mon.itbunan.xyz_bundle.crt;
    ssl_certificate_key /etc/nginx/cert/mon.itbunan.xyz.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";
    add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";

    location /ws {
        proxy_redirect off;
        proxy_pass http://172.17.0.10:8008;
        proxy_set_header Host $host;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr:$remote_port;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection upgrade;
    }

    location /terminal {
        proxy_redirect off;
        proxy_pass http://172.17.0.10:8008;
        proxy_set_header Host $host;
        proxy_set_header X-Real_IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr:$remote_port;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection upgrade;
    }

客户端安装

主流系统自动安装

代码语言:javascript
代码运行次数:0
复制
# 国外
curl -L https://raw.githubusercontent.com/naiba/nezha/master/script/install.sh  -o nezha.sh && chmod +x nezha.sh && sudo ./nezha.sh

# 国内
curl -L https://jihulab.com/nezha/nezha/-/raw/master/script/install.sh -o nezha.sh && chmod +x nezha.sh && sudo CN=true ./nezha.sh
lb6eb57s.png
lb6eb57s.png

debain手动安装

代码语言:javascript
代码运行次数:0
复制
## 安装依赖命令
apt install -y  wget  unzip curl

## 执行安装脚本
./agent_install.sh

## 启动
/opt/nezha/nezha-agent -s ip:5555  -p 密钥
代码语言:javascript
代码运行次数:0
复制
#!/bin/bash
NZ_AGENT_PATH="/opt/nezha"

install() {
    GITHUB_URL="github.com"
    if [ ! -f "${NZ_AGENT_PATH}/nezha-agent" ]; then
        if [[ $(uname -m | grep 'x86_64') != "" ]]; then
            os_arch="amd64"
        elif [[ $(uname -m | grep 'i386\|i686') != "" ]]; then
            os_arch="386"
        elif [[ $(uname -m | grep 'aarch64\|armv8b\|armv8l') != "" ]]; then
            os_arch="arm64"
        elif [[ $(uname -m | grep 'arm') != "" ]]; then
            os_arch="arm"
        elif [[ $(uname -m | grep 's390x') != "" ]]; then
            os_arch="s390x"
        elif [[ $(uname -m | grep 'riscv64') != "" ]]; then
            os_arch="riscv64"
        fi
        local version=$(curl -m 10 -sL "https://api.github.com/repos/naiba/nezha/releases/latest" | grep "tag_name" | head -n 1 | awk -F ":" '{print $2}' | sed 's/\"//g;s/,//g;s/ //g')
        if [ ! -n "$version" ]; then
            version=$(curl -m 10 -sL "https://fastly.jsdelivr.net/gh/naiba/nezha/" | grep "option\.value" | awk -F "'" '{print $2}' | sed 's/naiba\/nezha@/v/g')
        fi
        if [ ! -n "$version" ]; then
            version=$(curl -m 10 -sL "https://gcore.jsdelivr.net/gh/naiba/nezha/" | grep "option\.value" | awk -F "'" '{print $2}' | sed 's/naiba\/nezha@/v/g')
        fi
        if [ ! -n "$version" ]; then
            echo -e "获取版本号失败,请检查本机能否链接 https://api.github.com/repos/naiba/nezha/releases/latest"
            return 0
        else
            echo -e "当前最新版本为: ${version}"
        fi
        wget -t 2 -T 10 -O nezha-agent_linux_${os_arch}.zip https://${GITHUB_URL}/naiba/nezha/releases/download/${version}/nezha-agent_linux_${os_arch}.zip >/dev/null 2>&1
        if [[ $? != 0 ]]; then
            echo -e "Release 下载失败,请检查本机能否连接 ${GITHUB_URL}${plain}"
            return 0
        fi
        mkdir -p $NZ_AGENT_PATH
        chmod 755 -R $NZ_AGENT_PATH
        unzip -qo nezha-agent_linux_${os_arch}.zip && mv nezha-agent $NZ_AGENT_PATH && rm -rf nezha-agent_linux_${os_arch}.zip
    fi
    if [ ! -x "${NZ_AGENT_PATH}/nezha-agent" ]; then
        chmod +x ${NZ_AGENT_PATH}/nezha-agent
    fi
}

export -f install
install

访问

http://ip:8090

lb6dxbad.png
lb6dxbad.png
lb6edqar.png
lb6edqar.png
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年12月02日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 单点登录
    • github
    • JihuLab
  • 服务端安装
  • 服务端配置
    • 配置接收数据地址
    • 添加主机
    • nginx反向代理
  • 客户端安装
    • 主流系统自动安装
    • debain手动安装
  • 访问
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档