linux学习lesson63

E-Learning应是学习系统而非教育系统:基于xAPI的行为驱动重构 学习系统本质是围绕真实学习行为构建的技术范式,其核心在于捕捉、理解并响应学习者的认知过程,而非简单复刻传统教育流程。它依托xAPI等行为日志标准,将点击、暂停、回放、拖拽等微观交互转化为可计算的认知信号;通过行为聚类、时序分析与体验网络建模,实现从‘完成课程’到‘掌握能力’的评估跃迁;最终在企业培训、职业教育、开发者学习等场景中,支撑动态难度调节、情境化推送、技能缺口预警等工程化教学干预。本文聚焦学习系统落地中的数据模型重构、评估逻辑升级与内容架构演进,详解如何用行为数据驱动真正以学习者为中心的智能平台建设 阅读详情



1.集群介绍

  • 根据功能划分为两大类:高可用和负载均衡
  • 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务的机器宕机,冗余将接替继续提供服务
  • 实现高可用的开源软件有:heartbeat、keepalived
  • 负载均衡集群,需要有一台服务器作为分发器,它负责把用户的请求分发给后端的服务器处理,在这个集群里,除了分发器外,就是给用户提供服务的服务器了,这些服务器数量至少为2
  • 实现负载均衡的开源软件有LVS、keepalived、haproxy、nginx,商业的有F5、Netscaler

keepalived介绍
在这里我们使用keepalived来实现高可用集群,因为heartbeat在centos6上有一些问题,影响实验效果
keepalived通过VRRP(Virtual Router Redundancy Protocl)来实现高可用。
在这个协议里会将多台功能相同的路由器组成一个小组,这个小组里会有1个master角色和N(N>=1)个backup角色
master会通过组播的形式向各个backup发送VRRP协议的数据包,当backup收不到master发来的VRRP数据包时,就会认为master宕机了。此时就需要根据各个backup的优先级来决定谁成为新的mater
Keepalived要有三个模块,分别是core、check和vrrp。其中core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析,check模块负责健康检查,vrrp模块是来实现VRRP协议的


2keepalived配置高可用集群

准备两台机器130和132,130作为master,132作为backup
两台机器都执行

yum install -y keepalived

两台机器都安装nginx,其中130上已经编译安装过nginx,132上需要yum安装nginx: (或者两台机器都使用yum安装nginx)

yum install -y nginx

设定vip为100
编辑130上keepalived配置文件,内容从https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D21Z/master_keepalived.conf获取

[root@linux01 ~]# vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
alan@alanlinux.com
}
notification_email_from root@alanlinux.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}

vrrp_script chk_nginx {
script "/usr/local/sbin/check_ng.sh"
interval 3
}

vrrp_instance VI_1 {
state MASTER
interface ens33
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass aminglinux>com
}
virtual_ipaddress {
192.168.139.100
}

track_script {
chk_nginx
}

}

130编辑监控脚本,内容从https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D21Z/master_check_ng.sh获取

[root@linux01 ~]# vim /usr/local/sbin/check_ng.sh
#!/bin/bash
#时间变量,用于记录日志
d=`date --date today +%Y%m%d_%H:%M:%S`
#计算nginx进程数量
n=`ps -C nginx --no-heading|wc -l`
#如果进程为0,则启动nginx,并且再次检测nginx进程数量,
#如果还为0,说明nginx无法启动,此时需要关闭keepalived
if [ $n -eq "0" ]; then
/etc/init.d/nginx start
n2=`ps -C nginx --no-heading|wc -l`
if [ $n2 -eq "0" ]; then
echo "$d nginx down,keepalived will stop" >> /var/log/check_ng.log
systemctl stop keepalived //避免主从都启动,出现脑裂,争抢资源
fi
fi

给脚本755权限

[root@linux01 ~]# chmod 755 /usr/local/sbin/check_ng.sh

130启动服务

[root@linux01 ~]# systemctl start keepalived

(启动后,查看nginx和keepalived的进程有没启动,若没有,检查conf和脚本,设置的脚本路径是否正确)

