标签:lock 授权 UI 51cto config nba sel tool 命令
gitlab9.2备份报错今天无意中发现gitlab已经有10天不能正常备份了,报错:
[root@tools-gitlab gitlab_backups]# /usr/bin/gitlab-rake gitlab:backup:create
Dumping database ...
Dumping PostgreSQL database gitlabhq_production ... pg_dump: [archiver (db)] connection to database "gitlabhq_production" failed: FATAL: remaining connection slots are reserved for non-replication superuser connections
[FAILED]
Backup failed
#gitlab-rake gitlab:check
或者使用sudo gitlab-ctl tail postgresql 查看postgresql日志也可以。
hooks directories in repos are links: ... rake aborted!
PG::ConnectionBad: FATAL: remaining connection slots are reserved for non-replication superuser connections
/opt/gitlab/embedded/service/gitlab-rails/app/models/project.rb:234:in `block in <class:Project>‘
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/check.rake:469:in `check_repos_hooks_directory_is_link‘
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/check.rake:345:in `block (3 levels) in <top (required)>‘
/opt/gitlab/embedded/bin/bundle:22:in `load‘
/opt/gitlab/embedded/bin/bundle:22:in `<main>‘
Tasks: TOP => gitlab:check => gitlab:gitlab_shell:check
(See full trace by running task with --trace)
确定是数据库连接总数太少,总共200个,其中当前连接已经达到197,其中3个连接是保留给非用户的。
#登陆数据库,默认是没有密码的
gitlab-psql -d gitlabhq_production
#当前总共正在使用的连接数
postgres=# select count(1) from pg_stat_activity;
#显示系统允许的最大连接数
postgres=# show max_connections;
#显示系统保留的用户数
postgres=# show superuser_reserved_connections ;
vim /etc/gitlab/gitlab.rb
添加如下内容
postgresql[‘max_connections‘] = 500
gitlab-ctl reconfigure
gitlab-ctl restart
ok,问题处理完毕。下面是常用的命令,其他版本未试过。
# 修改默认的配置文件
sudo vim /etc/gitlab/gitlab.rb
# 查看版本
sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
# 检查gitlab
gitlab-rake gitlab:check SANITIZE=true --trace
gitlab-rake gitlab:check
gitlab-rake gitlab:check SANITIZE=true
# 查看日志
gitlab-ctl tail
# 数据库关系升级
gitlab-rake db:migrate
# 清理缓存
gitlab-rake cache:clear
# 更新gitlab包
yum update gitlab-ce
# 升级gitlab
yum install gitlab-ce
# 升级数据命令
gitlab-ctl pg-upgrade
服务管理
gitlab-ctl start # 启动所有 gitlab 组件:
gitlab-ctl stop # 停止所有 gitlab 组件:
gitlab-ctl stop postgresql # 停止所有 gitlab postgresql 组件:
# 停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-ctl restart # 重启所有 gitlab 组件:
gitlab-ctl restart gitlab-workhorse # 重启所有 gitlab gitlab-workhorse 组件:
gitlab-ctl status # 查看服务状态
gitlab-ctl reconfigure # 生成配置启动服务
日志查看
sudo gitlab-ctl tail # 查看日志
sudo gitlab-ctl tail redis # 检查redis的日志
sudo gitlab-ctl tail postgresql # 检查postgresql的日志
sudo gitlab-ctl tail gitlab-workhorse # 检查gitlab-workhorse的日志
sudo gitlab-ctl tail logrotate # 检查logrotate的日志
sudo gitlab-ctl tail nginx # 检查nginx的日志
sudo gitlab-ctl tail sidekiq # 检查sidekiq的日志
sudo gitlab-ctl tail unicorn # 检查unicorn的日志
sudo gitlab-rails console production
#查询用户的email,用户名,密码等信息,id:1 表示root账号
user = User.where(id: 1).first
#重新设置密码
user.password = ‘新密码‘
user.password_confirmation = ‘新密码‘
#保存密码
user.save!
单位为秒,我算了好几次了。
# /etc/gitlab/gitlab.rb 配置文件 修改下面这一行
gitlab_rails[‘backup_keep_time‘] = 604800
修改下面的配置项控制Rack Attack:
gitlab_rails[‘rack_attack_git_basic_auth‘] = {
‘enabled‘ => true, # 启用/禁用 Rack Attack
‘ip_whitelist‘ => ["127.0.0.1"], # 白名单地址,多个IP用","隔开
‘maxretry‘ => 10, # 限制每个IP尝试登陆的次数为10次。
‘findtime‘ => 60, # 60秒后重置每IP的授权计数器
‘bantime‘ => 3600 # 对多次错误登陆的IP封禁1小时(3600秒)
}
上篇文章是:
centos7.x搭建gitlab9.2.2
标签:lock 授权 UI 51cto config nba sel tool 命令
原文地址:http://blog.51cto.com/yanconggod/2062591