聊聊如何解决官方提供的onpremise项目安装sentry速度过慢问题
1
前言
01
何为sentry
sentry是一个基于Django构建的现代化开源的实时错误追踪系统,可以帮助开发者发现问题、追踪问题
02
sentry官方文档
https://docs.sentry.io/
2
sentry安装
我们可以使用官方提供的https://github.com/getsentry/onpremise.git的项目进行安装。
安装步骤如下
以在centos7安装为例
1、克隆onpremise项目
yum install git
git clone https://github.com/getsentry/onpremise.git
2、切换到onpremise目录,执行install.sh安装脚本
cd onpremise
./install.sh
只要执行这两步,就可以悠哉的喝杯咖啡等待安装完成了。后面你会发现,这个安装的时间,绝不是喝一杯咖啡的时间就可以解决了,可能是要喝N杯。因为这个等待时间实在是有点漫长,我第一次安装耗时差不多有3个小时。因为有了这次体验,后面再安装,我就在思考如何提升这个安装速度了
如何提升onpremise项目安装senrty的速度
通过观察执行的install.sh脚本的日志,发现他执行到
RUN apt-get update && apt-get install -y --no-install-recommends cron && \
rm -r /var/lib/apt/lists/*
这句脚本就会非常慢,他会下载debian,而且一旦下载没成功,就会报错退出,就得重新再来一次,让人会很抓狂。因为下载debian的地址是在国外,所以下载速度就异常慢,那我们解决的思路就有要么翻墙,要么就是切换debian的镜像源。我的方案是后面一种
因此这句脚本执行前,我们可以加如下脚本
Run sed -i 's#http://deb.debian.org#https://mirrors.163.com#g' /etc/apt/sources.list
这句话的意思就是将debian的镜像源切换成163镜像源
或者你也可以用以下脚本,也可以达到上面的效果(不过不是很推荐这种方式,因为下面这句脚本的意思是安装debian10版本的镜像源,如果sentry依赖是高于debian10版本,那就完犊子)
RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \
echo deb http://mirrors.163.com/debian/ buster main non-free contrib >>/etc/apt/sources.list && \
echo deb http://mirrors.163.com/debian/ buster-updates main non-free contrib >>/etc/apt/sources.list && \
echo deb http://mirrors.163.com/debian/ buster-backports main non-free contrib >>/etc/apt/sources.list && \
echo deb http://mirrors.163.com/debian-security/ buster/updates main non-free contrib >>/etc/apt/sources.list && \
echo deb-src http://mirrors.163.com/debian/ buster main non-free contrib >>/etc/apt/sources.list && \
echo deb-src http://mirrors.163.com/debian/ buster-updates main non-free contrib >>/etc/apt/sources.list && \
echo deb-src http://mirrors.163.com/debian/ buster-backports main non-free contrib >>/etc/apt/sources.list && \
echo deb-src http://mirrors.163.com/debian-security/ buster/updates main non-free contrib >>/etc/apt/sources.list
这个脚本的修改位置在onpremise/cron/Dockerfile,就是修改cron的Dockerfile。
修改后的完整脚本为
ARG BASE_IMAGE
FROM ${BASE_IMAGE}
USER 0
RUN if [ -z "${http_proxy}" ]; then echo "Acquire::http::proxy \"${http_proxy}\";" >> /etc/apt/apt.conf; fi
RUN if [ -z "${https_proxy}" ]; then echo "Acquire::https::proxy \"${https_proxy}\";" >> /etc/apt/apt.conf; fi
Run sed -i 's#http://deb.debian.org#https://mirrors.163.com#g' /etc/apt/sources.list
RUN apt-get update --fix-missing && apt-get install -y --no-install-recommends cron --fix-missing && \
rm -r /var/lib/apt/lists/*
COPY entrypoint.sh /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
修改后,重新执行install.sh,你就会发现速度会有不一样提升
3
总结
本文主要是基于切换debian镜像源来提高sentry安装速度,因为sentry的版本更新还是比较快的,不同的版本,解决方案可能就不一样,本文仅能当做参考。不过大道至简,我们遇到这种问题,我们可以通过观察他的安装过程,从中找一些蛛丝马迹。说点题外的,也不懂为啥sentry会依赖那么多种组件,基本上主流的中间件,比如kafka、zookeeper、clickhouse、redis等它都用上了,这对运维可是要提高了不少要求。
本文的安装主要是基于docker安装,至于如果是想安装到k8s上,推荐用helm,因为sentry依赖的组件实在有点多。下面的链接是sentry的charts,感兴趣的朋友可以尝试一下
https://github.com/helm/charts/tree/master/stable/sentry
相关文章
- Citus 11 for Postgres 完全开源,可从任何节点查询(Citus 官方博客)
- 树莓派3B+安装官方原版系统
- 微信小程序官方组件展示之媒体组件video源码
- AutoCAD 2021官方中文版【CAD2022最新版】完整简体中文版CAD2023安装教程
- docker离线安装部署_docker官方中文文档
- win10系统下载及安装教程,U盘安装教程,Windows10官方原版系统下载
- 制图软件AutoCAD官方中文版,AutoCAD软件2023安装教程下载
- 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 完整代码示例 | 申请权限 | 申请权限原理对话框 | 引导用户手动设置权限对话框 )
- 【Flutter】Flutter 打开第三方应用 ( url_launcher 插件搜索与安装 | url_launcher 插件官方示例 | 打开浏览器 | 打开第三方应用 )
- AutoCAD 2023官方中文版,CAD2022安装,AutoCAD 2023 中文激活版
- Oracle 视图 ALL_MEASURE_FOLDER_CONTENTS 官方解释,作用,如何使用详细说明
- Oracle 视图 DBA_XML_INDEXES 官方解释,作用,如何使用详细说明
- Oracle 视图 DBA_XSTREAM_SPLIT_MERGE 官方解释,作用,如何使用详细说明
- Oracle 视图 USER_ADDM_FDG_BREAKDOWN 官方解释,作用,如何使用详细说明
- Oracle 视图 USER_ADVISOR_SQLPLANS 官方解释,作用,如何使用详细说明
- Oracle 视图 DBA_MEASURE_FOLDERS 官方解释,作用,如何使用详细说明
- Oracle 视图 DBA_PENDING_TRANSACTIONS 官方解释,作用,如何使用详细说明
- Oracle 视图 DBA_PROPAGATION 官方解释,作用,如何使用详细说明
- Oracle 视图 DBA_ROLLING_SUPPORT_MODE 官方解释,作用,如何使用详细说明
- Oracle 视图 V$DATAFILE 官方解释,作用,如何使用详细说明
- Oracle 视图 V$EQ_SUBSCRIBER_LOAD 官方解释,作用,如何使用详细说明
- Oracle 视图 V$PASSWORDFILE_INFO 官方解释,作用,如何使用详细说明
- Oracle 视图 V$ROLLSTAT 官方解释,作用,如何使用详细说明
- Oracle 参数 OPTIMIZER_ADAPTIVE_PLANS 官方解释,作用,如何配置最优化建议
- Windows 11官方首版 如何免费下载和安装
- 本安装SQL Server官方版本,快速加速你的执行力(sqlserver官方版)
- 方文档安装Oracle官方文档安装指南(oracle上官)
- Java官方正式宣布AWT、2D、Swing等项目解散
- 《Istio官方文档》Nomad & Consul-安装
- 《Istio官方文档》Eureka-安装