从机器:
132上编辑配置文件,内容从https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D21Z/backup_keepalived.conf获取

[root@linux02 ~]# vim /etc/keepalived/keepalived.conf
global_defs {
notification_email {
aming@aminglinux.com
}
notification_email_from root@aminglinux.com
smtp_server 127.0.0.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}

vrrp_script chk_nginx {
script "/usr/local/sbin/check_ng.sh"
interval 3
}

vrrp_instance VI_1 {
state BACKUP
interface ens33
virtual_router_id 51
priority 90
advert_int 1
authentication {
auth_type PASS
auth_pass aminglinux>com
}
virtual_ipaddress {
192.168.139.100
}

track_script {
chk_nginx
}

}

132上编辑监控脚本,内容从https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D21Z/backup_check_ng.sh获取

[root@linux02 ~]# vim /usr/local/sbin/check_ng.sh
#时间变量,用于记录日志
d=`date --date today +%Y%m%d_%H:%M:%S`
#计算nginx进程数量
n=`ps -C nginx --no-heading|wc -l`
#如果进程为0,则启动nginx,并且再次检测nginx进程数量,
#如果还为0,说明nginx无法启动,此时需要关闭keepalived
if [ $n -eq "0" ]; then
systemctl start nginx
n2=`ps -C nginx --no-heading|wc -l`
if [ $n2 -eq "0" ]; then
echo "$d nginx down,keepalived will stop" >> /var/log/check_ng.log
systemctl stop keepalived
fi
fi

给脚本755权限

[root@linux02 ~]# chmod 755 /usr/local/sbin/check_ng.sh

132上也启动服务

[root@linux02 ~]# systemctl start keepalived

测试高可用
先确定好两台机器上nginx差异,比如可以通过curl ip -I 来查看nginx版本
测试1:关闭master上的nginx服务
测试2:在master上增加iptabls规则

[root@linux01 ~]# iptables -I OUTPUT -p vrrp -j DROP

测试3:关闭master上的keepalived服务
测试4:启动master上的keepalived服务


扩展

heartbeat和keepalived比较http://blog.youkuaiyun.com/yunhua_lee/article/details/9788433
DRBD工作原理和配置 http://502245466.blog.51cto.com/7559397/1298945
mysql+keepalived http://lizhenliang.blog.51cto.com/7876557/1362313

AI工程实践指南:从Newsletter到可落地的Agent与视觉模型 人工智能正从概念验证迈向规模化工程落地,其核心已不再是单一模型性能,而是AI Agent的任务编排能力、视觉基础模型(如Segment Anything)的提示驱动分割能力,以及RAG、微调、安全围栏等系统级工程实践。理解这些技术的原理,关键在于把握开源协议约束、最小可行闭环验证、真实延迟与错误率等工程水位指标。它们共同构成AI从Demo走向生产系统的三大支柱:可复用、可监控、可演进。本文基于一线从业者对主流AI Newsletter的深度拆解,聚焦Auto-GPT类Agent架构瓶颈、SAM在医疗与电商场 阅读详情

相关推荐

AI编程工程化实战:集成、测试与CI/CD深度压力测试

AI编程已从代码补全迈向真实工程落地,其核心挑战不在生成能力,而在能否融入软件开发全生命周期——尤其是集成(Integrations)、测试(Testing)和CI/CD流水线。这些环节构成系统可靠性的基石:集成考验协议理解与环境适配,测试验证逻辑完备性与场景鲁棒性,CI/CD则作为自动化‘宪法’强制执行质量门禁。Devin在FastAPI网关项目中暴露出典型断层:能写出高覆盖率单元测试,却因容器时间漂移导致限流失效;可调用Auth0 API,却忽略CORS的Origin头规则。这印证了关键认知——AI的价

wgyyh 458

Lesson 9. bitehist.py

下面这个例子和之前的例子相比少了执行了attach_kprobe。具体看看是怎么实现的呢? #!/usr/bin/python # # bitehist.py Block I/O size histogram. # For Linux, uses BCC, eBPF. Embedded C. # # Written as a basic example of using a histogra

