页面“Gitlab社区版安装和配置”与“Zabbix 5 4 and 3 LTS安装入门教程”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
 
 
第1行: 第1行:
 +
==站内资源==
 +
[[Zabbix 调用API 批量添加主机]]
 +
== zabbix server ==
 +
===pre ===
 +
这些是官网官方安装文档,记得一定要看
  
== pre ==
+
https://www.zabbix.com/documentation/3.0/manual/installation/install
  
gitlab社区版安装和配置
+
https://www.zabbix.org/wiki/InstallOnCentOS_RHEL
  
os: centos6.X
+
<pre>wget -c https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.8/zabbix-3.0.8.tar.gz
 +
wget -c http://tenet.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.13/zabbix-2.2.13.tar.gz</pre>
  
==第零 docker-compose for gitlab  ==
+
===#配置php变量===
<pre>
+
<pre>vi /etc/php.ini
 +
date.timezone = Asia/Shanghai
 +
post_max_size = 32M
 +
max_execution_time = 300
 +
max_input_time = 300
 +
注:更改完之后需要重启nginx和php</pre>
 +
 
 +
===#安装zabbix所需的组件 ===
 +
<pre>yum -y install net-snmp-devel curl-devel
 +
#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
 +
groupadd zabbix && useradd -g zabbix zabbix
 +
tar xvf zabbix-3.0.8.tar.gz && cd zabbix-3.0.8
 +
#tar xvf zabbix-2.2.13.tar.gz && cd zabbix-2.2.13
 +
 
 +
#./configure –enable-server –enable-agent –with-mysql –enable-ipv6 –with-net-snmp –with-libcurl –with-libxml2
  
 +
##或者默认安装路径 make是不用的
 +
./configure --sysconfdir=/etc/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 && make install
 +
</pre>
 +
===添加zabbix服务对应的端口(可以省略,但是官方建议有)===
 +
<pre>cat >>/etc/services<< EOF
 +
zabbix-agent 10050/tcp #Zabbix Agent
 +
zabbix-agent 10050/udp #Zabbix Agent
 +
zabbix-trapper 10051/tcp #Zabbix Trapper
 +
zabbix-trapper 10051/udp #Zabbix Trapper
 +
EOF</pre>
  
2020 直接 docker-compose 其实可以上 alpine的
+
===配置文件===
 +
<pre>##好像是这个起效果的呢 –sysconfdir=/etc/zabbix 有这个,不用下面的命令了
 +
#vim /usr/local/etc/zabbix_server.conf
 +
#cd zabbix-2.0.7
  
cat docker-compose.yml
+
#mkdir /etc/zabbix
 +
#cp conf/*.conf /etc/zabbix
  
 +
mkdir /var/log/zabbix ;chown zabbix:zabbix /var/log/zabbix;
  
web:
 
  image: 'gitlab/gitlab-ce:11.4.3'
 
  #image: 'gitlab/gitlab-ce:latest' 
 
  restart: always
 
  hostname: 'mygitlab'
 
  environment:
 
    GITLAB_OMNIBUS_CONFIG: |
 
      external_url 'http://gitlab.lliao.net'
 
      #external_url 'https://mygitlab.com'
 
      # Add any other gitlab.rb configuration here, each on its own line
 
  ports:
 
    - '7080:80'
 
    - '4433:443'
 
    - '2222:22'
 
  volumes:
 
    - ./gitlab/config:/etc/gitlab
 
    - ./gitlab/logs:/var/log/gitlab
 
    - ./gitlab/data:/var/opt/gitlab
 
  
 +
#zabbix web代码
 +
mkdir -p /data/www/zabbix;
 +
