首页 文章 精选 留言 我的

精选列表

搜索[基础搭建],共10000篇文章
优秀的个人博客,低调大师

无忌过招:手把手教你搭建自己的GitLab库

01 前言 本文Gitlab的安装为主机方式, 获取其他安装方式请点击https://git.lug.ustc.edu.cn/help/install/README.md 02 架构 架构概述: Unicorn: Handles requests for the web interface and API, 一般gitlab站点,多数是因为这个服务有问题导致的 Sidekiq: Background jobs processor Redis: Caching service PostgreSQL: Database 03 安装 1. 设置repo [gitlab-ce] name=Gitlab CE Repository baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/ gpgcheck=0 enabled=1 EOF 2. 安装GitLab $ yum makecache $ yum install gitlab-ce 3. 修改配置 配置文件/etc/gitlab/gitlab.rb注: 你可根据注释修改配置文件,一般修改如下external_url 'http://gitlab.xxxxxx.com' #改域名,修改成你自己的域名,如果你用的https,改成https://gitlab.xxxxxx.com 4. 启动服务 $ gitlab-ctl reconfigure ## 使配置生效 $ gitlab-ctl status ## 确认服务状态 04 如何备份 1. 设置备份目录 先打开/etc/gitlab/gitlab.rb配置文件,查看一个和备份相关的配置项:gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"该项定义了默认备份出文件的路径,可以通过修改该配置,并执行 gitlab-ctl reconfigure 或者 gitlab-ctl restart 重启服务生效。 2. 执行备份 备份执行一条命令就搞定:/opt/gitlab/bin/gitlab-rake gitlab:backup:create ,也可以加到crontab中定时执行: 0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create 可以到 /var/opt/gitlab/backups找到备份包,解压查看,会发现备份的还是比较全面的,数据库、repositories、build、upload等分类还是比较清晰的。 3. 备份参数注释 每天执行备份,肯定有目录被爆满的风险,我们可以立马想到的可以通过find 查找一定的时间前的文件,配合rm进行删除。不过不需要这么麻烦,gitlab-ce自身集成的有自动删除配置。同样打开/etc/gitlab/gitlab.rb配置文件,可以找到如下配置:gitlab_rails['backup_keep_time'] = 604800这里是设置备份保留7天(7360024=604800),秒为单位,如果想增大或减小,可以直接在该处配置,并通过gitlab-ctl restart 重启服务生效。 05 GitLab迁移或数据恢复 1. 恢复前需要先停掉数据连接服务: gitlab-ctl stop unicorn gitlab-ctl stop sidekiq 如果是台空主机,没有任何操作,理论上不停这两个服务也可以。停这两个服务是为了保证数据一致性。 2. 迁移数据 如果你没修改过默认备份目录的话,将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups [root@localhost gitlab]# scp 1530773117_2018_07_05_gitlab_backup.tar 10.0.3.111:/var/opt/gitlab/backups/ ## 600权限是无权恢复的。--- 这里改成了777 [root@localhost backups]# pwd /var/opt/gitlab/backups [root@localhost backups]# chmod 777 1530773117_2018_07_05_gitlab_backup.tar [root@localhost backups]# ll total 17328900 -rwxrwxrwx 1 git git 17744793600 Jul 5 14:47 1530773117_2018_07_05_gitlab_backup.tar 3. 执行数据恢复 执行下面的命令进行恢复:后面再输入两次yes就完成恢复了。 gitlab-rake gitlab:backup:restore BACKUP=1530773117_2018_07_05_gitlab_backup.tar PS:根据版本不同恢复时可能有点小区别 06 附录1 常用命令 # 默认的log主目录为 /var/log/gitlab/ # 检查redis的日志 sudo gitlab-ctl tail redis # 检查postgresql的日志 sudo gitlab-ctl tail postgresql # 检查gitlab-workhorse的日志 sudo gitlab-ctl tail gitlab-workhorse # 检查logrotate的日志 sudo gitlab-ctl tail logrotate # 检查nginx的日志 sudo gitlab-ctl tail nginx # 检查sidekiq的日志 sudo gitlab-ctl tail sidekiq # 检查unicorn的日志 sudo gitlab-ctl tail unicorn sudo gitlab-ctl status //检查所依赖的服务是否运行 sudo gitlab-ctl tail //检查gitlab所依赖的服务是否在运行时出错 sudo gitlab-rake gitlab:check //检查的配置是否正确,如果有错误,请根据提示解决它 07 FAQ 错误1 error: proxyRoundTripper: GET "/" failed with: "dial unix /var/opt/gitlab/gitlab-rails/sockets/gitlab.socket: connect: no such file or directory" 原因:unicorn 没有正常启动解决:查看unicorn的日志, /var/log/gitlab/unicorn/*.log, 一般为端口冲突或是权限问题。依赖相应的日志,希望你可以很好的解决,enjoy it. 08 参考文档 https://docs.gitlab.com/ee/development/architecture.html

