《CI/CD+DevOps》持续集成之gitlab访问502问题总结
在安装配置好gitlab之后访问配置好的路径页面提示502
导致502的原因有两个:
1.端口被占用
gitlab的nginx默认监听的端口为80
如果有其他程序占用了该端口的话则会提示502
解决方法:
vi /etc/gitlab/gitlab.rb 使用i进入编辑模式 修改external_url 'http://localhost:8080' 我这里将端口修改为8080
esc--->:wq保存修改操作
gitlab-ctl reconfigure
执行以上命令是配置生效
再次打开浏览器访问localhost:8080依然提示502
纳尼?????还是不行啊,为什么呢。网上搜了半天资料发现
gitlab unicorn['port']默认使用的是8080端口,所以还得继续修改
注:其实这里只要将external_url 'http://localhost:8080'中的8080端口改成一个和gitlab其他服务不冲突的端口即可,比如:8888,9999等。
我这里是参考网上的做法将/unicorn['port']注释打开并将/unicorn['port'] 设置为9090
vi /etc/gitlab/gitlab.rb
命令状态输入/unicorn['port'],按Enter进入查找状态,按n往下查找,直到看到unicorn['port'] =8080,修改端口,删除#号,解除注释状态
/unicorn['port']=9090
再次重启服务查看效果
gitlab-ctl reconfigure
重启之后发现还是502,当时心中100000000000头草泥马奔腾而过有没有。
继续查资料学习,发现gitlab的普罗米修斯监控的默认端口为9090,所以访问页面之后会跳转到普罗米修斯的页面
想了解学习Prometheus的朋友可以点这里到官网查看学习。
最后我将unicorn['port'] =8888
再次重启服务查看效果
gitlab-ctl reconfigure
再次访问localhost:8080
成功!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2.内存不足
解决办法,启用swap分区,步骤如下:
cat /proc/swaps 查看swap分区是否启动(无)
创建swap :
dd if=/dev/zero of=/data/swap bs=512 count=8388616
创建swap大小为bs*count=4294971392(4G);
通过mkswap命令将上面新建出的文件做成swap分区
mkswap /data/swap
查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成60
查看: cat /proc/sys/vm/swappiness
设置: sysctl -w vm.swappiness=60
若想永久修改,则编辑/etc/sysctl.conf文件,改文件中有vm.swappiness变量配置,默认为0
启用分区
swapon /data/swap echo “/data/swap swap swap defaults 0 0” >> /etc/fstab
再次使用cat /proc/swaps 查看swap分区是否启动
重启gitlab。