jason的笔记 539

【信息科学与工程学】计算机科学与技术——第七十七篇 系统架构设计02

编号类型模型配方企业资本运作的方法/规则/条件/依据及所有的步骤(​风险处理/异常处理/危机应对关联知识法律法规和裁决依据​​由发起人(通常是知名投资人、投行或产业资本)先设立一个只有现金、无实际业务的特殊目的收购公司(SPAC),通过IPO募集资金并在交易所上市。然后在规定时间内(通常24个月)寻找一家非上市公司进行合并(De-SPAC),使目标公司迅速实现上市,规避传统IPO的复杂流程和不确定性。1.:在开曼或特拉华注册空壳公司,注入少量种子资金。2.

weixin_49199313的博客 311

Lesson_6 作业_2 ---- 银行账户模拟

一、作业描述   Account.java文件中定义了一个银行帐户类Account,其中包括了帐户名属性accountName、存款余额属性amount、存款方法deposit(doublemoney)。阅读并理解这个类,并为其增加一个“取款”方法withdraw():当存款余额大于取款金额时,执行取款修改余额;当存款余额小于取款金额时,不执行取款;以返回值0表示取款成功,返回值1表示取款...

weixin_30737363的博客 135

CODESYS EtherCAT通讯断了怎么办?手把手教你用ST语言写状态监测程序(附完整代码)

本文详细解析了CODESYS平台下EtherCAT通讯中断的故障排查与恢复方法,通过ST语言编写状态监测程序实现链路监测、故障隔离和伺服恢复。文章包含完整代码示例,帮助工程师快速诊断EtherCAT网络问题,提升工业自动化设备的运行稳定性。

weixin_30919571的博客 209

Win11只读模式无法关闭的终极解决方案

通过以上方法,我们应该能够解决Windows 11中文件夹无法取消只读状态的问题。如果问题仍然存在,请确保你的账户具有足够的权限来修改文件夹属性,并考虑是否有其他安全软件或策略阻止了权限更改。在操作过程中,请务必小心谨慎,避免误操作导致数据丢失或系统损坏。希望本文能够帮助到大家!

mmoo_python的博客 1万+

JP4-1-1-MyLesson项目简介

MyLesson项目简介,包括项目介绍,权限介绍,环境介绍,技术栈介绍,环境初始化操作,数据库表的创建等。

周航宇的博客 2957

用AI免费制作30分钟电影:完整工作流与实操解析

AI视频生成技术正大幅降低影视创作门槛,但真正制作一部完整电影并非一键生成,而是涉及剧本、分镜、画面、配音、剪辑的复杂流水线。理解其基本原理,是将文本转化为连续视觉叙事的关键。对于创作者而言,掌握角色一致性控制、素材批量管理、免费额度合理分配等技术价值,能有效避免生成结果崩坏与资源浪费。该能力可广泛应用于短视频创作、独立电影预演、教学演示等场景。本文以30分钟AI电影制作为例,拆解从工具选择到成片输出的全流程,重点分析免费方案下的时间与积分成本,以及最容易翻车的环节,并给出基于实践验证的排查与优化策略。

weixin_29056865的博客 326

南印度拉格识别:为Raga定制神经网络特征与LSTM解码器

拉格(Raga)是南印度古典音乐的核心语法体系,其辨识本质是理解音阶结构、音程运动与装饰音(Gamaka)的动态组合,而非简单音频分类。传统MFCC等通用声学特征因忽略微分音(Sruti)、滑音轨迹与节奏呼吸感,在Raga识别中准确率常低于65%。本文聚焦‘音乐学驱动的AI建模’范式,详解如何基于Raga Lakshana理论构建三层神经编码(音阶层、运动层、装饰层),设计专用于捕捉Jāru/Sphuritam等Gamaka时序特性的Gamaka Motion Vector(GMV)特征,并选用可解释性强、

weixin_34175509的博客 363

【PDN仿真笔记9-使用Sigrity PowerDC进行IR Drop仿真的方法】

使用Sigrity PowerDC进行IR Drop进行仿真的方法

qq_42682826的博客 8004

FastGPT智能体开发:FastGPT OpenAPI 知识库接口

FastGPT OpenAPI 知识库接口

王国平的博客 323

Text-to-X多模态系统实战:从文本指令到PPT/视频/试题一键生成

Text-to-X 是指将自然语言文本作为输入,驱动跨模态内容(如图像、语音、视频、结构化数据)自动化生成的技术范式,其核心在于语义解析与模态协同。它依托指令理解、知识桥接与专用引擎调度,突破传统大模型端到端幻觉瓶颈,实现高可控、低延迟、可审计的工程化输出。在教育、产品、运营等强流程场景中,Text-to-X 已成为提升内容生产效率的关键基础设施——尤其适用于教案转H5课件、PRD转Figma原型、推文转短视频脚本等高频需求。本文聚焦中文教学场景下的 Text-to-X 落地实践,详解指令解析层设计、Phi

weixin_30423977的博客 354

vue:npm安装pnpm报错,npm ERR! code ENOTFOUND,npm ERR! syscall getaddrinfo,npm ERR! errno ENOTFOUND详细排查解决!

vue2 vue3,npm install -g pnpm 安装出现错误,安装pnpm及解决安装失败问题,解决 npm无法安装pnpm问题,npm 安装 pnpm 时 报错 npm ERR! code ENOTFOUND,pnpm无法安装报错,vue npm install -g pnpm安装报错,request to http://registry.cnpmjs.org/pnpm failed, reason: getaddrinfo ENOTFOUND registry.cnpmjs.org,安装pnp

✅ 精选推荐文章 3608

WebGoat2026年版本(全10个模块另附其他模块)通关教程

本文简要介绍了WebGoat安全测试平台的部署和使用方法。主要内容包括:1)环境配置(Java23+Maven3.9.11)和启动步骤;2)HTTP基础任务,通过BurpSuite抓包分析POST请求;3)HTTP代理任务,要求修改请求方法和添加特定头信息;4)开发者工具任务,使用控制台获取随机数和网络请求中的数值;5)CIA三要素测验题。文章提供了具体操作截图和Python请求示例,帮助读者完成各项安全测试任务,适合作为Web应用安全测试的实操参考手册。

