Archery - SQL审核查询平台

[TOC]

快速部署

1.安装Docker CE

curl -sL 'http://iso.sqlfans.cn/docker/install_docker_2401.sh' | bash
sudo docker --version
  • 安装python3.6(注:貌似不需要)
# sudo yum install -y python36
# sudo amazon-linux-extras list | grep python
# sudo amazon-linux-extras install -y python3
sudo python -V

2.安装docker-compose

curl -sL 'http://iso.sqlfans.cn/docker/install_docker_compose_2181.sh' | bash
sudo docker-compose --version

3.下载并启动archery

  • 下载 archery

    cd /data/
    wget -c http://iso.sqlfans.cn/linux/Archery-1.8.5.zip
    unzip Archery-1.8.5.zip
    mv Archery-1.8.5 archery
    
  • 启动 archery(确认宿主机请勿占用这些端口)

cd archery/src/docker-compose
cat docker-compose.yml
docker-compose -f docker-compose.yml up -d
  • 2022.05.28(aws环境)若启动 archery 报错 ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running? 可尝试如下:
sudo groupadd docker
sudo gpasswd -a ${USER} docker
sudo systemctl restart docker
newgrp docker

4.表结构及数据初始化

docker exec -ti archery /bin/bash
cd /opt/archery
cat /etc/nginx/nginx.conf | grep 9123
source /opt/venv4archery/bin/activate
python3 manage.py makemigrations sql
python3 manage.py migrate
python3 manage.py dbshell < sql/fixtures/auth_group.sql
python3 manage.py dbshell < src/init_sql/mysql_slow_query_review.sql

5.创建管理用户

python3 manage.py createsuperuser

  账号:admin
  邮箱:78667417@qq.com
  密码:xxxxxx
  • 退出docker并重启服务
exit
docker restart archery

6.访问地址

附.查看日志

docker logs archery -f --tail=10
tail -n10 /data/archery/src/docker-compose/archery/logs/archery.log
  • Archery 涉及的服务及端口
服务 端口 备注
redis 6379 xxx
mysql 3306 xxx
inception 6669 xxx
goinception 4000 xxx
archery 9123 xxx

基础配置

添加实例

  • 实例类型分为主库/从库,支持:MySQL/MsSQL/Redis/PostgreSQL/Oracle/MongoDB/Phoenix/ODPS/ClickHouse等
  • 资源组:实例都需要关联资源组,才能被关联资源组的用户访问
  • 实例标签:通过支持上线、支持查询的标签来控制实例是否在SQL上线/查询中显示,要使用上线和查询的实例需要关联标签

添加资源组

资源组是一堆资源对象的集合,与用户关联后用来隔离资源访问权限,一般可以按照项目组划分

资源组关联用户/实例

用户必须关联资源组才能访问资源组内的实例资源 - 关联对象管理可以批量关联实例和用户 - 在添加用户和实例的时候也可以批量关联资源组

添加权限组

权限组是一堆权限的集合,类似于角色的概念,工作流的审批配置就是配置的权限组 - 权限组可以按照角色来创建,比如DBA、工程师、项目经理,目前系统初始化数据中会提供五个默认权限组,也可自由分配权限 - 仅[sql|permission]开头的权限是控制业务操作的权限,其他都是控制Django管理后台的权限,与业务无关,可不分配

用户关联权限组/权限

用户所拥有的权限=用户所在权限组的权限+给用户单独分配的权限 -w1173

设置工单上线和查询的审批流程

项目提供简单的多级审批流配置,审批流程和资源组以及审批类型相关,不同资源组和审批类型可以配置不同的审批流程,审批流程配置的是权限组,可避免审批人单点的问题 -w1335

设置默认资源组和默认权限组

设置默认资源组和默认权限组,新用户第一次登录时会自动关联,可避免用户登录后出现403(未授权)的问题

Copyright © www.sqlfans.cn 2023 All Right Reserved更新时间: 2024-06-17 17:16:12

results matching ""

    No results matching ""