cp -r frontends/php/* /data/www/zabbix
  
 +
修改zabbix连接的数据库的用户名和密码
 +
vi /etc/zabbix/zabbix_server.conf
  
 +
DBHost=127.0.0.1
 +
DBName=zabbix
 +
DBUser=zabbix
 +
DBPassword='123'
 +
DBPort=3306 #如果数据库是用sock文件的方式,这里可以是sock文件的路径
  
 +
添加数据库Lib文件位置到/etc/ld.so.conf中,并使其生效
 +
echo ‘/usr/local/mysql/lib/mysql/’ >> /etc/ld.so.conf
  
 +
ldconfig
  
 +
为zabbix的启动、关闭和重启的脚本文件做链接,方便系统可以找得到
  
#这个手工的 线上一般不用了 以前学习用的
+
给zabbix服务端程序做软链接 我用默认的config 应该是不用的
 +
cd /usr/local/zabbix/bin/
 +
for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
 +
cd /usr/local/zabbix/sbin/
 +
for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done
  
获取 GitLab 镜像
+
拷贝zabbix服务端和客户端启动脚本到/etc/init.d目录下.
docker search gitlab
+
cd misc/init.d/
 +
cp fedora/core/zabbix_server /etc/init.d/
 +
cp fedora/core/zabbix_agentd /etc/init.d/
 +
chmod +x /etc/init.d/zabbix_agentd
 +
chmod +x /etc/init.d/zabbix_server</pre>
  
docker pull gitlab/gitlab-ce:latest
+
===3 Create Zabbix database===
 +
<pre>SQL scripts are provided for creating database schema and inserting the dataset
 +
#https://www.zabbix.com/documentation/3.0/manual/appendix/install/db_scripts
 +
#https://www.zabbix.com/documentation/2.2/manual/appendix/install/db_scripts
  
查看本地镜像
+
mysql>create database zabbix character set utf8 collate utf8_bin;;grant all on zabbix.* to zabbix@localhost identified by '123';flush privileges;
docker images
 
  
创建目录
+
将zabbix源码包中的数据导入到新建的zabbix数据库
 +
##这个和老的版本有点不同 第一个是zabbix的数据库表结构,要先导入。
  
mkdir -p /data/gitlab/{config,data,logs}
+
. /etc/profile
 +
cd ../..
 +
mysql -uroot -p'evan' zabbix< database/mysql/schema.sql
 +
mysql -uroot -p'evan' zabbix< database/mysql/images.sql
 +
mysql -uroot -p'evan' zabbix< database/mysql/data.sql
  
创建并运行容器
+
vi /etc/init.d/zabbix_server # 的可以不改,修改一下变量的值 因为我是默认用 configure
 +
# base zabbix dir
 +
BASEDIR=/usr/local
 +
# binary file
 +
ZABBIX_SUCKERD=$BASEDIR/sbin/zabbix_server<pre>
  
docker run --detach \
+
===fping的安装和使用详解===
      --hostname git.evan.com \
+
<pre>http://rickie622.blog.163.com/blog/static/2123881120121121111720941/
      --publish 443:443 \
+
http://netsecurity.51cto.com/art/201101/242200.htm
      --publish 80:80 \
+
#当然 下载zip包也是可以的
      --publish 222:22 \
+
git clone https://github.com/schweikert/fping.git
      --name gitlabce\
+
cd fping
      --restart always \
+
./autogen.sh
      --volume /data/gitlab/config:/etc/gitlab \
+
./configure
      --volume /data/gitlab/logs:/var/log/gitlab \
+
make -j2 && make install
      --volume /data/gitlab/data:/var/opt/gitlab \
 
      gitlab/gitlab-ce:latest
 
  
 +
#修改一下配置文件
 +
vim /etc/zabbix_server.conf
 +
#vim /usr/local/etc/zabbix_server.conf
 +
FpingLocation=/usr/local/sbin/fping</pre>
  
查看运行状态
+
===启动zabbix,并且添加开机自启动===
 +
<pre>service zabbix_server start
 +
service zabbix_agentd start #启动服务
  
docker ps
+
chkconfig zabbix_server on
netstat -ntulap | grep docker
+
chkconfig zabbix_agentd on #开机自启动
访问 GitLab
 
  
启动
+
在Nginx服务中添加zabbix虚拟主机
docker start gitlabce
+
#vim /usr/local/nginx/conf/vhosts/monitor.conf
  
docker stop gitlabce
+
这些都不要,不然没有web安装向导的
 +
#cd zabbix/conf
 +
#cp zabbix.conf.php.example zabbix.conf.php ;
 +
#chmod 777 zabbix.conf.php
  
http://git.evan.com/
+
iptables -I INPUT -p tcp –dport 80 -j ACCEPT
  
如果没有域名,直接使用 IP 访问即可。
+
zabbix server is not running
初始账户
+
Zabbix Server is not running: the information displayed may not be current
 +
http://song49.blog.51cto.com/4480450/1200151</pre>
  
用户: root
+
===(4)设置zabbix服务IP和端口,name可以忽略===
密码: 5iveL!fe  现在一般要自己配置密码的了
+
<pre>
 +
ps:
 +
post_max_size = 16M
 +
PHP option “max_execution_time” 30 300 Fail
 +
PHP option “max_input_time” 60 300 Fail
 +
PHP option “date.timezone” unknown Fai
 +
date.timezone = Asia/Shanghai
  
</pre>
+
PHP option “always_populate_raw_post_data” must be set to “-1”
  
[https://docs.gitlab.com/ee/install/docker.html  Install GitLab with Docker]
+
port 10051
  
==gitlab搭配ssh默认端口引发的问题  ==
+
Zabbix frontend is ready! The default user name is Admin, password zabbix.</pre>
 +
===超级用户密码修改 ===
 
<pre>
 
<pre>
明明 docker-compose.yml 用 了222端口但还是有问题
+
2.2 用户名第一个字母要大写 也就是Admin
 +
默认的用户名:admin 密码:zabbix
 +
 
 +
哪里改登录用户和密码呢
 +
use zabbix;
 +
select userid,alias,passwd from users; #查看
 +
 
 +
+--------+------------+----------------------------------+
 +
| userid | alias      | passwd                          |
 +
+--------+------------+----------------------------------+
 +
|      1 | Admin      | 5fce1b3e34b520afeffb37ce08c7cd66 |
 +
 
 +
 
 +
#如果为zabbix 3.0  直接这样就行了
 +
update users set passwd=MD5('12345') where userid=1;
 +
 
 +
 
 +
#zabbix 2.x
 +
重新开个终端,生成一个MD5加密的密码,这里密码设置的是redhat
 +
 
 +
[root@localhost ~]# echo -n 12345678 |openssl md5 #-n就表示不输入回车符,不加-n,否则就不是这个结果了。
 +
(stdin)= 25d55ad283aa400af464c76d713c07ad
 +
 
 +
接着上面的为admin用户设定一个密码
 +
 
 +
mysql> update users set passwd='25d55ad283aa400af464c76d713c07ad' where userid = '1';
 +
#或者直接使用update users set passwd=md5(“12345678”) where userid=’1′;
 +
Query OK, 1 row affected (0.01 sec)
 +
Rows matched: 1 Changed: 1 Warnings: 0
 +
 
 +
mysql> flush privileges;
 +
Query OK, 0 rows affected (0.01 sec)
 +
 
 +
mysql> quit
 +
Bye
 +
 
 +
zabbix登陆账户admin密码修改
 +
http://pvbutler.blog.51cto.com/7662323/1734003
 +
 
 +
yum install ntp ntpdate -y
 +
chkconfig ntpd on
 +
/etc/init.d/ntpd start
 +
 
 +
*/30 * * * * /usr/sbin/ntpdate pool.ntp.org
 +
 
 +
