首页
统计信息
友情链接
壁纸
Search
1
【更新】CommentToMail typecho2017&v4.1& Mailer三版本,支持php5.6/7,插件详解
158,244 阅读
2
【90APT开源免费】第三代哈弗H6、哈弗大狗、H6经典版、坦克300车机开启无线ADB、升级地图、安装软件全流程
24,345 阅读
3
CentOS 7安装bbr教程
12,973 阅读
4
纯小白10分钟变身linux建站高手?宝塔linux面板全体验
12,559 阅读
5
深信服超融合架构测试介绍
12,183 阅读
技术相关
ACG相关
胡言乱语
数码杂烩
登录
Search
标签搜索
进击的巨人
漫画
宝塔
php
typecho
diy
vps
折腾
动漫
优酷路由宝
ubuntu
路由器
QQ
KMS
王忘杰
累计撰写
290
篇文章
累计收到
179
条评论
首页
栏目
技术相关
ACG相关
胡言乱语
数码杂烩
页面
统计信息
友情链接
壁纸
搜索到
199
篇与
的结果
2022-07-05
LSI9240-8I创建RAID、刷直通模式、软件恢复RAID数据
一、创建RAID阵列 此次演示为3块SAS硬盘组建RAID5阵列开机提示按Ctrl+H选择当前RAID卡新建RAID阵列手动创建阵列将现有0、1、2 三块硬盘添加到硬盘组将硬盘组添加进预创建阵列以64kB、无缓存直写模式创建raid5阵列(LSI9240-8I无板载缓存)确定使用直写模式RAID阵列创建完成接受阵列保存配置初始化,会丢失阵列中硬盘全部数据创建完成二、LSI9240-8I阵列卡刷为LSI9211-8I直通卡 使用rufus制作freedos启动盘所需用到的固件包,解压后放到U盘https://files.cnblogs.com/files/iitrust/9211-8i.ITfireware&program.zip拍下RAID卡序列号,在RAID卡背面1、U盘引导到DOS,备份原卡的sbr (serial boot rom)Megarec -readsbr 0 backup.sbr2、将empty.bin写入控制卡megarec -writesbr 0 empty.bin3、檫除控制卡的 Flashmegarec -cleanflash 04、重启电脑,看不到原卡的bios启动画面说明,上述步骤成功5、下面将控制卡刷成IT模式,重启后继续进dos6、直接运行下列命令将控制卡刷成IT模式sas2flsh -o -f 2118it.bin -b mptsas2.rom7、将控制卡序列号写入sas2flsh -o -sasadd 500605bxxxxxxxxx三、软件恢复RAID数据 注意:必须标记RAID磁盘顺序!使用一块新硬盘安装系统后,将需要进行RAID恢复的硬盘按顺序插入服务器(关机状态操作更安全),开机后可以直接看到硬盘而非RAID阵列信息,代表直通模式成功阵列数据分析LSI9240-8I默认的参数是左同步、64KB1、使用DiskGenius进行RAID数据恢复组建虚拟RAID按顺序添加硬盘RAID5左同步、64KB可完整显示所有硬盘信息,目录内容为前期自行建立2、使用R-Studio Technician进行RAID数据恢复组建虚拟块RAID和自动检测按顺序添加硬盘自动检索推测RAID阵列可能性,也可以手动选择磁盘信息完整数据完整四、最后 ESXi所使用的VMFS文件系统恢复可查看我的其他文章。
2022年07月05日
632 阅读
0 评论
2 点赞
2022-06-25
linux常用命令记录
基础命令systemctl enable --now zabbix-agent2 启动并开机启动服务 hostnamectl set-hostname xx修改主机名 fstrim -a 磁盘空间回收 pwd 显示当前目录 pwd -P 显示物理路径而非软连接 pwd -L 显示软连接 .. 上层目录 . 当前目录 who 当前登录的用户和登录方式 poweroff 关机 reboot 重启 clear 清空屏幕 scp -pr /tabk root@192.168.1.10:/test PATH环境变量 echo $PATH history 命令历史 cd 切换目录 ls 显示目前内容 -a 显示隐藏文件 -l 显示详细信息 -h 大小单位 mkdir 创建目录 -p 递归创建 -m 777 权限模式 -v 显示详细信息 不调用别名 cp /cp lsof 列出打开的文件进程 sudo tcpdump -i eth0 -c 3 输入三个包 netstat -r 路由表 netstat -i 接口 route -n 查看路由表 ip route add 172.17.0.0/16 via 172.16.21.1 添加静态路由 ip route del 172.17.0.0/16 via 172.16.21.1 删除静态路由 修改Docker默认网段,配置加速 /etc/docker/daemon.json(自行创建) { "registry-mirrors": [ "https://dockerproxy.com", "https://hub-mirror.c.163.com", "https://mirror.baidubce.com", "https://ccr.ccs.tencentyun.com" ], "bip":"192.168.66.1/24" } curl ifconfig.me 查看外网IP 替换系统rm命令,带回收站建立rm目录 mkdir 700 /rm myrm(){ D=/rm/$(date +%Y%m%d%H%M%S); mkdir -p $D; mv -v "$@" $D && echo "moved to $D ok"; } alias rm=myrm ~/.bash_profile centos在关机或开机时一直等待,提示A stop job is running for ……通过systemd的设置项跳过/etc/systemd/system.confDefaultTimeoutStartSec=15s DefaultTimeoutStopSec=15s systemctl daemon-reload作者:Cindy_lina链接:https://www.jianshu.com/p/412094e4aab0来源:简书著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。tree 树状显示目录内容 tree /boot/ -P *.conf 显示boot目录下已conf结尾的文件 ctrl+z 将当前程序放入后台 fg切换回前台 查看当前用户 whoami who am i 切换用户 su -l xx 查看用户组 groups xx cat /etc/group | sort 查看用户组并进行字典排序 sort -r反转 sort -t ':' -k 3 以:为分隔符,以第三段为基准排序 sort -n 按数字排序 uniq 过滤重复行 grep -E "aa|bb" 同时匹配aa和bb关键字 sudo usermod -G sudo lilei 把lilei加入到sudo用户组 sudo deluser lilei --remove-home 删除用户并删除用户目录 一个目录要同时具有读权限和执行权限才可以打开,而一个目录要有写权限才允许在其中创建其它文件 sudo chown root aa 改变aa文件的文件所有者为root chmod ugo-rw aa 减去所有者 用户组 其他用户的读取写入权限 mkdir -p father/son/grandson 同时创建父目录 # 使用通配符批量创建 5 个文件 $ touch file{1..5}.txt # 批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件 $ rename 's/\.txt/\.c/' *.txt # 批量将这 5 个文件,文件名改为大写 $ rename 'y/a-z/A-Z/' *.c cat -n passwd 带行号查看文件 nl 带行号查看文件 tail /etc/passwd -n 1 显示最后一行 查看文件类型 file /bin/ls vim u 撤销 dd删除一行 p粘贴一行 :s/three/thre 替换 :! 执行命令 :r !ls 提取内容 :r xx.exe 提取文件 v可视化 y复制 输出一个变量 echo $tmp PATH=$PATH:/home/xx/xx 添加PATH环境变量 source .zshrc 让变量自己生效 搜索命令 whereis who which find / -name xx 打印当前目录下的文件目录列表 ,可以使用如下命令: find . -print 找到当前目录下所有 php 文件,并显示其详细信息,可以使用如下命令: find . -name “*.php” -exec ls -l {} \; time ls 测量命令运行时间 zip -r -o xx.zip /home/xx zip压缩 du -sh 0 * 当前目录文件大小,目录深度0 unzip -l xx.zip 查看包内容 unzip -O GBK xx.zip 已中文编码解压 tar -cvzf xx.tar.gz ~ 压缩 tar -xvzf xx.tar.gz 解压缩 修复rpm包 yum reinstall -y r 查看文件内容 列出目录内容 w 修改文件内容 创建删除目录 x 执行文件 进入目录 /bin/bash^M: bad interpreter报错 使用dos2unix filename df -h 查看分区结构 ;顺序运行 命令执行顺序 &&正确就运行 ||错误就运行 cut /etc/passwd -d ':' -f 1,6 以:为分隔符 打印第一个和第六个字段 打印/etc/passwd文件中每一行的前N个字符: # 前五个(包含第五个) $ cut /etc/passwd -c -5 # 前五个之后的(包含第五个) $ cut /etc/passwd -c 5- # 第五个 $ cut /etc/passwd -c 5 # 2到5之间的(包含第五个) $ cut /etc/passwd -c 2-5 # 查看环境变量中以"yanlou"结尾的字符串 $ export | grep ".*yanlou$" cat xx > 1.txt 2>&1 2重定向到1内 echo 1 | tee 1.txt 同时重定向 zsh;exec 1>1.txt;exit永久重定向 /dev/null 2>&1黑洞 这个命令在有些时候十分有用,特别是当用来处理产生大量输出结果的命令如 find,locate 和 grep 的结果,详细用法请参看 man 文档。 $ cut -d: -f1 < /etc/passwd | sort | xargs echo 反向解析 nslookup -qt=ptr 45.63.123.106 关闭selinux 临时 setenforce 0 永久 /etc/selinux/config SELINUX=disabled 硬盘读写测速 [root@veeam-centos ~]# time dd if=/dev/zero bs=10M of=/test.b count=5000 5000+0 records in 5000+0 records out 52428800000 bytes (52 GB, 49 GiB) copied, 427.657 s, 123 MB/s real 7m8.215s user 0m0.016s sys 0m43.097s [root@veeam-centos ~]# time dd if=/test.b of=/dev/null bs=10M count=5000 5000+0 records in 5000+0 records out 52428800000 bytes (52 GB, 49 GiB) copied, 37.2162 s, 1.4 GB/s real 0m37.260s user 0m0.008s sys 0m16.270s 空间回收 fstrim / centos7配置网卡 vi /etc/sysconfig/network-scripts/ifcfg-ens32 bootproto=static onboot=yes IPADDR=192.168.1.160 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=119.29.29.29 DNS2=8.8.8.8 systemctl restart network linux安装VMwareToolsmount /dev/cdrom /mnt cp /mnt/VMtools.tar.gz ~ tar xvzf ~/VMtools.tar.gz ~/vmwaretools/vminstall.plcentos7 suse15时区设置,NTP同步systemctl status chronyd [root@zabbix ~]# cat /etc/chrony.conf # These servers were defined in the installation: server 114.115.116.117 iburst [root@zabbix ~]# timedatectl set-timezone Asia/Shanghai [root@zabbix ~]# timedatectl status Local time: Sat 2022-04-16 22:05:38 CST Universal time: Sat 2022-04-16 14:05:38 UTC RTC time: Sat 2022-04-16 14:05:38 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: yes NTP synchronized: yes RTC in local TZ: no DST active: n/a chronyc -a makestep 立即同步时间 chronyc tracking 查看同步状态linux查看外网IPcurl ifconfig.me临时切换中文环境export LANG=zh_CN.utf8显示80,443并发数,显示nginx phpfpm mysql进程数,显示负载 内存 swap CPU使用率echo "";echo "uptime" ;uptime | awk '{print $3 $4 $5}';echo http 80: ; netstat -na | grep :80 |grep -v grep | wc -l ;echo https 443: ; netstat -na | grep :443 |grep -v grep | wc -l ;echo php-fpm: ; ps aux | grep php-fpm|grep -v grep | wc -l ;echo nginx: ;ps aux | grep nginx|grep -v grep| wc -l;echo mysql: ;ps aux | grep mysql |grep -v grep| wc -l ;echo load:;w | grep load| awk '{print $10,$11 $12}';echo UseMem MB:;free -m | grep buffers/cache|grep -v grep | awk '{print $3}';echo FreeMem MB:;free -m | grep buffers/cache|grep -v grep | awk '{print $4}';echo UseSwap MB:;free -m | grep Swap |grep -v grep| awk '{print $3}';echo CPU:;top -n1 | grep Cpu;echo ;echo ; echo整站爬取wget -E --referer http://wo166.com/ -r -m -k http://wo166.com/mysql数据库操作,导出导入mysqldump -utntsec -ptnt123456789sql -h127.0.0.1 -P3306 --routines --default-character-set=utf8 --databases tntsec > tntsecbak.sql mysql -utntsec -ptnt123456789sql -h127.0.0.1 -P3306 --default-character-set=utf8 tntsec < tntsecbak.sqliptables防火墙操作,ip6tables操作相同iptables -I INPUT -p tcp --dport 80 -j ACCEPT iptables -I INPUT -p tcp --dport 22 -j ACCEPT iptables -I INPUT -p tcp --dport 3306 -j ACCEPT /etc/rc.d/init.d/iptables save /etc/init.d/iptables status iptables -A INPUT -i lo -j ACCEPT 当前规则/etc/sysconfig/iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 25000 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited firewalld防火墙操作firewall-cmd --add-port=80/tcp --permanent firewall-cmd --permanent --add-port=10050-10051/tcp firewall-cmd --reload firewall-cmd --list-ports firewall-cmd --list-services查看端口监听和占用状态 yum -y install net-tools[root@zabbix ~]# netstat -lnpt | grep 80 tcp6 0 0 :::80 :::* LISTEN 4880/httpd [root@zabbix ~]# ps aux | grep 4880 | grep -v grep root 4880 0.0 0.0 230548 5288 ? Ss 18:53 0:00 /usr/sbin/httpd -DFOREGROUND zabbix 24880 0.0 0.0 677532 2720 ? S Apr12 0:21 /usr/sbin/zabbix_server: http poller #1 [got 0 values in 0.000742 sec, idle 5 sec]查看端口并发数netstat -na | grep :443 netstat -na | grep :8080 wc -lcentos7配置网卡VLAN ID/etc/sysconfig/network-scripts/ifcfg-ens192 PHYSDEV=ens192 VLAN=yes VLAN_ID=2 TYPE="VLAN" REORDER_HDR=yes GVRP=no MVRP=no #以上为新增配置 PROXY_METHOD="none" BROWSER_ONLY="no" BOOTPROTO="none" DEFROUTE="yes" IPV4_FAILURE_FATAL="no" IPV6INIT="yes" IPV6_AUTOCONF="yes" IPV6_DEFROUTE="yes" IPV6_FAILURE_FATAL="no" IPV6_ADDR_GEN_MODE="stable-privacy" NAME="ens192" UUID="279fcd97-8de8-473a-80e2-67257d05ef5e" #DEVICE="ens192" 屏蔽此配置 ONBOOT="yes" IPADDR="172.16.21.148" PREFIX="25" GATEWAY="172.16.21.254" DNS1="172.16.21.245" IPV6_PRIVACY="no" 挂载本地源 1、镜像挂载虚拟化环境镜像装载mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdromISO镜像直接挂载mkdir /mnt/cdrom mount /xxdvd.iso /mnt/cdrom2、配置本地源/etc/yum.repos.d/Media.repo [InstallMedia] name=CentOS Linux 8 baseurl=file:///mnt/cdrom/BaseOS gpgcheck=0 enabled=1 [AppStream] name=AppStream baseurl=file:///mnt/cdrom/AppStream enabled=1 gpgcheck=03、关闭其他源enabled=0查看UUIDblkid ls -l /dev/disk/by-uuid vol_id /dev/sda1nginx负载均衡upstream appnode_proxy_backend_of_site_172.16.10.41 { server 172.16.10.39:12345 weight=1 max_fails=0 fail_timeout=10s backup; server 172.16.10.40:12345 weight=5 max_fails=0 fail_timeout=10s; server 172.16.10.42:12345 weight=1 max_fails=0 fail_timeout=10s; } server { listen 12345; access_log /data/mystack/sites/172.16.10.41/log/nginx/access.log proxy; proxy_pass appnode_proxy_backend_of_site_172.16.10.41; } 安装图形界面yum groupinstall "Server with GUI" -y设置图形启动systemctl set-default graphical{dotted startColor="#ff6c6c" endColor="#1989fa"/}linux挂载windows共享文件夹手动挂载mount -t cifs -o username="*",password='' //172.16.1.10/File /17216110File/ fstab自动挂载//172.16.1.10/File /17216110File cifs defaults,uid=1000,gid=1000,username="*",password='' 0 0查看# df -h /17216110File/ Filesystem Size Used Avail Use% Mounted on //172.16.1.10/File 301G 64G 237G 22% /17216110FilevSphere虚拟机XFS文件系统扩容1、通过vSphere扩大磁盘空间,添加新磁盘无需重启,扩大磁盘空间可能需要重启2、partprobe刷新磁盘空间,查看新添加的硬盘3、通过gdisk为新添加的硬盘分区,格式为lvm格式,partprobe刷新磁盘4、lsblk识别到分区5、创建PVpvcreate /dev/sdd16、扩展VGvgextend vg_data /dev/sdd17、扩展LVlvextend -l +100%FREE /dev/vg_data/lv_data8、XFS文件系统重新识别xfs_growfs /dev/vg_data/lv_data
2022年06月25日
4,711 阅读
3 评论
0 点赞
2022-06-24
使用ZeroTier快速组建SD-WAN网络,自行搭建Moon月亮服务器
ZeroTier是一套使用UDP协议构建的SD-WAN网络软件,其主要有三部分组成:行星服务器Planet、月亮服务器Moon、客户端节点LEFA行星服务器是ZeroTier的根节点,可以采用ZeroTier官方的服务器,也可以使用开源代码自行搭建月亮服务器介于行星与客户端之间,官方行星都在国外,因此可以就近公网搭建月亮服务器,客户端可以优先使用延迟更低的月亮节点进行P2P打通或者网络中转客户端节点既可以安装在客户端进行远程网络接入,也可以部署后开启路由转发功能,配置静态路由后实现两个网络组网一、配置ZeroTier网络注册并登录官网https://www.zerotier.com/创建一个网络NetworkID是此网络的唯一IDPRIVATE模式下需要管理员同意后才能进入网络PUBLIC模式下可以自由加入、退出创建内网IPV4网段,不可与现有网络网段冲突可以配置静态路由条目,如使用B类内网网段,则可以将172.16.0.0/12的路由整体指向目标IP勾选后的客户端才能加入网络,配置固定IP,即可互访二、安装客户端下载客户端https://www.zerotier.com/download/我这里使用的是win10,安装后加入上方创建的网络即可实现互联互通Join New NetWork三、配置Moon服务器Moon需具有公网IP,我这里使用的是公网centos7 VPScurl -s https://install.zerotier.com | sudo bash安装后加入网络 zerotier-cli join xxxxxxxx配置Moon服务进入配置文件目录cd /var/lib/zerotier-one/生成签名文件zerotier-idtool initmoon identity.public >>moon.json编辑moon.json文件记录下月亮节点ID并配置IP和端口"stableEndpoints": ["111.222.333.444/9993"]生成签名文件zerotier-idtool genmoon moon.json 显示: Copy wrote 0000006xxxxxxxxx.moon (signed world with timestamp 15xxxxxxxxxx7)创建服务目录mkdir /var/lib/zerotier-one/moons.d/将生成的签名文件复制到moons.d目录cp 0000006xxxxxxxxx.moon /var/lib/zerotier-one/moons.d/重启ZeroTier服务,月亮服务器搭建完成systemctl restart zerotier-one四、加入Moonwindows与linux操作相同,均需要使用命令行zerotier-cli listpeers 查看当前节点 zerotier-cli join <network ID> 加入网络 zerotier-cli leave <network ID> 退出网络 zerotier-cli orbit <world ID> <world ID> 加入月亮节点 zerotier-cli deorbit <world ID> 退出月亮节点五、开启路由转发、配置静态路由windows开启内核转发reg add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v IPEnableRouter /D 1 /f sc config RemoteAccess start= auto sc start RemoteAccess交换机配置静态路由[H3C]ip route-static 192.168.191.0 24 172.16.21.120 description SD-WAN完毕 此时内网任意一台主机都可以与客户端互通
2022年06月24日
619 阅读
0 评论
1 点赞
2022-06-23
windows AD域跨大版本升级,域、林2003升级至2016,系统2008迁移至2022
一、前言实验环境:系统分别为2008、2016、2022,当前2008为主域,2016为辅域,域、林级别为2003实验目标:下线2008系统,添加2022并设为主域控,域、林级别提升为2016.二、提升域、林级别三、退出、删除2008域控查看当前主域控四、2022加入域升级为域控会出现报错副本验证失败,因为从2019已经切换到DFS复制了,所以需要切换到DFS复制副本验证失败。指定域仍使用文件复制服务(FRS)复制SYSVOL共享。FRS弃用参考连接:https://www.cnblogs.com/ooflyoo/p/9494246.html迁移FRS至DFSR SYSVOLStateMigration Process for SYSVOL ReplicationStart (State 0)在SYSVOL迁移前,FRS复制SYSVOL共享文件夹Prepared (State 1)FRS继续复制域使用的SYSVOL共享文件夹,而DFS复制则复制SYSVOL文件夹的副本。SYSVOL文件夹的此副本不用于服务来自其他域控制器的请求。Redirected (State 2)SYSVOL文件夹的DFS复制副本将负责处理来自其他域控制器的SYSVOL请求。FRS继续复制原始的SYSVOL文件夹,但是DFS复制现在复制在重定向状态下使用域控制器的生产SYSVOL文件夹。Eliminated (State 3)DFS复制继续处理所有SYSVOL复制。Windows删除原始SYSVOL文件夹,FRS不再复制SYSVOL数据。1、验证目录复制运行正常,若有多台域控,必须保证域控之间复制正常repadmin /ReplSum2、备份SYSVOL共享文件夹C:\Windows\SYSVOL3、迁移域至prepared状态dfsrmig /SetGlobalState 1等待所有控制器进入Prepared状态dfsrmig /getglobalstate 当前的DFSR全局状态:“准备就绪” 已成功dfsrmig /getmigrationstate 全局状态:“准备就绪”4、迁移域至Redirected状态dfsrmig /setglobalstate 2等待所有控制器进入Redirected状态dfsrmig /getglobalstatedfsrmig /getmigrationstate 全局状态:“已重定向”5、迁移域至Eliminated状态dfsrmig /setglobalstate 3等待所有控制器进入Eliminated状态dfsrmig /getglobalstatedfsrmig /getmigrationstate 全局状态:“已消除”至此迁移完成 五、2022再次加入域控,进行迁移主域控转交给2022Move-ADDirectoryServerOperationMasterRole -Identity AD3 -OperationMasterRole SchemaMaster,DomainNamingMaster,PDCEmulator,RIDMaster,InfrastructureMaster -force查看当前主域控netdom query fsmo六、提升域、林级别到2016AD管理中心提升域功能级别到2016提升林功能级别到2016查看复制状态repadmin /replsummary登录2016查看当前域、林级别完成
2022年06月23日
651 阅读
0 评论
3 点赞
2022-05-04
Centos8/Alma8 网络配置工具nmcli使用说明
一、前言:centos已经死了,作为用户量最大的RHEL衍生发行版,在2022年1月1日结束了centos8生命周期;而到2024年6月centos7支持结束之前,时间会给我们一个最合格的centos继任者,在此,我的选择是Alma Linux。二、centos8/alma8网络管理命令变化:centos8/alma8系统,弃用了network.service,采用NetworkManager(NM)网络管理器,因此命令为nmcli。三、操作命令:查看当前网络信息[root@alma8 ~]# nmcli ens224: connected to ens224 "VMware VMXNET3" ethernet (vmxnet3), 00:50:56:8E:02:B1, hw, mtu 1500 inet4 192.168.200.10/24 route4 192.168.200.0/24 inet6 fe80::9c44:37c2:db12:5fcd/64 route6 fe80::/64 lo: unmanaged "lo" loopback (unknown), 00:00:00:00:00:00, sw, mtu 65536 DNS configuration: servers: 192.168.200.1 192.168.200.2 domains: 9sb.org interface: ens224重新加载网卡配置文件[root@alma8 ~]# nmcli connection reload停止网卡、激活网卡激活不仅是启动网卡,还会重新加载网卡配置文件[root@alma8 ~]# nmcli connection down ens224 Connection 'ens224' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4) [root@alma8 ~]# nmcli connection up ens224 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/5)查看全部网卡信息[root@alma8 ~]# nmcli device show GENERAL.DEVICE: ens224 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:50:56:8E:02:B1 GENERAL.MTU: 1500 GENERAL.STATE: 100 (connected) GENERAL.CONNECTION: ens224 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/5 WIRED-PROPERTIES.CARRIER: on IP4.ADDRESS[1]: 192.168.200.10/24 IP4.GATEWAY: -- IP4.ROUTE[1]: dst = 192.168.200.0/24, nh = 0.0.0.0, mt = 101 IP4.DNS[1]: 192.168.200.1 IP4.DNS[2]: 192.168.200.2 IP4.DOMAIN[1]: 9sb.org IP6.ADDRESS[1]: fe80::9c44:37c2:db12:5fcd/64 IP6.GATEWAY: -- IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 101 GENERAL.DEVICE: lo GENERAL.TYPE: loopback GENERAL.HWADDR: 00:00:00:00:00:00 GENERAL.MTU: 65536 GENERAL.STATE: 10 (unmanaged) GENERAL.CONNECTION: -- GENERAL.CON-PATH: -- IP4.ADDRESS[1]: 127.0.0.1/8 IP4.GATEWAY: -- IP6.ADDRESS[1]: ::1/128 IP6.GATEWAY: -- IP6.ROUTE[1]: dst = ::1/128, nh = ::, mt = 256查看单个网卡信息[root@alma8 ~]# nmcli device show ens224 GENERAL.DEVICE: ens224 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:50:56:8E:02:B1 GENERAL.MTU: 1500 GENERAL.STATE: 100 (connected) GENERAL.CONNECTION: ens224 GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/5 WIRED-PROPERTIES.CARRIER: on IP4.ADDRESS[1]: 192.168.200.10/24 IP4.GATEWAY: -- IP4.ROUTE[1]: dst = 192.168.200.0/24, nh = 0.0.0.0, mt = 101 IP4.DNS[1]: 192.168.200.1 IP4.DNS[2]: 192.168.200.2 IP4.DOMAIN[1]: 9sb.org IP6.ADDRESS[1]: fe80::9c44:37c2:db12:5fcd/64 IP6.GATEWAY: -- IP6.ROUTE[1]: dst = fe80::/64, nh = ::, mt = 101查看网卡设备状态[root@alma8 ~]# nmcli device status DEVICE TYPE STATE CONNECTION ens224 ethernet connected ens224 lo loopback unmanaged --查看网卡信息[root@alma8 ~]# nmcli connection show NAME UUID TYPE DEVICE ens224 bcb687ae-9883-4453-ad03-74087a9f4477 ethernet ens224创建网卡配置文件[root@alma8 ~]# nmcli con add type ethernet con-name ens224.1 ifname ens224 Connection 'ens224.1' (4187eb22-d317-4dc1-82f5-c81a97d8bbd4) successfully added. [root@alma8 ~]# nmcli connection show NAME UUID TYPE DEVICE ens224 bcb687ae-9883-4453-ad03-74087a9f4477 ethernet ens224 ens224.1 4187eb22-d317-4dc1-82f5-c81a97d8bbd4 ethernet --删除网卡配置文件[root@alma8 ~]# nmcli con delete ens224.1 Connection 'ens224.1' (4187eb22-d317-4dc1-82f5-c81a97d8bbd4) successfully deleted.修改网卡是否为自启,默认自启[root@alma8 ~]# nmcli con mod ens224 connection.autoconnect no [root@alma8 ~]# grep ONBOOT /etc/sysconfig/network-scripts/ifcfg-ens224 ONBOOT=no [root@alma8 ~]# nmcli con mod ens224 connection.autoconnect yes [root@alma8 ~]# grep ONBOOT /etc/sysconfig/network-scripts/ifcfg-ens224 ONBOOT=yes修改网卡是否自动获取IP,并配置静态IP地址[root@alma8 ~]# nmcli con modif ens224 ipv4.method auto [root@alma8 ~]# grep BOOTPROTO /etc/sysconfig/network-scripts/ifcfg-ens224 BOOTPROTO=dhcp [root@alma8 ~]# nmcli con modif ens224 ipv4.method manual ipv4.addresses 192.168.200.200/24 ipv4.gateway 192.168.200.1 connection.autoconnect yes ipv4.dns 114.114.114.114,114.114.115.15 [root@alma8 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens224 TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ens224 UUID=bcb687ae-9883-4453-ad03-74087a9f4477 DEVICE=ens224 ONBOOT=yes IPADDR=192.168.200.200 PREFIX=24 GATEWAY=192.168.200.1 DNS1=114.114.114.114 DNS2=114.114.115.15 [root@alma8 ~]# nmcli con up ens224 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/10) [root@alma8 ~]# ip add 3: ens224: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:50:56:8e:02:b1 brd ff:ff:ff:ff:ff:ff inet 192.168.200.200/24 scope global noprefixroute ens224 valid_lft forever preferred_lft forever inet6 fe80::9c44:37c2:db12:5fcd/64 scope link noprefixroute valid_lft forever preferred_lft forever四、完成一次完整操作,服务器添加一块网卡,配置IP、DNS、网关。添加网卡后,出现了Wired connection 1,但是没有对应的配置文件 [root@alma8 ~]# nmcli con show NAME UUID TYPE DEVICE Wired connection 1 ee5fc609-9606-3e44-841d-601fc7d562ab ethernet ens256 [root@alma8 ~]# ll /etc/sysconfig/network-scripts/ total 8 删除Wired connection 1 [root@alma8 ~]# nmcli con delete "Wired connection 1" Connection 'Wired connection 1' (ee5fc609-9606-3e44-841d-601fc7d562ab) successfully deleted. 新建ens256 [root@alma8 ~]# nmcli con add type ethernet con-name ens256 ifname ens256 Connection 'ens256' (d90d5e30-7c76-4a62-92de-0fb4d4a0a41f) successfully added. 已生成ens256配置文件 [root@alma8 ~]# ll /etc/sysconfig/network-scripts/ total 12 -rw-r--r--. 1 root root 282 May 4 13:54 ifcfg-ens256 为ens256配置网络 [root@alma8 ~]# nmcli con modif ens256 ipv4.method manual ipv4.addresses 192.168.200.201/24 ipv4.gateway 192.168.200.1 connection.autoconnect yes ipv4.dns 114.114.114.114,114.114.115.15 重新加载ens256配置文件 [root@alma8 ~]# nmcli con up ens256 Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/13) 查看网卡信息 [root@alma8 ~]# ip addr 4: ens256: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 00:50:56:8e:4d:94 brd ff:ff:ff:ff:ff:ff inet 192.168.200.201/24 brd 192.168.200.255 scope global noprefixroute ens256 valid_lft forever preferred_lft forever inet6 fe80::374f:9c09:1e47:e0fa/64 scope link noprefixroute valid_lft forever preferred_lft forever五、总结不爽,太不爽了!
2022年05月04日
486 阅读
0 评论
1 点赞
2022-05-03
域控小实验,2016升级2022,域控同步、迁移、强制迁移、DHCP热备
一、前言:为什么要升级服务器操作系统?这就要说到windows操作系统的生命周期,windows生命周期内有以下几个关键节点:主流支持、扩展支持、超出支持终止日期主流支持期内,所有用户都可获得功能更新和安全更新;扩展支持期内,所有用户都可获得安全更新;超出支持终止日期的三年内,付费参与扩展安全更新 (ESU) 计划可以获得安全更新;超出支持终止日期的三年后,所有更新全部中止。如:windows2016操作系统,主流支持结束于2022年1月11日,扩展支持将于2027年1月11日结束,届时,只有ESU付费用户才能继续获取三年的安全更新。而windows2022 LTSC操作系统,作为长期支持版,将获得十年安全更新,因此在当下再次部署系统,建议购买并使用windows2022LTSC。为什么安全更新这么重要?官网引用:修补程序更新是使用一小段软件代码更新现有软件以修复应用程序中任何安全性或功能性问题的过程。补丁更新至关重要,需要持续监控以保护您的企业网络免遭破坏。这以及补丁更新为何对保持业务安全至关重要的多种原因。Microsoft的补丁程序更新包括几种补丁程序,其中包括关键补丁程序更新,安全补丁程序更新,汇总,功能包,定义更新和Service Pack。实验目的:1、确认2022是否能成为2016辅域,DNS、域信息是否同步。2、确认2022是否能与2016交换主域角色。3、主域崩溃时辅域能否强制升级为主域。4、DHCP备份还原和热备。二、创建主域、创建辅域、信息同步测试主机名分别为win2016(AD1)、win2022(AD2)、win10(test),IP为AD1 192.168.200.1 AD2 192.168.200.2 test自动获取。1、2016安装域控AD1创建主域林和域的功能级别均为2016主域搭建完成2、2022安装辅域添加到现有域注意,2022的林和域的功能级别也是2016,成为辅域其实不会有任何问题。3、查看域控状态使用netdom query fsmo命令查看当前主域控4、信息同步在AD1上新建DNS记录,新建组策略,新建用户组织和用户十几秒后,在AD2查询到上述记录,同步正常三、主域控迁移、角色互换在AD1执行命令,将域控五大角色交给AD2,注意要在powershell里执行注意:这里用命令交换角色是因为命令简单,在图形界面下需要点N多地方,很麻烦的。Move-ADDirectoryServerOperationMasterRole -Identity AD2 -OperationMasterRole SchemaMaster,DomainNamingMaster,PDCEmulator,RIDMaster,InfrastructureMaster -force查看当前主域控,已经成为AD2查看当前域复制状态repadmin /showrepl手动进行复制repadmin /syncall强制同步repadmin /syncall /force查看某台域控的活动目录复制状态repadmin /showrepl servername 查看某台域控的复制队列repadmin /queue servername查看域控复制状态总结repadmin /replsummary域控检查命令,可查看域控当前有无异常dcdiag四、主域崩溃、强制迁移将AD2断网,模拟主域崩溃,配置AD1强行夺取主域控权限确认当前主域控为AD2,我们使用Ntdsutil进行域控操作,再次查看主域控为AD1注意:强制夺取主域权限后,可通过服务器管理器 - AD站点与服务 - Default-first-site-name - server - 域控 - NTDS Setting删除旧域控,旧域控若可以修复请务必执行强制降级操作,若无法修复请重装系统。Ntdsutil Roles Connections Connect to Server ad1.9sb.org Quit Seize infrastructure master Seize naming master Seize PDC Seize RID master Seize schema master五、DHCP备份还原、热备DHCP不是域控的一部分,但可以安装在域控上,并提供高可用性1、备份还原2、热备在AD1中增加服务器授权(AD3为原AD2服务器,已重装系统重新加域)配置故障转移配置AD3为伙伴服务器可配置为负载均衡和热备,DHCP配置会自动同步到AD3客户端测试若AD3断网,则AD1继续提供服务六、总结爽!太爽啦!
2022年05月03日
604 阅读
0 评论
0 点赞
2022-05-02
VLAN非常规实验,给你带来一个不一样的VLAN1
传统三层架构 查看本文前,请务必看完华为对VLAN的详细解释:https://info.support.huawei.com/info-finder/encyclopedia/zh/VLAN.html一、同一网段,不同VLAN通讯 下图两台PC是否可以通讯?SW1所有接口都为access VLAN10,SW2所有接口都为access VLAN20.答案是可以的。为什么?通常我们认为,VLAN就是用来划分子网的,而交换机互联就必须用trunk接口。首先,VLAN并非用来划分子网用的,VLAN仅仅是用来划分二层网络,同一个VLAN可以划分多个子网,同一个子网也可以划分多个VLAN。其次,交换机的内部只处理Tag帧,当PC的无Tag帧包进入access接口,交换机为其打上VLAN Tag,当从access接口出来后,access接口为其撕去Tag帧。所以,上图通讯过程为,PC1 ping PC2,PC1发广播包查找PC2,进入交换机1 access接口,添加VLAN10 Tag,交换机1向所有允许VLAN10通过的接口发送广播包,包从交换机1右侧access接口发出,被撕去标签。撕去标签后,进入交换机2 access接口,添加VLAN20 Tag,交换机2向所有允许VLAN20通过的接口发送广播包,包从交换机2右侧access接口发出,被撕去标签,到达PC2.包返回相同。二、二层设备与路由器连接 下图PC能否与路由器通讯?答案是可以的为什么?通常我们认为,二层设备不能与路由器直接连接,必须使用三层交换机开启路由接口或配置子接口。但与上方实验相同,当使用access接口与路由器互联时,此接口会把对应VLAN的Tag标签撕去,直达路由器,通讯完全没问题。三、二三层混合网关 下图PC1能否与PC2通讯?如图通常我们认为,要么网关全部在核心交换机上,要么网关就只能在汇聚上。但使用VLAN技术,我们完全可以进行混合配置,比如VLAN10的网关在SW1上,而VLAN20的网关在RT1上。四、防火墙DMZ区域与DMZ交换机、核心交换机连接 下图PC1怎样与PC2通讯?如图为什么?通常我们认为,防火墙DMZ区域需要独立部署,从物理上DMZ区域不能接入核心交换机。但实际上我们可以通过VLAN技术在核心上从二层进行隔离,此时PC2流量全部经由DMZ接口转发。五、虚拟化软件分布式交换机 下图VM1怎样与VM2通讯?如图从第四个实验我们得知防火墙区域并不需要从核心隔离出去,因此本实验我们结合vSphere软件分布式交换机技术,可以实现在同一套虚拟化系统中进行DMZ区域划分,在网络上完全与内网隔离。六、总结 VLAN,太强了!
2022年05月02日
578 阅读
0 评论
1 点赞
2022-04-28
离线安装SQLserver2017
一、准备工作SQL Server 2017下载地址:ed2k://|file|cn_sql_server_2017_developer_x64_dvd_11296175.iso|1769777152|E21AE7C3576C0BDF1BC0ADC541217FAC|/序列号:Enterprise Core 6GPYM-VHN83-PHDM2-Q9T2R-KBV83Developer 22222-00000-00000-00000-00000Enterprise TDKQD-PKV44-PJT4N-TCJG2-3YJ6BStrandard PHDV4-3VJWD-N7JVP-FGPKY-XBV89Web WV79P-7K6YG-T7QFN-M3WHF-37BXC下载 SQL Server Management Studio (SSMS):https://docs.microsoft.com/zh-cn/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-2017java下载:https://www.java.com/zh-CN/download/机器学习脱机组件下载地址:https://go.microsoft.com/fwlink/?LinkId=851496&lcid=2052 https://go.microsoft.com/fwlink/?LinkId=851507&lcid=2052 https://go.microsoft.com/fwlink/?LinkId=851502&lcid=2052 https://go.microsoft.com/fwlink/?LinkId=851508&lcid=2052 二、安装数据库本文演示的是将SQLserver2017安装到D盘序列号安装,我这里输入企业版序列号Enterprise TDKQD-PKV44-PJT4N-TCJG2-3YJ6B安装位置为D盘提示安装java,目前最新版本是Version 8 Update 331启用sa用户,并把当前系统用户添加为管理员添加当前用户指定脱机文件目录下载的四个脱机文件,文件名中的数字为1033,按要求改为2052,并放在着桌面上,并加载安装等待安装结束,在具有固态硬盘的电脑上,安装时间约20分钟三、安装数据库管理工具注意:管理工具不必安装在数据库服务器上,如果只在服务器上使用就安装在一起,如果对外提供服务,可以安装在自己电脑上远程连接,如果远程连接,注意防火墙开放端口TCP1433.我这里安装在数据库服务器上,双击安装即可四、连接使用完毕
2022年04月28日
541 阅读
0 评论
0 点赞
2022-04-26
联想SureHA高可用解决方案
本文分享安装过程和使用方法,不提供下载,市面无破解软件。详细介绍请看官网介绍http://lenovo_netapp.vip.ccwonline.com.cn/products/lenovo/datamanagement/SureHA100G2.html本文安装的为sqlserver数据库镜像型集群。一、环境准备两台虚拟机,五个Ip地址,SureHA软件,数据库软件。在本文中,虚拟机使用的是windows2016,配置为4C4G双网卡,一个网卡提供服务,一个网卡做心跳,做HA的数据库软件需要安装在D盘,并且D盘空间相同,使用的SureHA软件版本为4.1.1,数据库为sql2008,因为2008安装相对比较快。分区情况如下:C盘50G D盘50G Z盘2G raw格式且不格式化约定的IP规则如下:TEST1 外网地址192.168.30.201 心跳地址192.168.50.201TEST2 外网地址192.168.30.202 心跳地址192.168.50.202HA虚拟VIP地址 192.168.30.200 客户端使用vip地址访问数据库配置IP并互相ping通注意:集群软件开放端口过多, 请关闭系统防火墙 ,并使用交换机配置ACL策略以保护系统安全。安装数据库软件,确保可以互相连接二、安装SureHA安装选择与共享磁盘相连的控制器,我这里硬盘是nvme的安装完重启三、集群向导进入集群web控制台,两个IP都可以192.168.30.201:29003 192.168.30.202:29003配置新集群配置为中文如果是第一台服务器的web控制台,这里需要添加第二台服务器的IP配置心跳网络用来做磁盘镜像NP解决,直接下一步四、组定义1、先配置虚拟IP基本设定,直接下一步可启动的服务器,直接下一步组属性,直接下一步组资源增加浮动Ip取消 遵循原有依赖关系复归操作,直接下一步虚拟IP2、配置磁盘镜像配置组资源添加组资源镜像磁盘资源使其依赖浮动IP复归操作直接下一步配置数据和集群分区数据分区是约定的D,集群分区是raw格式的Z配置完成3、配置数据库服务控制让服务控制依赖磁盘镜像,即磁盘同步完后再启动服务复归操作,直接下一步配置sql服务名提示必须把对应的服务配置为手动在两台服务器上找到sql服务的配置为手动组配置完成五、应用当前配置重新启动管理器进入操作模式六、集群操作启动集群集群主界面,显示集群主要信息状态页面,操作集群启动、切换等报警日志镜像磁盘七、整体测试测试1:点击移动组,此时HA依次关闭主服务器服务,按配置的组顺序,漂移IP到另一台服务器,同步磁盘文件,然后再另一台服务器启动SQL服务。测试2:主服务器断电,心跳中断,按默认策略,一段时间后,备用服务器启动成为主服务器,并显示镜像无法同步告警断电服务器供电恢复,数据从现主服务器同步,断电服务器成为备用服务器测试3:使用数据库工具连接集群IP,新建数据库,然后切换服务器主备,查看数据是否完整。切换服务器主备数据库客户端工具提示连接中断刷客户端,数据依然存在八、web管理台增加密码认证HA环境搭建完成后,进入设定模式web管理器-使用密码来控制连接配置密码应用配置应用修改注意,应用修改不会影响现有HA服务的运行再次登录,出现登录框九、总结联想SureHA在本文中,采用的是镜像磁盘的方式配置HA高可用,HA热备与双活最大的区别在于,热备切换是需要时间的,并且紧急情况下,如服务器断电,热备无法保证数据100%完全同步完毕,但仍比单机提供了无可比拟的安全性。
2022年04月26日
439 阅读
0 评论
0 点赞
2022-04-10
Centos7多网卡绑定bond快速实践
一、准备环境VMware软件、Centos7虚拟机二、添加网卡为虚拟机再添加两块网卡,查看网卡信息,可以看到有ens32、ens34、ens35三块网卡ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:54:02:06 brd ff:ff:ff:ff:ff:ff inet 192.168.30.142/24 brd 192.168.30.255 scope global noprefixroute dynamic ens32 valid_lft 1615sec preferred_lft 1615sec inet6 fe80::d089:c15:e69a:8ce4/64 scope link noprefixroute valid_lft forever preferred_lft forever 3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:54:02:1a brd ff:ff:ff:ff:ff:ff inet 192.168.30.143/24 brd 192.168.30.255 scope global noprefixroute dynamic ens34 valid_lft 1765sec preferred_lft 1765sec inet6 fe80::a4af:b843:9032:9dd3/64 scope link noprefixroute valid_lft forever preferred_lft forever 4: ens35: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:54:02:10 brd ff:ff:ff:ff:ff:ff inet 192.168.30.141/24 brd 192.168.30.255 scope global noprefixroute dynamic ens35 valid_lft 1765sec preferred_lft 1765sec inet6 fe80::b7cf:76d7:23aa:63c2/64 scope link noprefixroute valid_lft forever preferred_lft forever查看网卡配置文件,可以看到添加网卡后,并没有生成对应的网卡文件ls /etc/sysconfig/network-scripts/ifcfg*/etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-lo可以为网卡生成配置文件,但在本文中不需要这样做nmcli connection add type ethernet con-name ens34 ifname ens34 autoconnect yes nmcli connection add type ethernet con-name ens35 ifname ens35 autoconnect yes再次查看网卡配置文件,生成成功ls /etc/sysconfig/network-scripts/ifcfg*/etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-ens35 /etc/sysconfig/network-scripts/ifcfg-ens34 /etc/sysconfig/network-scripts/ifcfg-lo三,选定网卡绑定模式多网卡一共有7种bond模式,这里直接选用mode=6 (balance-alb) Adaptive load balancing(适配器适应性负载均衡),该模式不需要交换机支持四、开始配置1、加载bonding模块,并设置开机启动[root@localhost ~]# lsmod | grep bonding [root@localhost ~]# modprobe bonding [root@localhost ~]# lsmod | grep bonding bonding 152979 0启用rc.local开机启动项chmod +x /etc/rc.d/rc.local在文件中写入modprobe bonding2、建立bond网口配置文件并进行配置/etc/sysconfig/network-scripts/ifcfg-bond0DEVICE=bond0 NAME=bond0 TYPE=Bond BONDING_MASTER=yes IPADDR=192.168.30.250 PREFIX=255.255.255.0 GATEWAY=192.168.30.2 DNS1=114.114.114.114 ONBOOT=yes BOOTPROTO=none BONDING_OPTS="mode=6 miimon=100"3、修改三块网卡的配置vi /etc/sysconfig/network-scripts/ifcfg-ens32DEVICE=ens32 ONBOOT=yes BOOTPROTO=none TYPE=Ethernet MASTER=bond0 SLAVE=yesvi /etc/sysconfig/network-scripts/ifcfg-ens34DEVICE=ens34 ONBOOT=yes BOOTPROTO=none TYPE=Ethernet MASTER=bond0 SLAVE=yesvi /etc/sysconfig/network-scripts/ifcfg-ens35DEVICE=ens35 ONBOOT=yes BOOTPROTO=none TYPE=Ethernet MASTER=bond0 SLAVE=yes4、重新加载网络配置注意:这一步会断网!nmcli connection reload && systemctl restart network.service使用新IP链接ssh五、验证绑定是否生效cat /proc/net/bonding/bond0Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: adaptive load balancing Primary Slave: None Currently Active Slave: ens32 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: ens32 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:54:02:06 Slave queue ID: 0 Slave Interface: ens34 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:54:02:1a Slave queue ID: 0 Slave Interface: ens35 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:54:02:10 Slave queue ID: 0查看网卡状态ip addr1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens32: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000 link/ether 00:0c:29:54:02:06 brd ff:ff:ff:ff:ff:ff 3: ens34: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000 link/ether 00:0c:29:54:02:1a brd ff:ff:ff:ff:ff:ff 4: ens35: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master bond0 state UP group default qlen 1000 link/ether 00:0c:29:54:02:10 brd ff:ff:ff:ff:ff:ff 5: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 00:0c:29:54:02:06 brd ff:ff:ff:ff:ff:ff inet 192.168.30.250/24 brd 192.168.30.255 scope global bond0 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe54:206/64 scope link valid_lft forever preferred_lft forever查看接口带宽,带宽为3Gethtool bond0Settings for bond0: Supported ports: [ ] Supported link modes: Not reported Supported pause frame use: No Supports auto-negotiation: No Supported FEC modes: Not reported Advertised link modes: Not reported Advertised pause frame use: No Advertised auto-negotiation: No Advertised FEC modes: Not reported Speed: 3000Mb/s Duplex: Full Port: Other PHYAD: 0 Transceiver: internal Auto-negotiation: off Link detected: yes连续ping测试,并禁用第一个网卡,此时会丢一个包,网络依然正常运行来自 192.168.30.250 的回复: 字节=32 时间<1ms TTL=64 来自 192.168.30.250 的回复: 字节=32 时间<1ms TTL=64 来自 192.168.30.250 的回复: 字节=32 时间=1ms TTL=64 请求超时。 来自 192.168.30.250 的回复: 字节=32 时间=1ms TTL=64 来自 192.168.30.250 的回复: 字节=32 时间<1ms TTL=64完毕!
2022年04月10日
432 阅读
0 评论
0 点赞
2022-04-09
ActiveMQ高可用集群部署方案
一、环境准备使用vm虚拟机安装两台centos7虚拟机,IP分别为192.168.30.139和140注意防火墙问题,实验环境可选择关闭防火墙systemctl stop firewalld systemctl disable firewalld二、软件准备1、安装jdk8查询yum库中java版本yum list java*需要安装java-1.8.0-openjdk.x86_64和java-1.8.0-openjdk-devel.x86_64 yum install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64 安装完成,查看java版本java -versionopenjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)2、安装ActiveMQ当前官网ActiveMQ版本有两个,ActiveMQ 5.17.0和 5.16.4,其支持的功能和环境不同,我这里使用5.16.4下载并上传到两台服务器https://activemq.apache.org/components/classic/download/解压缩tar xvzf apache-activemq-5.16.4-bin.tar.gz3、单机测试ActiveMQ编辑 ./apache-activemq-5.16.4/conf/jetty.xml将<property name="host" value="127.0.0.1"/>改为<property name="host" value="0.0.0.0"/>启动服务./apache-activemq-5.16.4/bin/activemq start登录web平台,账号密码adminhttp://192.168.30.140:8161/三、部署Master-Slave模式使用Shared Filesystem Master-Slave KahaDB文件锁方式规划如下,仅以openwire举例,其他服务如MQTT其实道理完全相同节点IPopenwireadmin端口mq1192.168.30.139616168161mq2192.168.30.139616178162mq3192.168.30.139616188163mq4192.168.30.140616198164mq5192.168.30.140616208165mq6192.168.30.140616218166注意:Master-Slave模式是在一台机器上运行三个程序提供提供3选1的可用性,因此只在192.168.30.159上配置在/usr/local目录下创建mqcluster目录,然后在该目录中创建mq1,mq2,mq3的文件夹mkdir /usr/local/mqcluster/mq1 -p mkdir /usr/local/mqcluster/mq2 -p mkdir /usr/local/mqcluster/mq3 -p将ActiveMQ安装包放入上面三个目录中cp -r ./apache-activemq-5.16.4/* /usr/local/mqcluster/mq1 cp -r ./apache-activemq-5.16.4/* /usr/local/mqcluster/mq2 cp -r ./apache-activemq-5.16.4/* /usr/local/mqcluster/mq3配置brokernamevi /usr/local/mqcluster/mq1/conf/activemq.xml vi /usr/local/mqcluster/mq2/conf/activemq.xml vi /usr/local/mqcluster/mq3/conf/activemq.xml将<broker xmlns="http://activemq.apache.org/schema/core" brokerName="localhost" dataDirectory="${activemq.data}">修改为<broker xmlns="http://activemq.apache.org/schema/core" brokerName="brokerA" dataDirectory="${activemq.data}">持久化配置采用KahaDB文件锁方式,让三个服务共用一个KahaDB文件,当主服务崩溃后,备用服务会自动运行。vi /usr/local/mqcluster/mq1/conf/activemq.xml vi /usr/local/mqcluster/mq2/conf/activemq.xml vi /usr/local/mqcluster/mq3/conf/activemq.xml将<kahaDB directory="${activemq.data}/kahadb"/>修改为<kahaDB directory="/usr/local/mqcluster/mq1/data/kahadb"/>修改openwire端口vi /usr/local/mqcluster/mq1/conf/activemq.xml vi /usr/local/mqcluster/mq2/conf/activemq.xml vi /usr/local/mqcluster/mq3/conf/activemq.xml将<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>分别改为<transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="openwire" uri="tcp://0.0.0.0:61617?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="openwire" uri="tcp://0.0.0.0:61618?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/>注意:该行下面几列如mqtt、ws等原理相同,如果使用需要保证端口不重复,如果不使用请删除!修改Jetty端口,即web服务端口vi /usr/local/mqcluster/mq1/conf/jetty.xml vi /usr/local/mqcluster/mq2/conf/jetty.xml vi /usr/local/mqcluster/mq3/conf/jetty.xml将 <property name="host" value="127.0.0.1"/> <property name="port" value="8161"/>分别改为 <property name="host" value="0.0.0.0"/> <property name="port" value="8161"/> <property name="host" value="0.0.0.0"/> <property name="port" value="8162"/> <property name="host" value="0.0.0.0"/> <property name="port" value="8163"/>启动集群/usr/local/mqcluster/mq1/bin/activemq start /usr/local/mqcluster/mq2/bin/activemq start /usr/local/mqcluster/mq3/bin/activemq start测试集群是否生效第一种方式:通过web端口,同时只有一个端口能够访问,如mq1能够访问,通过/usr/local/mqcluster/mq1/bin/activemq stop后,mq2和mq3中会选出一个继续提供端口访问。http://192.168.30.139:8161/ http://192.168.30.139:8162/ http://192.168.30.139:8163/第二种方式:查看日志,cat /usr/local/mqcluster/mq1/data/activemq.log cat /usr/local/mqcluster/mq2/data/activemq.log cat /usr/local/mqcluster/mq3/data/activemq.log此时主服务器的日志为2022-04-09 08:03:40,021 | INFO | ActiveMQ Jolokia REST API available at http://0.0.0.0:8161/api/jolokia/ | org.apache.activemq.web.WebConsoleStarter | main备用服务器日志为2022-04-09 08:06:01,001 | INFO | Database /usr/local/mqcluster/mq1/data/kahadb/lock is locked by another server. This broker is now in slave mode waiting a lock to be acquired | org.apache.activemq.store.SharedFileLocker | main四、配置Broker-Cluster集群准备工作:将第二台服务器按Master-Slave模式搭建完,注意搭建的是192.168.30.140上的mq4、mq5、mq6配置Broker-Cluster集群,使两组Master-Slave能够负载均衡只修改192.168.30.139即brokerA组vi /usr/local/mqcluster/mq1/conf/activemq.xml vi /usr/local/mqcluster/mq2/conf/activemq.xml vi /usr/local/mqcluster/mq3/conf/activemq.xml在persistenceAdapter标签前配置<networkConnectors> <networkConnector name="brokerB" uri="static:(tcp://192.168.30.140:61619,tcp://192.168.30.140:61620,tcp://192.168.30.140:61621)" duplex="true" /> </networkConnectors>重新启动所有节点即完成配置,配置开机启动和进程守护等内容本文不再赘述。至此,ActiveMQ高可用+负载均衡集群搭建完毕。
2022年04月09日
411 阅读
0 评论
0 点赞
2022-04-09
centos7飞速搭建zabbix5.0并添加windows、linux监控、企业微信报警
{lamp/}已弃用,请查看最新alma8+zabbix6 https://90apt.com/2982{lamp/}一、环境zabbix所在服务器系统为centos7,监控的客户端为windows2016和centos7。二、安装zabbix官方安装帮助页面https://www.zabbix.com/cn/download1、关闭selinux临时 setenforce 0 永久 /etc/selinux/configSELINUX=disabled2、配置zabbix yum源rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm yum clean all3、安装zabbix服务端和zabbix监控端yum install zabbix-server-mysql zabbix-agent4、安装zabbix前端启用scl软件源yum install centos-release-scl编辑文件 /etc/yum.repos.d/zabbix.repo 启用源[zabbix-frontend] ... enabled=1 ...5、安装zabbix前端yum install zabbix-web-mysql-scl zabbix-apache-conf-scl6、安装数据库配置mariabd源/etc/yum.repos.d/MariaDB.repo[mariadb] name = MariaDB baseurl=https://mirrors.aliyun.com/mariadb/yum/10.2/centos7-amd64 gpgkey=https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB gpgcheck=1yum -y install MariaDB-server MariaDB-client systemctl start mariadb #启动服务 systemctl enable mariadb #设置开机启动7、进行MariaDB的相关简单配置mysql_secure_installation首先是设置密码,会提示先输入密码Enter current password for root (enter for none):<–初次运行直接回车 设置密码 Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车 New password: <– 设置root用户的密码 Re-enter new password: <– 再输入一次你设置的密码 其他配置 Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车 Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车, Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车 Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车8、创建数据库mysql -uroot -pmariadb> create database zabbix character set utf8 collate utf8_bin; mariadb> create user zabbix@localhost identified by 'password123'; mariadb> grant all privileges on zabbix.* to zabbix@localhost; mariadb> quit;导入初始架构和数据,系统将提示您输入新创建的密码zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix9、配置数据库密码编辑配置文件 /etc/zabbix/zabbix_server.confDBPassword=password12310、配置PHP时区编辑配置文件 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.confphp_value[date.timezone] = Asia/Shanghai11、启动并设置开机启动systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm12、防火墙开放端口 firewall-cmd --add-port=80/tcp --permanent firewall-cmd --permanent --add-port=10050-10051/tcp firewall-cmd --reload firewall-cmd --list-ports firewall-cmd --list-services三、前端配置1、连接到新安装的Zabbix前端: http://server_ip/zabbix环境检查连接数据库zabbix服务器监听端口确认信息安装完成2、登录默认账号密码 Admin zabbix软件首页设置中文 Administration - Users - Admin修改为中文,别忘了修改密码四、安装windows agenthttps://www.zabbix.com/cn/download_agents在客户机中安装填入服务器地址,安装完成在zabbix平台添加主机监控创建主机 配置 - 主机 - 创建主机选择群组,输入客户端IP,添加关联监控模板zabbix官方windows监控模板,点击更新稍等一分钟,就会显示zbx在线查看主机最新数据 监测 - 主机 - 最新数据五、安装centos7 linux agent1、关闭selinux关闭selinux临时 setenforce 0永久 /etc/selinux/configSELINUX=disabled2、打开防火墙端口,agent端口为10050firewall-cmd --add-port=10050/tcp --permanent firewall-cmd --reload firewall-cmd --list-ports firewall-cmd --list-services3.安装zabbixrpm -ivh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-agent-5.0.21-1.el7.x86_64.rpm4.修改zabbix agent配置/etc/zabbix/zabbix_agentd.confServer=zabbixIP ServerActive=zabbixIP Hostname=本机名字5.启动并开机启动systemctl start zabbix-agent systemctl enable zabbix-agent6.在zabbix平台添加主机并关联linux模板,查看数据六、linux批量自动上线zabbix-agent1、zabbix配置自动注册注意,自动注册即客户端主动连接服务器,所以服务器除了web平台的80端口外,还需要开放TCP10051端口firewall-cmd --permanent --add-port=10050-10051/tcp firewall-cmd --reload firewall-cmd --list-ports平台 - 配置 - 动作 - Autoregistration actions自动注册创建动作元数据中的 Linux 为下方脚本里的 HostMetadata=Linux 严格区分大小写操作添加主机添加主机群组关联模板启用动作即可2、客户主机修改主机名使用自动注册,那么客户端的名字就非常重要了,更改可以方便识别的主机名hostnamectl set-hostname 新主机名3、客户端放置并执行自动脚本,也可配置批量远程执行,大规模上线客户端,此脚本支持centos7/8上传服务器,添加执行权限,执行chmod +x ./centos-zabbix-agent-install.sh./centos-zabbix-agent-install.sh脚本报 zabbix agent正在运行 即为正常 #/bin/bash echo "关闭selinux" sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config setenforce 0 #yum clean all echo "下载zabbix-agent" OSVERSION=`cat /etc/redhat-release |awk -F "release " '{print $2}'|awk -F "." '{print $1}'` #rpm -ivh https://repo.zabbix.com/zabbix/5.0/rhel/$OSVERSION/x86_64/zabbix-agent-5.0.21-1.el$OSVERSION.x86_64.rpm rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/$OSVERSION/x86_64/zabbix-release-5.0-1.el$OSVERSION.noarch.rpm yum clean all yum install zabbix-agent -y echo "修改zabbix-agent配置文件" ipaddr=$(ip a show |grep ens|grep inet |awk '{print $2}'|awk -F '/' '{print $1}') zabbix_server='192.168.30.130' hostname=$(hostname) sed -i "s/^Server=127.0.0.1/Server=${zabbix_server}/g" /etc/zabbix/zabbix_agentd.conf sed -i "s/^ServerActive=127.0.0.1/ServerActive=${zabbix_server}/g" /etc/zabbix/zabbix_agentd.conf sed -i "s/Hostname=Zabbix server/Hostname=${hostname}/g" /etc/zabbix/zabbix_agentd.conf sed -i "s/# HostMetadata=/HostMetadata=Linux/g" /etc/zabbix/zabbix_agentd.conf echo "防火墙放行zabbix-agent端口" firewall-cmd --permanent --add-port=10050-10051/tcp firewall-cmd --reload echo "启动zabbix-agent服务" systemctl start zabbix-agent && systemctl enable zabbix-agent zabbixagentpid=`ps -ef |grep zabbix_agentd|grep -w 'zabbix_agentd'|grep -v 'grep'|awk '{print $2}'` if [ "$zabbixagentpid" ];then echo "zabbix agent 正在运行 " else echo "zabbix agent 安装失败!!!" fi 4、平台查看上线情况已自动上线七、总结快速简单,你学会了吗前言:通过企业微信小程序,实现zabbix自动注册和zabbix告警的微信消息推送。一、整体架构1、企业微信 - 创建zabbix机器人应用 - 取得企业微信ID、应用Agentld和Secret2、编写zabbix机器人推送脚本,测试脚本3、添加报警媒介4、配置Trigger actions触发动作,启用消息推送管理员,填写要发送的信息5、配置Autoregistration actions自动注册,填写要发送的信息6、进行测试二、注册或使用已有的企业微信,查询企业微信ID1、在企业微信 - 我的企业 - 企业信息 - 企业ID2、创建zabbix机器人应用企业微信后台 - 应用管理 - 应用 - 创建应用3、查看Agentld和Secret三、编写zabbix机器人脚本准备 工作yum -y install epel-release yum -y install python-pip pip install requests查询脚本存放位置cat /etc/zabbix/zabbix_server.conf | grep AlertScript可以看到脚本存放在/usr/lib/zabbix/alertscripts目录中编写脚本 weixin.py并放入上面的目录 ,填入上面获得的三个值 #!/usr/bin/env python #-*- coding: utf-8 -*- import requests import sys import os import json import logging logging . basicConfig ( level = logging . DEBUG , format = ' %(asctime)s , %(filename)s , %(levelname)s , %(message)s ' , datefmt = ' %a , %d %b %Y %H:%M:%S' , filename = os . path . join ( '/tmp' , 'weixin.log' ), filemode = 'a' ) corpid = 'ww36e' appsecret = '5yFNqeTjrr3I' agentid = 1000002 token_url = 'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=' + corpid + '&corpsecret=' + appsecret req = requests . get ( token_url ) accesstoken = req . json ()[ 'access_token' ] msgsend_url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=' + accesstoken touser = sys . argv [ 1 ] subject = sys . argv [ 2 ] #toparty='3|4|5|6' message = sys . argv [ 2 ] + " \n\n " + sys . argv [ 3 ] params ={ "touser" : touser , # "toparty": toparty, "msgtype" : "text" , "agentid" : agentid , "text" : { "content" : message }, "safe" : 0 } req = requests . post ( msgsend_url , data = json . dumps ( params )) logging . info ( 'sendto:' + touser + ';;subject:' + subject + ';;message:' + message ) 赋予执行权限chmod +x /usr/lib/zabbix/alertscripts/weixin.py创建日志文件touch /tmp/weixin.logchown zabbix:zabbix /tmp/weixin.log测试脚本,用户名为企业微信通讯录中的用户名,一般为拼音全拼,严格区分大小写!/usr/lib/zabbix/alertscripts/weixin.py 用户名 '标题' '测试成功'此时企业微信可以收到zaabix应用发来的信息。四、添加报警媒介,测试媒介zabbix后台 - 管理 - 报警媒介类型名称 weixin类型 脚本脚本名称 weixin.py脚本参数:{ALERT.SENDTO}{ALERT.SUBJECT}{ALERT.MESSAGE}五、配置Trigger actions触发动作,启用消息推送管理员,填写要发送的信息配置 - 动作 Trigger actions - 创建动作在 动作 中填写名称在 操作 中编辑操作和恢复操作1、操作发送消息zabbix管理员组仅发送到微信custom message主题:服务器报警消息:告警主机:{HOST.NAME}告警地址:{HOST.IP}监控项目:{ITEM.NAME}监控取值:{ITEM.LASTVALUE}告警等级:{TRIGGER.SEVERITY}当前状态:{TRIGGER.STATUS}告警信息:{TRIGGER.NAME}告警时间:{EVENT.DATE} {EVENT.TIME}事件ID:{EVENT.ID}2、恢复操作通知所有参与者custom message主题:服务器已恢复消息:告警主机:{HOST.NAME}告警地址:{HOST.IP}监控项目:{ITEM.NAME}监控取值:{ITEM.LASTVALUE}告警等级:{TRIGGER.SEVERITY}当前状态:{TRIGGER.STATUS}告警信息:{TRIGGER.NAME}告警时间:{EVENT.DATE} {EVENT.TIME}事件ID:{EVENT.ID}六、配置Autoregistration actions自动注册,填写要发送的信息在Autoregistration actions自动注册中发送消息zabbix管理员组仅送到weixinCustom message主题:Linux主机自动注册到zabbix服务器消息:主机名:{HOST.HOST}主机IP:{HOST.IP}Agent端口:{HOST.PORT}七、进行测试新linux上线微信收到提示linux重启微信收到提示八、解决zabbix网页中文乱码问题,替换字体yum -y install google-noto-sans-simplified-chinese-fonts.noarch cp /usr/share/fonts/google-noto/NotoSansSC-Regular.otf /usr/share/fonts/dejavu/DejaVuSans.ttf九、总结很简单的啦
2022年04月09日
493 阅读
0 评论
0 点赞
1
...
8
9
10
...
17