ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

【Linux基础操作-3】

【Linux基础操作-3】 SSH服务虚拟机远程连接systemctl status sshdactive 服务正常运行failed 或 inactiveenabled 开机自启动disabled0.0.0.0 port 22 和 :: port 22—— 0.0.0.0 意味着任何网卡 IP 都能响应 SSH 连接。如果只监听 127.0.0.1则只能本地连接当第一次进行远程连接时会生成密钥以便下次连接使用存储在.ssh/known_hosts目录中查看目录cat ~/.ssh/known_hostsssh免密访问:ssh-keygen 生成密钥对ssh-copy-id server1 如果server是本机把密钥所在文件/root/.ssh/id_rsa复制server2可实现两主机任意切换ssh server1 无需密码日志持久化用于故障排错mkdir创建目录chown属组 目录修改目录权限chmod修改目录权限2755为 SGID同组递归团队协作systemd-journald拼写错误且这个systemd-journald命令不能用reloadrsyslog服务rsyslog 服务的主配置文件为/etc/rsyslog.conf发送端iSCSI服务报错客户端 server2 解析少了主机端 server3NFS服务重启服务nfs-server/nfs server2(ro) --对server2以只读的方式共享/nfs目录/nfs server2(rw,no_root_squash)-- 对server2以读写的方式共享目录且为root/nfs *(sync,ro) – 对所有人以只读的方式共享/nfs目录Apache 主机访问控制7.20.16.00vim /etc/httpd/conf/httpd.conf如果文件为空先下载httpd/var 找到上图复制一份加上deny和allow上图先读deny后alloworder反过来意思为deny all这里报错是因为防火墙没打开80接口而且httpd还没接管80接口ss -tlnp | grep :80查看 80 接口状态现在属于 httpd 使用nginx 两者都开的情况下就是说它们俩抢接口 80谁抢到了谁 active另一个 inactive配置文件针对/etc/httpd/conf/httpd.conf“/var/www/html/admin”只对文件/admin对server2192.168.80.136开放server3能正常访问其他用户认证配置文件中Require all granted说明136地址主机能访问目标文件并且无需账号密码或者密码错了依旧能查看文件 curl -u 账号密码网站访问用户配置文件中Require all granted说明136地址主机能访问目标文件并且无需账号密码或者密码错了依旧能查看文件 curl -u 账号密码 注释掉才能实现用户密码登录AuthUserFile /etc/httpd/conf/htpasswd 指定存储用户名和密码的文件路径AuthType basic 指定认证类型,Basic 代表使用 HTTP 基本认证。这是一种内置于 HTTP 协议中的认证方式浏览器会弹出一个登录框让你输入用户名和密码Require valid-user 允许AuthUserFile里所有用户登录htpasswd -c /etc/httpd/conf/htpasswd admin第一次创建需要-c后面不需要了加上会覆盖原/htpasswd 文件Apache 虚拟主机vim /etc/httpd/conf.d/vhost.conf域名文件仓库地址3.日志4.require all granted 可以改成用户加密5.systemctl restart httpd 重启使配置生效6.客户端解析删boot后的系统恢复grub rescue固定IP地址LVS负载均衡简介LVS工作模式DR、NAT、FULLNAT、隧道DR模式:LVS (192.168.1.100) 和 RS1/RS2 (192.168.1.10/11) 位于 同一个 IP 子网 (192.168.1.0/24)。它们之间的通信通过 交换机 的 二层 MAC 地址转发 完成不需要经过路由器跨网段通信不行 LVS (192.168.1.100) 和 RS1/RS2 (192.168.1.10/11) 位于 同一个 IP 子网 (192.168.1.0/24)。它们之间的通信通过 交换机 的 二层 MAC 地址转发 完成不需要经过路由器。单向流量路径请求路径 (蓝色箭头)客户端 - LVS (修改MAC) - 交换机 - RS。请求经过调度器。响应路径 (橙色箭头)RS - 交换机 - 互联网网关 - 客户端。响应不经过调度器直接返回。关键转换点修改MACLVS 将请求包的目标 MAC 地址从自己的 MAC 改为选中的 RS 的 MACIP 地址和端口完全不变。直接响应RS 处理请求后直接将响应包发送给客户端。响应包的源 IP 是 VIP (203.0.113.10)源 MAC 是 RS 自己的 MAC。性能优势从图例中可以明显看出响应流量不经过 LVS 调度器这是 DR 模式性能远高于 NAT 模式的根本原因。关键配置RS 配置 VIP所有 RS 都需要在环回接口 (lo:0) 上配置 VIP (203.0.113.10)用来接收和响应请求。抑制 ARPRS 必须设置 arp_ignore1 和 arp_announce2防止自己的 VIP 响应 ARP 广播导致网络混乱。网关RS 的网关指向出口路由器如 192.168.1.1用于发送响应包而不是指向 LVS。NAT模式跨网段通信LVS (192.168.1.0/24) 和 RS1/RS2 (192.168.2.0/24 和 10.0.0.0/24) 位于不同的 IP 子网。它们之间的通信通过 路由器 的 三层路由功能 完成。双向流量路径请求路径 (蓝色箭头)客户端 - LVS (DNAT) - 路由器 - RS。响应路径 (橙色箭头)RS - 网关 (路由器) - LVS (SNAT) - 客户端。关键地址转换点DNATLVS 将请求包的目标地址从 VIP (203.0.113.10) 改为 RIP (192.168.2.10)。SNATLVS 将响应包的源地址从 RIP (192.168.2.10) 改回 VIP (203.0.113.10)。性能瓶颈从图例中可以看到所有流量请求和响应都必须经过 LVS 调度器这正是 NAT 模式的主要性能瓶颈。网关配置RS 的默认网关必须指向路由器 (192.168.2.1)这样才能确保响应包通过路由器回到 LVS而不是直接尝试访问互联网。DRip a a 192.168.80.80/24 dev ens33 在ens33接口添加VIPipvsada -A -t 192.168.80.80:80 -s rr 在LVS添加虚拟服务-A添加虚拟服务 -t TVP协议 -u UDP协议 -f 防火墙标记用于复合协议向虚拟服务添加真实服务器RSipvsadm -a -t 192.160.80.80:80 -r 192.168.80.139:80 -gipvsadm -a -t 192.160.80.80:80 -r 192.168.80.140:80 -g-a 添加真实服务器-gDR 模式Direct Routing直接路由性能最优-mNAT 模式Network Address Translation网络地址转换-iTUN 模式IP TunnelingIP 隧道跨网段场景pacemaker高可用核心作用是通过监控集群节点和服务状态实现 “故障自动检测与切换”确保业务服务持续运行即服务不中断。244-2561.主机配置免密ssh-keygenssh-cope-id server7 两主机要相互解析2.定时同步开启systemctl status chronyd 查看服务状态makestep:强制 chronyd 服务立即将系统时间与 NTP 服务器进行“硬同步”3.安装集群软件启动服务yum install -y pacemaker pcs psmisc policycoreutils-pythonssh server7 yum install -y pacemaker pcs psmisc policycoreutils-python4.用户认证echo redhat | passwd --stdin hacluster 将 server1 上 hacluster 用户的密码修改为 redhat。集群节点之间需要互相认证以建立信任关系配置corosyncpcs cluster auth server4 server7建立集群 myclusterpcs cluster setup --name mycluster server4 server7启动集群pcs cluster start --allpcs cluster enable --all校验集群Online: [ server1 server4 ]5.创建集群资源pcs node standby server4待机 server7工作pcs node unstandby server4唤醒 server7工作pcs添加apache服务让VIP真正提供Web服务成为一个“活的”网站入口1.server4:pcs resource create WebSite systemd:httpd op monitor interval1min创建一个名为 WebSite 的资源通过 systemd 来管理 httpd 服务并设置监控检查的间隔为 1 分钟WebSite 创建成功 但状态stopped主机server4和server7未安装httpd两资源不在一台主机上pcs resource group add webgroup vip WebSite 创建资源组强制资源运行在同一节点如果不指定位置Pacemaker 会根据资源得分score随机选择一个节点来启动资源pcs node standbypcs node unstandby节点休息与唤醒删除集群资源资源不再属于该组但资源本身仍然存在且可能仍在运行2.配置iscsizi输出端资源在主机server5上添加硬盘安装并启用[rootserver5 ~]# yum install -y targetcli[rootserver2 ~]# systemctl enable --now targettargetcli/ /backstores/block create my_disk /dev/sdb/ /iscsi create iqn.2026-07.com.example:storage1/ /iscsi/iqn.2026-07.com.example:storage1/tpg1/luns create /backstores/block/my_disk/ /iscsi/iqn.2026-07.com.example:storage1/tpg1/acls create iqn.2026-07.com.example:client/ exit3.配置iscsi输入端资源server4:yum install -y iscsi-initiator-utils.x86_64vim /etc/iscsi/initiatorname.iscsi把配置文件改成 InitiatorNameiqn.2026-07.com.example:clientiscsiadm -m discovery -t st -p192.168.80.139输出端地址iscsiadm -m node -l硬盘分区格式化fdisk /dev/sdbmkfs.xfs /dev/sdb1 在 /dev/sdb1 分区上创建 XFS 文件系统安装数据库软件yum install -y mariadb-servermount /dev/sdb1 /var/lib/mysql/ 挂载存储chown mysql.mysql /var/lib/mysql/ 修改属性systemctl start mariadb.service 启动数据库服务systemctl stop mariadb.serviceumount /var/lib/mysql 卸载存储server7:只需导入存储无需格式化yum install -y iscsi-initiator-utils.x86_64vim /etc/iscsi/initiatorname.iscsi把配置文件改成 InitiatorNameiqn.2026-07.com.example:clientiscsiadm -m discovery -t st -p192.168.80.139输出端地址iscsiadm -m node -lyum install -y mariadb-server 安装数据库软件已经创建但尚未启动任何服务的集群启动这个资源组pcs resource group start dbgroupLAMP架构ngnix平滑升级wget https://nginx.org/download/nginx-1.30.0.tar.gztar zaf nginx-1.30.0.tar.gzvim auto/cc/gcc关掉调试模式yum install -y gcc pcre-devel openssl-devel./configure --with-http_stub_status_module --with-http_ssl_module添加配置监控加密模块make make install 码源编译成可执行程序ln -s /usr/local/nginx/sbin/nginx /usr/sbin/ 使配置生效 也可以写入环境配置bash_profile[rootserver4 nginx-1.30.0]# ls -l /usr/sbin/nginxlrwxrwxrwx 1 root root 27 Jul 23 19:01 /usr/sbin/nginx - /usr/local/nginx/sbin/nginx软连接建立起成功nginx 命令行启动 也可配置文件启动nginx server4 -Iwget https://nginx.org/download/nginx-1.30.4.tar.gztar zaf nginx-1.30.4.tar.gzvim atuo/cc/gcc关掉调试模式yum install -y gcc pcre-devel openssl-devel./configure --with-http_stub_status_module --with-http_ssl_module不做install安装 会覆盖cd /usr/local/sbin/nginx备份原1.30.0文件拷贝新程序kill -USR2 34879 新进程载入nginx此时两进程都能启用kill -WINCH 34879 关闭老进程work 可回退回退cp -f nginx.old nginx 备份重启kill -HUP 34879kill -WINCH 34932kill -QUIT 34932
返回列表