在29行这后添加
 +
sed -i ’29a user=mysql’ /etc/my.cnf
 +
sed -i ’29a character-set-server=utf8′ /etc/my.cnf
 +
sed -i ’29ainnodb_file_per_table=1′ /etc/my.cnf
 +
重启mysqld</pre>
 +
 
 +
===防火墙设置 ===
 +
<pre>这个要看一下先,尽量用严格些的防火墙设置
 +
 
 +
#on zabbix-agent
 +
 
 +
iptables -A INPUT -s zabbixserverip  -p tcp -m tcp --dport 10050 -m comment --comment "zabbix_server listen " -j ACCEPT
 +
#iptables -A INPUT -s zabbixserverip -p tcp -m tcp --dport 10050 -m comment --comment "zabbix_agentd listen " -j ACCEPT
 +
 
 +
#这下面的防火墙rule 不要用
 +
vi /etc/sysconfig/iptables
 +
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
 +
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
 +
-A INPUT -m state –state NEW -m tcp -p tcp –dport 10050 -j ACCEPT
 +
-A INPUT -m state –state NEW -m tcp -p tcp –dport 10051 -j ACCEPT
 +
 
 +
/etc/init.d/iptables restart
 +
 
 +
中文在右上角的用户里面哦
  
 +
Starting php_fpm /usr/local/php/bin/php-cgi: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
 +
failed
  
 +
by default install the daemon binaries (zabbix_server, zabbix_agentd, zabbix_proxy) in /usr/local/sbin and the client binaries (zabbix_get, zabbix_sender) in /usr/local/bin.</pre>
  
修改sshd_config中的Port
+
===4.0 5.2 图像显示字体乱码的解决方法===
 +
<pre>
  
service sshd restart
+
1.替换支持中文的字体
 +
#传输字体
 +
#50fbe46d4c5c        zabbix/zabbix-web-nginx-pgsql:alpine-5.2-latest
 +
docker cp simkai.ttf 50fbe46d4c5c:/usr/share/zabbix/assets/fonts
  
#第一步的我没改哦 好像可以不动
+
cp  /root/STKAITI.TTF  /usr/share/zabbix/assets/fonts
修改/etc/gitlab/gitlab.rb [再次声明,gitlab.yml中的配置会被这个给覆盖]
+
 
 +
2.修改字体配置 php文件
 +
#修改 指定的字体 或者直接把你的家体改成和默认同名,而默认的那个先删除 连重启都不用 反正在docker
 +
  grep  -rn  BX_GRAPH_FONT_NAM  /usr/share/zabbix/include/defines.inc.php
 +
67:define('ZBX_GRAPH_FONT_NAME', 'DejaVuSans'); // font file name
  
启用下面这行,并把端口改为自己服务器的sshd端口
+
修改
 +
sed  -i  's!DejaVuSans!simkai!' include/defines.inc.php
 +
define('ZBX_GRAPH_FONT_NAME',          'simkai'); 
 +
</pre>
  
gitlab_rails['gitlab_shell_ssh_port'] = 50022
+
===zabbix-get===
 +
<pre>
 +
root@zabbix-server ~]#zabbix_get  -s 10.3.10.139 -k "system.hostname"
 +
dev-hello-market
  
使之生效,大功告其!
 
  
gitlab-ctl reconfigure
+
不过使用zabbix_get时必须开启客户端被动模式,要求暴露客户端监听端口。
 
</pre>
 
</pre>
 +