csdnkazusa的博客 1361

Agentic AI应用架构师如何提升AI应用的灵活性

可扩展性(Scalability):快速添加新功能或扩展任务范围(如Agent从“客服”扩展到“供应链管理”);可修改性(Modifiability):调整Agent的决策逻辑或动作策略,无需重构整个系统;鲁棒性(Robustness):在环境异常或数据噪声下保持性能稳定;自适应(Self-Adaptation):自主学习新场景,无需人工干预。状态空间(S):Agent能感知的所有内部/外部状态(如用户需求、环境数据);动作空间(A):Agent能执行的所有动作(如调用工具、发送消息);

项目管理的博客 582

9.1 机器人动力学建模

目录9.1 机器人动力学建模一、机器人动力学的基本概念1. 什么是机器人动力学?2. 动力学方程二、机器人动力学建模方法1. 拉格朗日方法2. 牛顿-欧拉方法三、Simulink 中的机器人动力学建模1. 使用 Simscape Multibody 建模示例:构建一个两连杆机械臂的动力学模型。步骤:2. 使用 Robotics System Toolbox 建模示例:构建一个六自由度工业机器人的动力学模型。步骤:四、示例:两连杆机械臂的动力学建模目标:步骤:五、结果分析1. 动态响应2. 参数敏感性六、总结

xiaoheshang_123的博客 626

linux学习lesson15

目录 1 磁盘格式化 2 磁盘挂载 3 手动增加swap空间 1 磁盘格式化 磁盘格式化命令:mke2fs、mkfs.ext2、mkfs.ext3、mkfs.ext4 和mkfs.xfs 现在以mke2fs为例:常用的参数 -b:表示分区时设定每个数据区块占用的空间大小。目前,每个数据块支持1024B、2048B以及4096B。 -i:表示设定inode的大小。 -N:表示...