优秀的个人博客,低调大师

挪森留学只用3天自助轻松搭建完美官网

网站名称:挪森留学官网公司行业:赴日留学公司规模:10-50人建站目的:建设留学网站及业务推广网站地址:www.xgdlx.com预览地址:c1553214164.qrx.hzx.imzhanlang.com建站产品:站狼美站--阿里云云市场建站产品 企业介绍: 在2008年,来自日本几位在留学生出于对春上村树《挪威的森林》的喜爱创办了挪森文学社,在当时大学里引起很多人的关注。同时,希望赴日留学的诉求也越来越多。那时也正式启动了一个目的:链接中国与日本的渠道,为帮助更多的人实现日本留学。 客户痛点: 客户想要一个方便后期管理,最好不需要什么自己技术层面过多要求的,并且可以从0到1都可以自己方便独立完成的智能建站产品。 面临挑战: 客户完全是小白,但是经过简单在线旺旺指导,其学习相关的能力很强,几乎都是完全独立完成自己的留学官网,这样漂亮的官网

优秀的个人博客,低调大师

甲方大人来了之运维数据分析平台搭建实战

前段时间某甲方大人(富得流油)说他们日常运维人员天天忙的不行,每天穿梭于好几套性能监控系统,问我们能不能给想想办法,在不铲掉现有几套性能监控系统的情况下,让他们不用切换系统就能搞定日常运维需求。这个需求从项目经理那传到了产品经理那、又从产品经理那传到研发经理那、然后就传到我这,我记得我说有(做)点(不)麻(到)烦(阿)呢;再然后合同就下来了。 两个字,干活。 先说下甲方大人的需求和痛点,甲方大人说平日的系统运维工作主要围绕应用、主机、数据库和业务四个方面。 (1)应用发布平台是IBM的WebSphere Application Server(简称WAS),应用的性能监控基于WAS自带监控模块; (2)主机监控基于IBM Tivoli Monitoring System,业务监控则通过分析应用日志的方式实现。 (3)数据库监控依赖一个古老的oracle性能监控工具; (4)应用日志需要登陆到AIX业务机器上查看; “每当出现一个问题,先登陆was看下业务进程性能趋势,再登陆Tivoli查看主机性能趋势,然后登陆数据库监控查看数据库性能趋势,再然后登陆AIX主机查看日志。一套下来肚子就饿了,到食堂发现好吃的饭菜已经被别人抢光了,希望你们能帮我们改善改善伙食“。嗯,听上去影响蛮大的,不过他们怎么知道我烧菜的手艺的,上周末做的清蒸鲈鱼味道还不错... 四个字,干活干活。 在了解了甲方大人的需求和痛点后,经过一番苦思冥想,设计了上面的看上去有点复杂的架构图,超过20个字怕甲方大人看不懂。大道至简,借鉴老子的一段话附和一下这张图, “人法地、地法天、天法道、道法自然”, 老子 用了十三个字,将天、地、人乃至整个宇宙的生命 规律 精辟涵括、阐述出来。 菜谱准备好了,小葱拌豆腐,开始下锅。 数据采集上,针对WAS、Tivoli、Oracle和AIX应用主机的采集需求,需要coding了(没有什么需求是一坨代码解决不了的,如果有那就两坨): (1)开发一个WAS进程性能采集器,参考 https://github.com/alexivkin/WebSphere-Performance-Monitor,万能的python,哦no,这个是Jython,看起来跟python一样嘛,无非就是python里面用java,java里面跑python。由于是三年前的版本,加上没有IBM WAS的测试环境,花掉一个上午时间脑补调试,什么是脑补调试法,答按行过目代码、眼睛输入,大脑跑跑(非专业人士请勿模仿); (2)开发一个Tivoli数据收集器,又花掉一个晚上,Tivoli支持Soap方式拉取新能数据,我不会告诉你可以用一个CURL拉取所有主机性能所有数据的,想知道的留言处扣666; (3)开发一个Oracle数据库性能采集器,还好elastic 大佬开源了beats https://github.com/elastic/beats,坑爹的是竟然不支持oracle,莫非oracle大佬的开发人员都休眠了么;花了两个晚上捣鼓捣鼓,支持个tps、qps、物理读、逻辑度、吞吐量还是可以的,小算一下支持200多个指标吧,oracle采集beat依赖oracle client( https://www.oracle.com/technetwork/topics/intel-macsoft-096467.html)不是一般的麻烦; (4)开发一个AIX日志文件采集器,我们公司有大佬开发了一个,拿过来直接集成( https://github.com/DTStack/jfilebeat); 感兴趣的猴子们可以试试走一遍上面的过程,一个上午+两个晚上+几杯咖啡的事情,咖啡给大家推荐一款来自的马来半岛的OWL,俗名猫头鹰,非常适合晚上睁大眼睛看屏幕用,香甜可口纵享丝滑。。。 数据接收和解析组件,我们公司大佬自研了java版本的logstash,参考( https://github.com/DTStack/jlogstash),日志接收和解析性能是ruby版本性能5倍以上,关键是配置简单,分钟内上手,同事出门上个厕所的时间回来我就配置好了(大笑); 数据存储方面,最近一周的日志数据全部投递到elasticsearch里,以防哪天甲方大人心血来潮想搜个日志啥的;结构化的应用进程数据、主机性能数据、数据库性能数据和业务日志数据投递到clickhouse里,通过clickhouse强大的聚合计算能力(多表数据关联,sum/avg等聚合计算),计算出同一时间线上的业务和进程、主机以及数据库性能的关联趋势图。一句话总结下ck吧,在sql里计算我只服ck( https://clickhouse-docs.readthedocs.io/en/latest/functions/),源码请见 https://github.com/yandex/ClickHouse。 坚持看到这里就是真爱了,贴上一张系统架构图,图中左方是数据采集层,easymanager是公司自研的自动部署神器(不用想了,没有开源),右边是数据展示端,把应用、主机、数据库、日志数据统一展示在一张大屏上,废话不说了,上菜! (谢幕要另起两行) 验收会上,项目验收会上, 甲方大人面无表情,我们的项目经理滔滔不绝黄河之水, 项目经理:“was 进程性能数据、主机性能数据和数据库数性能据数据趋势图,高业务量对应高负载、高性能消耗和高数据库读写,关联估算出业务量和性能数据之间的比例关系,实现关联分析;同时通过业务闲时异常性能数据趋势(如异常持续高负载,异常持续高内存消耗,异常持续高数据库读写)情况定位应用程序的故障,辅助故障定位及时对故障应用程序进行处理。在业务高峰期,持续的业务高峰和持续的性能负载趋势会触发告警,及时对性能故障和业务高峰压力进行预警,辅助故障预警和决策...“。 甲方大人:“哦,吃饭“。

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册