专栏名称: Java知音
专注于Java,推送技术文章,热门开源项目等。致力打造一个有实用,有情怀的Java技术公众号!
目录
相关文章推荐
51好读  ›  专栏  ›  Java知音

一款高颜值、现代化的智能运维平台

Java知音  · 公众号  · 运维  · 2024-09-05 10:00

主要观点总结

介绍了一款智能运维 & 轻量堡垒机平台,包括其资产管理、在线终端、文件管理、批量操作、计划任务和安全可靠等功能。提供了详细的安装部署步骤。

关键观点总结

关键观点1: 平台功能与特点

包括资产管理、在线终端、文件管理、批量操作、计划任务等功能,支持SSH服务、SFTP操作、快捷命令、自定义快捷键和主题风格等,安全可靠,动态配置权限,记录用户操作日志,提供简单的审计功能。

关键观点2: 安装部署步骤

需要jdk 1.8、mysql 8.0+、redis 6.0+、maven 3.5+、node 18.12+、pnpm 9.1+等环境,包括拉取代码、初始化数据库、构建后端代码、构建前端代码、修改nginx配置等步骤。

关键观点3: 平台测试与访问

部署完成后,等待后端服务启动,然后在浏览器中输入http://localhost:1081/进行访问,使用账号admin和密码admin进行登录测试。

关键观点4: 开源地址与社群交流

平台开源地址在https://gitee.com/dromara/orion-visor,同时提供了一个后端专属技术群,欢迎编程开发、技术招聘HR等人加入,交流技术、职位内推、行业探讨。


正文

今天给大家介绍一款高颜值、现代化的智能运维&轻量堡垒机平台。

功能

  • 资产管理: 支持对资产进行分组,实现对主机、密钥和身份的统一管理和授权。
  • 在线终端: 提供在线终端 SSH 服务,支持快捷命令、自定义快捷键和主题风格。
  • 文件管理: 支持远程主机 SFTP 大文件的批量上传、下载和在线编辑等操作。
  • 批量操作: 支持批量执行主机命令、多主机文件分发等功能。
  • 计划任务: 支持配置 cron 表达式,定时执行主机命令。
  • 安全可靠: 动态配置权限,记录用户操作日志,提供简单的审计功能。

快速开始

所需环境

  • jdk 1.8
  • mysql 8.0.+
  • redis 6.0.+
  • maven 3.5.+
  • node 18.12.+
  • pnpm 9.1.+
  • nginx

拉取代码

# github
git clone https://github.com/dromara/orion-visor
# gitee
git clone https://gitee.com/dromara/orion-visor

初始化数据库

# 执行脚本
orion-visor/sql/init-1-schema-databases.sql
orion-visor/sql/init-2-schema-tables.sql
orion-visor/sql/init-3-schema-quartz.sql
orion-visor/sql/init-4-data.sql

构建后端代码

# 修改配置文件 (mysql, redis, secret-key)
orion-visor/orion-visor-launch/src/main/resources/application-prod.yaml

# 进入代码目录
cd orion-visor
# 编译
mvn -U clean install -DskipTests

构建前端代码

# 进入代码目录
cd orion-visor/orion-visor-ui
# 下载 pnpm
npm i -g pnpm
# 下载依赖
pnpm i
# 编译
pnpm build

修改 nginx 配置

server {
    listen       80;
    server_name  localhost;
    client_max_body_size 1024m;

    # 是否启动 gzip 压缩
    gzip  on;
    # 需要压缩的常见静态资源
    gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
    # 如果文件大于 1k 就启动压缩
    gzip_min_length 1k;
    # 缓冲区
    gzip_buffers 4 16k;
    # 压缩的等级
    gzip_comp_level 2;
    # access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        # web history 模式 404
        try_files $uri $uri/ /index.html;
    }

    location /orion-visor/api {
        proxy_pass    http://localhost:9200/orion-visor/api;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

     location /orion-visor/keep-alive {
        proxy_pass    http://localhost:9200/orion-visor/keep-alive;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 3600s;
        proxy_send_timeout 3600s;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

}

部署

复制 orion-visor/orion-visor-ui/dist /usr/share/nginx/html

复制 orion-visor/orion-visor-launch/target/orion-visor-launch.jar /data/orion-visor-space

# 启动后台服务
nohup java -jar orion-visor-launch.jar --spring.profiles.active=prod 2>&1 &
# 启动 nginx
service nginx start

测试访问

等待后端服务启动后 (2min±) 在浏览器中输入 http://localhost:1081/ 访问 账号: admin 密码: admin

界面截图







请到「今天看啥」查看全文