[https://blog.csdn.net/cx55887/article/details/83818696 自动化监控--zabbix-get安装使用详解]
 +
 +
==第二 agent==
 +
<pre>
  
 +
#4.0 #centos7 快速安装和自动配置 2019年 8月23日 星期五 11时45分01秒 CST
  
 +
#国外
 +
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
  
== 第一种 Install and configure the necessary dependencies ==
+
#国内
<pre>进入gitlab官方网站,选择对应的操作系统——CentOS 6 (and RedHat/Oracle/Scientific Linux 6),
+
https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
https://about.gitlab.com/downloads/#centos6
 
  
按照官方的提示进行安装:
+
手工直接添加  repo文件 ,如果有时 不小心 像上次删除了 reop文件 一样 ,搞半天
安装配置必要的依赖
 
在Centos 6 和 7 中,以下的命令将会打开HTTP和SSH在系统防火墙中的可访问权限。
 
  
#sudo lokkit -s http -s ssh
+
cat <<EOF > /etc/yum.repos.d/zabbix.repo
 +
[zabbix]
 +
name=Zabbix Official Repository - \$basearch
 +
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/\$basearch/
 +
enabled=1
 +
gpgcheck=1
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
 +
 +
[zabbix-non-supported]
 +
name=Zabbix Official Repository non-supported - \$basearch
 +
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
 +
enabled=1
 +
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
 +
gpgcheck=1
 +
EOF
  
 +
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
 +
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
 +
 +
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
 +
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
  
  
  
 +
yum install zabbix-agent -y
 +
 +
yum install ntp  -y
 +
timedatectl set-ntp true
 +
 +
HOSTNAME=prod-java-02
 +
 +
#config
 +
sed -i "s/^Server=127.0.0.1/Server=172.16.1.9/ " /etc/zabbix/zabbix_agentd.conf
 +
 +
sed -i "s/^ServerActive=127.0.0.1/ServerActive=172.16.1.9/"  /etc/zabbix/zabbix_agentd.conf
 +
sed  -i "s/^Hostname=Zabbix server/Hostname=test-market/"  /etc/zabbix/zabbix_agentd.conf
  
[gitlab-ce]
 
name=gitlab-ce
 
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6
 
repo_gpgcheck=0
 
gpgcheck=0
 
enabled=1
 
gpgkey=https://packages.gitlab.com/gpg.key
 
  
  
sudo yum makecache
+
#这个用了HOSTNAME 变量  而上面的要指定hostname
 +
sed  -i 's/127.0.0.1/23.67.81.95/g'  /etc/zabbix/zabbix_agentd.conf
 +
sed  -i "s/Hostname=Zabbix server/Hostname=${HOSTNAME}/g"  /etc/zabbix/zabbix_agentd.conf
 +
grep "^\s*[^# \t].*$" /etc/zabbix/zabbix_agentd.conf
  
# 安装依赖包
+
systemctl  enable  zabbix-agent.service
sudo yum install curl openssh-server openssh-clients postfix cronie
+
systemctl restart zabbix-agent
# 启动 postfix 邮件服务
 
sudo service postfix start
 
# 检查 postfix
 
sudo chkconfig postfix on
 
# 安装 GitLab 社区版
 
sudo yum install gitlab-ce
 
# 初始化 GitLab 配置并启动GitLab
 
打开/etc/gitlab/gitlab.rb,将external_url = ‘http://git.example.com’修改为自己的IP地址:http://xxx.xx.xxx.xx,,然后执行下面的命令,对GitLab进行编译。
 
  
  
 +
下面是老的信息 和解说
  
 +
cat /etc/zabbix/zabbix_agentd.conf
 +
Hostname=主机名
 +
Server=zabbix server ip
 +
LogFile= 可以不改
  
 +
##最好这样3个
 +
Server=10.6.1.181
 +
ServerActive=10.6.1.181
 +
Hostname=zabbix-client-1
  
sudo gitlab-ctl reconfigure
 
一直都有更新的。
 
  
 +
#rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
 +
#rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
 +
#http://repo.zabbix.com/zabbix/2.0/rhel/5/x86_64/zabbix-release-2.0-1.el5.noarch.rpm
  
  
sudo gitlab-ctl reconfigure
+
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
登录GitLab
 
Username: root
 
Password: 5iveL!fe
 
  
 +
</pre>
 +
===agent on debian===
 +
<pre>
 +
#用系统的源
 +
apt-get install zabbix-agent
  
  
 +
#config 其实和yum的也一样 只是启动不一样而已
 +
HOSTNAME=wiki
 +
sed -i "s/^Server=127.0.0.1/Server=207.148.106.229/ " /etc/zabbix/zabbix_agentd.conf
  
 +
sed -i "s/^ServerActive=127.0.0.1/ServerActive=207.148.106.229/"  /etc/zabbix/zabbix_agentd.conf
 +
sed  -i "s/^Hostname=Zabbix server/Hostname=wiki/"  /etc/zabbix/zabbix_agentd.conf
  
我在ubuntu下的一键安装,如果用汉化版的有问题的。
+
grep "^\s*[^# \t].*$" /etc/zabbix/zabbix_agentd.conf
所以现在只能用英文原版的。
 
  
 +
service zabbix-agent start
  
现在会要求改密码了 在第一次
 
  
dkm12345678
+
zabbix_get -s 138.68.59.0 -k "system.hostname"
  
  
 +
#用zbx的源
 +
  https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+buster_all.deb       
 +
dpkg -i zabbix-release_stretch_all.deb
 +
# apt-get update
 +
</pre>
 +
https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages/repository_installation
  
git_data_dirs({"default" => "/data/gitlab/git-data"})
+
https://www.zabbix.com/documentation/4.0/zh/manual/installation/install_from_packages/rhel_centos#%E5%AE%89%E8%A3%85_agent
/data/gitlab/git-data
 
  
gitlab-ctl reconfigure </pre>
 
  
&nbsp;
+
国内zabbix源总结
  
== 第二种 Add the GitLab package server and install the package ==
+
https://www.cnblogs.com/caidingyu/p/11423089.html
<pre>curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
 
sudo yum install gitlab-ce </pre>
 
  
&nbsp;
+
https://blog.cactifans.com/2019/01/21/Zabbix%E5%9B%BD%E5%86%85%E6%BA%90%E4%BD%BF%E7%94%A8/
  
&nbsp;
+
==docker zabbix 5.0==
  
 +
[https://juejin.im/entry/57be598d0a2b58006cd17c0f 用 Zabbix 和 Docker 搭建监控平台]
  
[https://cloud.tencent.com/developer/article/1114666 【gitlab小症状】gitlab搭配ssh默认端口引发的血战]
+
我的没有 zabbix web ui 明天搞一下
 +
暴露端口 8888 用于访问页面,10051 用于和 Zabbix-agent 通信;
  
[https://blog.csdn.net/ming19951224/article/details/105479033  docker安装gitlab并使用非标准端口]
+
[https://www.zabbix.com/cn/whats_new_5_0 Zabbix 5.0 LTS新功能]
  
==gitlab性能优化调化  占用内存过大问题==
+
==Usage==
 +
添加主机要添加 模板  不然 在监控--主机那 图形没东西
 +
https://www.zabbix.com/documentation/current/manual/quickstart/host
 +
 
 +
== 故障及回顾==
 
<pre>
 
<pre>
 +
问题1.  zabbix server 没有打开 10051端口 前端图形没显示
  
/etc/gitlab/gitlab.rb
+
版本zabbix 2.2
  
#进程数目
 
unicorn['worker_processes'] = 2
 
  
#减少数据库缓存 默认为  256M
 
postgresql['shared_buffers'] = "128MB"
 
  
 +
没有看到 10051 是因为 
  
#减少并发数 默认为8
+
DBPassword=‘123’ 改为 DBPassword=123
postgresql['max_worker_processes'] = 4
 
  
  
 +
日志查看
 +
tail  /tmp/zabbix_server.log
  
#减少 sidekiq并发数
+
14659:20170525:171042.257 [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)
sidekiq['concurrency'] = 20
 
  
  
#最后 reload
+
正确如下
gitlab-ctl reconfigure
+
[root@ zabbix]# netstat -nlpt
 +
Active Internet connections (only servers)
 +
Proto Recv-Q Send-Q Local Address              Foreign Address            State      PID/Program name 
 +
tcp        0      0 0.0.0.0:10051
 +
</pre>
 +
=== 经常报Zabbix agent on Zabbix server is unreachable for 5 minutes ===
 +
<pre>
 +
 
 +
我上次的处理是 重启 zbx server 就好了
  
 
</pre>
 
</pre>
[https://www.dgstack.cn/archives/1951.html gitlab占用内存过大问题]
 
  
[https://www.cnblogs.com/h--d/p/10153647.html GitLab配置优化及汉化]
+
[https://blog.csdn.net/weixin_34226706/article/details/85080769 解决Zabbix使用一段时间后总报Zabbix Agent不可到达的问题]
  
 +
[https://blog.csdn.net/weixin_33721344/article/details/92968417 防火墙导致 zabbix监控大批量报警zabbix agent on **** unreachable for 5 minute]
  
== 报错 ==
+
==参考==
<pre>================================================================================
 
Recipe Compile Error in /opt/gitlab/embedded/cookbooks/cache/cookbooks/gitlab/recipes/default.rb
 
================================================================================
 
  
RuntimeError
+
[https://www.howtoforge.com/tutorial/install-zabbix-monitoring-server-and-agent-on-debian-9/ Install Zabbix Monitoring Server and Agent on Debian]
------------
 
GitLab external URL must include a schema and FQDN, e.g. http://gitlab.example.com/
 
  
记得前缀有http样
+
[https://www.cnblogs.com/yanjieli/p/13651859.html  zabbix--5.0.2部署使用手册 ]
  
</pre>
+
[https://blog.csdn.net/weixin_42743410/article/details/81482728  zabbix 3.0使用教程]
  
[https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/ https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/]
+
[http://blog.51cto.com/guoxh/2089204 Zabbix 3.0 详解:从添加主机到发送报警通知]
  
[https://www.linuxchina.net/?p=2750 https://www.linuxchina.net/?p=2750]
+
[https://my.oschina.net/zhouyuntai/blog/1788830 Zabbix监控系统 (3) 之 添加自定义监控项目、配置邮件告警、测试告警]
  
&nbsp;
+
http://blog.linuxchina.net/?p=1711
  
=see also=
+
[https://www.cnblogs.com/enjoycode/p/zabbix_3_installation_on_centos_7.html  Zabbix 3.0  with apache安装笔记]
[https://docs.gitlab.com/omnibus/docker/ GitLab Docker images]
 
  
[https://my.oschina.net/u/1432614/blog/658568 在 CentOS 7 上使用 Docker 部署安装 GitLab]
+
[https://www.cnblogs.com/zhenglisai/p/6547402.html 【zabbix】自定义监控项key值]
  
[https://github.com/beginor/docker-gitlab-ce GitLab 中文社区版 Docker 镜像]
 
  
[https://gist.github.com/ouyangzhiping/47fcbf26d213146407f2 ouyangzhiping/docker-gitlab.md]
+
[https://blog.csdn.net/zhengchaooo/article/details/79499991 zabbix添加自定义py脚本]
  
[https://www.cnblogs.com/weifeng1463/p/7714492.html GitLab的安装及使用教程]
+
[https://juejin.cn/entry/6844903442452856845 用 Zabbix 和 Docker 搭建监控平台]
  
[[Category:git]] [[Category:ops]]
+
 [[category:zabbix]]

2020年11月23日 (一) 03:39的版本

站内资源

Zabbix 调用API 批量添加主机

zabbix server

pre

这些是官网官方安装文档,记得一定要看

https://www.zabbix.com/documentation/3.0/manual/installation/install

https://www.zabbix.org/wiki/InstallOnCentOS_RHEL

wget -c https://jaist.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.8/zabbix-3.0.8.tar.gz
wget -c http://tenet.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.13/zabbix-2.2.13.tar.gz

#配置php变量

vi /etc/php.ini
date.timezone = Asia/Shanghai
post_max_size = 32M
max_execution_time = 300
max_input_time = 300
注:更改完之后需要重启nginx和php

#安装zabbix所需的组件

yum -y install net-snmp-devel curl-devel
#yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI php-gd php-xml php-bcmath
groupadd zabbix && useradd -g zabbix zabbix
tar xvf zabbix-3.0.8.tar.gz && cd zabbix-3.0.8
#tar xvf zabbix-2.2.13.tar.gz && cd zabbix-2.2.13

#./configure –enable-server –enable-agent –with-mysql –enable-ipv6 –with-net-snmp –with-libcurl –with-libxml2

##或者默认安装路径 make是不用的
./configure --sysconfdir=/etc/zabbix --enable-server --enable-proxy --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 && make install

添加zabbix服务对应的端口(可以省略,但是官方建议有)

cat >>/etc/services<< EOF
zabbix-agent 10050/tcp #Zabbix Agent
zabbix-agent 10050/udp #Zabbix Agent
zabbix-trapper 10051/tcp #Zabbix Trapper
zabbix-trapper 10051/udp #Zabbix Trapper
EOF

配置文件

##好像是这个起效果的呢 –sysconfdir=/etc/zabbix 有这个,不用下面的命令了
#vim /usr/local/etc/zabbix_server.conf
#cd zabbix-2.0.7

#mkdir /etc/zabbix
#cp conf/*.conf /etc/zabbix

mkdir /var/log/zabbix ;chown zabbix:zabbix /var/log/zabbix;


#zabbix web代码
mkdir -p /data/www/zabbix;
cp -r frontends/php/* /data/www/zabbix

修改zabbix连接的数据库的用户名和密码
vi /etc/zabbix/zabbix_server.conf

DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword='123'
DBPort=3306 #如果数据库是用sock文件的方式,这里可以是sock文件的路径

添加数据库Lib文件位置到/etc/ld.so.conf中,并使其生效
echo ‘/usr/local/mysql/lib/mysql/’ >> /etc/ld.so.conf

ldconfig

为zabbix的启动、关闭和重启的脚本文件做链接,方便系统可以找得到

给zabbix服务端程序做软链接 我用默认的config 应该是不用的
cd /usr/local/zabbix/bin/
for i in *;do ln -s /usr/local/zabbix/bin/${i} /usr/bin/${i};done
cd /usr/local/zabbix/sbin/
for i in *;do ln -s /usr/local/zabbix/sbin/${i} /usr/sbin/${i};done

拷贝zabbix服务端和客户端启动脚本到/etc/init.d目录下.
cd misc/init.d/
cp fedora/core/zabbix_server /etc/init.d/
cp fedora/core/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_agentd
chmod +x /etc/init.d/zabbix_server

3 Create Zabbix database

SQL scripts are provided for creating database schema and inserting the dataset
#https://www.zabbix.com/documentation/3.0/manual/appendix/install/db_scripts
#https://www.zabbix.com/documentation/2.2/manual/appendix/install/db_scripts

mysql>create database zabbix character set utf8 collate utf8_bin;;grant all on zabbix.* to zabbix@localhost identified by '123';flush privileges;

将zabbix源码包中的数据导入到新建的zabbix数据库
##这个和老的版本有点不同 第一个是zabbix的数据库表结构,要先导入。

. /etc/profile
cd ../..
mysql -uroot -p'evan' zabbix< database/mysql/schema.sql
mysql -uroot -p'evan' zabbix< database/mysql/images.sql
mysql -uroot -p'evan' zabbix< database/mysql/data.sql

vi /etc/init.d/zabbix_server # 的可以不改,修改一下变量的值 因为我是默认用 configure
# base zabbix dir
BASEDIR=/usr/local
# binary file
ZABBIX_SUCKERD=$BASEDIR/sbin/zabbix_server<pre>

===fping的安装和使用详解===
<pre>http://rickie622.blog.163.com/blog/static/2123881120121121111720941/
http://netsecurity.51cto.com/art/201101/242200.htm
#当然 下载zip包也是可以的
git clone https://github.com/schweikert/fping.git
cd fping
./autogen.sh
./configure
make -j2 && make install

#修改一下配置文件
vim /etc/zabbix_server.conf
#vim /usr/local/etc/zabbix_server.conf
FpingLocation=/usr/local/sbin/fping

启动zabbix,并且添加开机自启动

service zabbix_server start
service zabbix_agentd start #启动服务

chkconfig zabbix_server on
chkconfig zabbix_agentd on #开机自启动

在Nginx服务中添加zabbix虚拟主机
#vim /usr/local/nginx/conf/vhosts/monitor.conf

这些都不要,不然没有web安装向导的
#cd zabbix/conf
#cp zabbix.conf.php.example zabbix.conf.php ;
#chmod 777 zabbix.conf.php

iptables -I INPUT -p tcp –dport 80 -j ACCEPT

zabbix server is not running
Zabbix Server is not running: the information displayed may not be current
http://song49.blog.51cto.com/4480450/1200151

(4)设置zabbix服务IP和端口,name可以忽略

ps:
post_max_size = 16M
PHP option “max_execution_time” 30 300 Fail
PHP option “max_input_time” 60 300 Fail
PHP option “date.timezone” unknown Fai
date.timezone = Asia/Shanghai

PHP option “always_populate_raw_post_data” must be set to “-1”

port 10051

Zabbix frontend is ready! The default user name is Admin, password zabbix.

超级用户密码修改

2.2 用户名第一个字母要大写 也就是Admin
默认的用户名:admin 密码:zabbix

哪里改登录用户和密码呢
use zabbix;
select userid,alias,passwd from users; #查看

+--------+------------+----------------------------------+
| userid | alias      | passwd                           |
+--------+------------+----------------------------------+
|      1 | Admin      | 5fce1b3e34b520afeffb37ce08c7cd66 |


#如果为zabbix 3.0  直接这样就行了 
update users set passwd=MD5('12345') where userid=1;


#zabbix 2.x 
重新开个终端,生成一个MD5加密的密码,这里密码设置的是redhat

[root@localhost ~]# echo -n 12345678 |openssl md5 #-n就表示不输入回车符,不加-n,否则就不是这个结果了。
(stdin)= 25d55ad283aa400af464c76d713c07ad

接着上面的为admin用户设定一个密码

mysql> update users set passwd='25d55ad283aa400af464c76d713c07ad' where userid = '1';
#或者直接使用update users set passwd=md5(“12345678”) where userid=’1′;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

mysql> quit
Bye

zabbix登陆账户admin密码修改
http://pvbutler.blog.51cto.com/7662323/1734003

yum install ntp ntpdate -y
chkconfig ntpd on
/etc/init.d/ntpd start

*/30 * * * * /usr/sbin/ntpdate pool.ntp.org

在29行这后添加
sed -i ’29a user=mysql’ /etc/my.cnf
sed -i ’29a character-set-server=utf8′ /etc/my.cnf
sed -i ’29ainnodb_file_per_table=1′ /etc/my.cnf
重启mysqld

防火墙设置

这个要看一下先,尽量用严格些的防火墙设置

#on zabbix-agent

iptables -A INPUT -s zabbixserverip  -p tcp -m tcp --dport 10050 -m comment --comment "zabbix_server listen " -j ACCEPT 
#iptables -A INPUT -s zabbixserverip  -p tcp -m tcp --dport 10050 -m comment --comment "zabbix_agentd listen " -j ACCEPT 

#这下面的防火墙rule 不要用 
vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 10050 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 10051 -j ACCEPT

/etc/init.d/iptables restart

中文在右上角的用户里面哦

Starting php_fpm /usr/local/php/bin/php-cgi: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
failed

by default install the daemon binaries (zabbix_server, zabbix_agentd, zabbix_proxy) in /usr/local/sbin and the client binaries (zabbix_get, zabbix_sender) in /usr/local/bin.

4.0 5.2 图像显示字体乱码的解决方法


1.替换支持中文的字体
#传输字体
#50fbe46d4c5c        zabbix/zabbix-web-nginx-pgsql:alpine-5.2-latest
docker cp simkai.ttf 50fbe46d4c5c:/usr/share/zabbix/assets/fonts

 cp  /root/STKAITI.TTF  /usr/share/zabbix/assets/fonts
  
2.修改字体配置 php文件
 #修改 指定的字体 或者直接把你的家体改成和默认同名,而默认的那个先删除 连重启都不用 反正在docker
  grep  -rn  BX_GRAPH_FONT_NAM   /usr/share/zabbix/include/defines.inc.php
67:define('ZBX_GRAPH_FONT_NAME',		'DejaVuSans'); // font file name

修改
sed  -i  's!DejaVuSans!simkai!' include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME',           'simkai');  

zabbix-get

root@zabbix-server ~]#zabbix_get  -s 10.3.10.139 -k "system.hostname"
dev-hello-market


不过使用zabbix_get时必须开启客户端被动模式,要求暴露客户端监听端口。

自动化监控--zabbix-get安装使用详解

第二 agent


#4.0 #centos7 快速安装和自动配置 2019年 8月23日 星期五 11时45分01秒 CST

#国外
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

#国内
https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

手工直接添加  repo文件 ,如果有时 不小心 像上次删除了 reop文件 一样 ,搞半天 

cat <<EOF > /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
 
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
EOF

curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
 
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX



yum install zabbix-agent -y

yum install ntp  -y
timedatectl set-ntp true

HOSTNAME=prod-java-02

#config
sed -i "s/^Server=127.0.0.1/Server=172.16.1.9/ " /etc/zabbix/zabbix_agentd.conf

sed -i "s/^ServerActive=127.0.0.1/ServerActive=172.16.1.9/"  /etc/zabbix/zabbix_agentd.conf
sed  -i "s/^Hostname=Zabbix server/Hostname=test-market/"  /etc/zabbix/zabbix_agentd.conf



#这个用了HOSTNAME 变量  而上面的要指定hostname
sed  -i 's/127.0.0.1/23.67.81.95/g'  /etc/zabbix/zabbix_agentd.conf
sed  -i "s/Hostname=Zabbix server/Hostname=${HOSTNAME}/g"  /etc/zabbix/zabbix_agentd.conf
grep "^\s*[^# \t].*$" /etc/zabbix/zabbix_agentd.conf

systemctl  enable  zabbix-agent.service
systemctl restart zabbix-agent


下面是老的信息 和解说

cat /etc/zabbix/zabbix_agentd.conf
Hostname=主机名
Server=zabbix server ip
LogFile= 可以不改

##最好这样3个
Server=10.6.1.181
ServerActive=10.6.1.181
Hostname=zabbix-client-1


#rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
#rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
#http://repo.zabbix.com/zabbix/2.0/rhel/5/x86_64/zabbix-release-2.0-1.el5.noarch.rpm


rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

 

agent on debian

#用系统的源 
 apt-get install zabbix-agent


#config 其实和yum的也一样 只是启动不一样而已
HOSTNAME=wiki
sed -i "s/^Server=127.0.0.1/Server=207.148.106.229/ " /etc/zabbix/zabbix_agentd.conf

sed -i "s/^ServerActive=127.0.0.1/ServerActive=207.148.106.229/"  /etc/zabbix/zabbix_agentd.conf
sed  -i "s/^Hostname=Zabbix server/Hostname=wiki/"  /etc/zabbix/zabbix_agentd.conf

grep "^\s*[^# \t].*$" /etc/zabbix/zabbix_agentd.conf

service zabbix-agent start


 zabbix_get -s 138.68.59.0 -k "system.hostname"


#用zbx的源
  https://repo.zabbix.com/zabbix/4.0/debian/pool/main/z/zabbix-release/zabbix-release_4.0-3+buster_all.deb        
dpkg -i zabbix-release_stretch_all.deb
# apt-get update

https://www.zabbix.com/documentation/3.2/manual/installation/install_from_packages/repository_installation

https://www.zabbix.com/documentation/4.0/zh/manual/installation/install_from_packages/rhel_centos#%E5%AE%89%E8%A3%85_agent


国内zabbix源总结

https://www.cnblogs.com/caidingyu/p/11423089.html

https://blog.cactifans.com/2019/01/21/Zabbix%E5%9B%BD%E5%86%85%E6%BA%90%E4%BD%BF%E7%94%A8/

docker zabbix 5.0

用 Zabbix 和 Docker 搭建监控平台

我的没有 zabbix web ui 明天搞一下 暴露端口 8888 用于访问页面,10051 用于和 Zabbix-agent 通信;

Zabbix 5.0 LTS新功能

Usage

添加主机要添加 模板  不然 在监控--主机那 图形没东西 

https://www.zabbix.com/documentation/current/manual/quickstart/host

故障及回顾

问题1.  zabbix server 没有打开 10051端口 前端图形没显示 

版本zabbix 2.2 



没有看到 10051 是因为  

DBPassword=‘123’ 改为 DBPassword=123


日志查看 
 tail  /tmp/zabbix_server.log

14659:20170525:171042.257 [Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbix'@'localhost' (using password: YES)


正确如下 
[root@ zabbix]# netstat  -nlpt 
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   
tcp        0      0 0.0.0.0:10051

经常报Zabbix agent on Zabbix server is unreachable for 5 minutes


我上次的处理是 重启 zbx server 就好了 

解决Zabbix使用一段时间后总报Zabbix Agent不可到达的问题

防火墙导致 zabbix监控大批量报警zabbix agent on **** unreachable for 5 minute

参考

Install Zabbix Monitoring Server and Agent on Debian

zabbix--5.0.2部署使用手册

zabbix 3.0使用教程

Zabbix 3.0 详解:从添加主机到发送报警通知

Zabbix监控系统 (3) 之 添加自定义监控项目、配置邮件告警、测试告警

http://blog.linuxchina.net/?p=1711

Zabbix 3.0 with apache安装笔记

【zabbix】自定义监控项key值


zabbix添加自定义py脚本

用 Zabbix 和 Docker 搭建监控平台