Centos7 中安装 Sentry
前言
服务器至少需要 2400M
的内存,安装 Sentry 之前请先部署好 Docker,参考 《Centos7 中安装 Docker 和 Docker Compose》
环境:
- Centos 7.8
- Python 3.6.8
- Docker 20.10.1
- Docker-Compose 1.17.4
- Sentry 20.12.1
获取安装包
到官方 GitHub 上获取最新版下载地址。本文安装的版本是 20.12.1。
cd 到你要下载安装包的目录,本文将其下载到 /data 目录下面,请自己创建和挂载数据盘。
1、安装 wget
sudo yum install wget -y
2、下载文件
sudo mkdir /data
cd /data
sudo wget https://github.com/getsentry/onpremise/archive/20.12.1.tar.gz
# sudo wget -P /目录 地址
3、解压文件
sudo tar -zxvf 20.12.1.tar.gz
4、进入安装目录
cd onpremise-20.12.1
配置 .env
执行 ll -a
可以看到目录中有一个 .env 文件
sudo vi .env
# 按 i 进入编辑模式
将 SENTRY_EVENT_RETENTION_DAYS=90 改为 SENTRY_EVENT_RETENTION_DAYS=7,一般保存7天事件数据即可,视自己情况而定。在文件最后可添加 “限制 Kafka 磁盘使用量” 的配置,新版 Sentry 使用的 Kafka 会大量的写入日志信息,特别容易导致磁盘跑满,具体限制额度根据自己的磁盘情况而定。具体可常见 Sentry disk cleanup [kafka]
KAFKA_LOG_RETENTION_HOURS=24
KAFKA_LOG_RETENTION_BYTES=53687091200
KAFKA_LOG_SEGMENT_BYTES=1073741824
KAFKA_LOG_RETENTION_CHECK_INTERVAL_MS=300000
KAFKA_LOG_SEGMENT_DELETE_DELAY_MS=60000
编辑完成后,按 esc
退出编辑模式,然后按 shift + :
输入 wq
后回车。如果没有编辑可输入 q
或 q!
退出。
开始安装
新版的 Sentry 将在2021年1月之前停止对 Python 2 的支持,截止当前的最新版本依然支持 Python 2。如果你系统的 Python 版本是 2.x,会提示:Python 2 is no longer supported by the Python core team. Support for it is now deprecated in cryptography, and will be removed in the next release. 一般忽略即可。
1、执行安装脚本
sudo ./install.sh
注意:如果提示 ERROR: Volume sentry-data declared as external, but could not be found. Please create the volume manually using
docker volume create --name=sentry-data
and try again. 等类似错误,请依次执行以下命令将对应目录挂载到容器,然后再重新执行以上安装脚本:
sudo docker volume create --name=sentry-data
sudo docker volume create --name=sentry-postgres
sudo docker volume create --name=sentry-redis
sudo docker volume create --name=sentry-zookeeper
sudo docker volume create --name=sentry-kafka
sudo docker volume create --name=sentry-clickhouse
sudo docker volume create --name=sentry-symbolicator
注意:如果安装失败,删除掉 onpremise-20.12.1 目录,然后重新解压 20.12.1.tar.gz 文件,再安装即可
2、创建账号
安装过程末尾会提示 “Would you like to create a user account now”,输入一个邮箱和密码用于创建一个默认管理员账号
启动服务
最后安装完成会提示 “You're all done! Run the following command to get Sentry running: docker-compose up -d”
docker-compose up -d
Sentry 服务会默认绑定到 9000 端口,宿主服务器的 Nginx 做一层 80 或 443 转发到 http://127.0.0.1:9000 或 http://localhost:9000 即可,到此 Sentry 部署完成!
注意:安装后 onpremise-20.12.1 目录不要删除,可能会导致服务重启失败!
其他常用命令
# 修改配置后,重启 Sentry
sudo docker-compose restart web worker cron sentry-cleanup
# 重启所有所有服务
sudo docker-compose restart