InfiniteIdea_Go的博客 2716

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

linux学习lesson53

文章目录1 php-fpm的pool2 php-fpm慢执行日志3 open_basedir4 php-fpm进程管理 1 php-fpm的pool 支持多个pool的运行网站:隔离站点资源和独立配置 增加一个pool: [root@linux01 ~]# vim /usr/local/php/etc/php-fpm.conf [global] pid = /usr/local/php-fpm/...

InfiniteIdea_Go的博客 761

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

linux学习lesson38

目录 1 rsync通过服务同步 2 linux系统日志 3 screen工具 1 rsync通过服务同步 要编辑配置文件/etc/rsyncd.conf 启动服务rsync --daemon [root@linux01 ~]# rsync --daemon 启动后可以查看一下日志,并查看端口是否启动 [root@linux01 ~]# vim /etc/rsyncd.con...

InfiniteIdea_Go的博客 737

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

linux学习lesson36

目录 1 linux任务计划cron 2 chkconfig工具 3 systemd管理服务 4 unit介绍 1 linux任务计划cron Linux任务计划功能的操作都是通过crontab命令来完成的,常用的参数有: -u:表示指定某个用户,不加-u选项则为当前用户 -e:表示制定计划任务 -l:表示列出计划任务 -r:表示删除计划任务 编写任务计划的格式 [ro...

InfiniteIdea_Go的博客 729

linux学习lesson33

目录 1 linux网络相关 2 firewalld和netfilter 3 netfilter5表5链介绍 4 iptables语法 1 linux网络相关 ifconfig查看网卡ip(yum install net-tools) [root@worker1 ~]# yum install -y net-tools ip addr查看网卡ip [root@worker1 ~]...

InfiniteIdea_Go的博客 704

linux学习lesson35

目录 1 iptables规则备份和恢复 2 firewalld的9个zone 3 firewalld关于zone的操作 4 firewalld源于service的操作 1 iptables规则备份和恢复 保存和备份iptables规则 service iptables save //会把规则保存到/etc/sysconfig/iptables [root@worker1 ~]# ...

InfiniteIdea_Go的博客 593

linux学习lesson52

文章目录1 nginx负载均衡2 ssl原理3 生产ssl密钥对(yum install -y openssl)4 nginx配置ssl 1 nginx负载均衡 编辑配置文件: [root@linux01 ~]# vim /usr/local/nginx/conf/vhost/load.conf // 写入如下内容 upstream qq_com { ip_hash; server 111.16...

InfiniteIdea_Go的博客 544

linux学习lesson14

目录 1 df命令 2 du命令 3 磁盘分区 1 df命令 命令df(disk filesystem的简写)用于查看已挂载磁盘的总容量、使用容量、剩余容量等,可以不加任何参数,默认以KB为单位显 -i:表示查看inodes的使用状况,如已使用100%,即使磁盘空间有富余,也会提示磁盘空间已满 -h:表示使用合适的单位显示,例如GB -k、-m:分别表示以KB和MB为单位显示 ...

InfiniteIdea_Go的博客 536

linux学习lesson13

目录 1 su命令 2 sudo命令 3 限制root远程登录 1 su命令 命令su的格式为su [-] username,-表示把该用户的环境变量也切换 [root@worker1 ~]# su - user3 Last login: Wed Sep 19 06:45:53 CST 2018 on pts/1 [user3@worker1 ~]$ whoami user3 ...

InfiniteIdea_Go的博客 516

Linux学习lesson1

目录 1 学习之初 2 约定 3 认识linux 4 安装虚拟机 5 安装centos7 1 学习之初 预习和复习的重要性 当日事当日毕 记笔记(老王学习技巧 论坛) 利用好资源(vip群,论坛) 励志前辈经历 http://ask.apelearn.com/question/6597    2 约定 系统centos7.3系统 虚拟软件VMware workstat...

InfiniteIdea_Go的博客 503
上一篇: linux学习lesson62
下一篇: linux学习lesson64
InfiniteIdea_Go
博客等级 码龄8年 3粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值