- 博客(17)
- 收藏
- 关注
原创 ansible脚本自动化部署K8s集群
Ansible 的“启动参数配置文件”,告诉ansible使用的清单文件地址,不校验 SSH 指纹(也可以不写,但要生成公钥配置SSH免密登录,防止playbook运行时卡住)[defaults]
2026-03-30 22:04:33
467
原创 手工部署K8s集群
如果初始化时做过的可以删除对应的play,此处有弊端,没有做到ansible的幂等性,有待提升(思路:使用条件任务,判断是否完成过这一操作,完成过就不执行play,没有完成过才执行play,实现幂等性)决定在哪些主机按什么顺序执行哪些role,简单来说分成三大模块:所有节点配置基础环境,master节点进行初始化控制平面,worker节点加入集群。:开启 IPv4 报文转发,让节点能转发 Pod 之间、Pod 与外部之间的网络流量,这是节点作为 “路由器” 的核心前提。内核模块 + sysctl。
2026-03-30 22:02:14
415
原创 启动hadoop时报错的解决笔记
①permission denied报错:说明在读取或执行hadoop-env.sh时当前用户权限不足,可能因为文件权限不足或包含该文件的目录权限不足。②解决方案:将整个 Hadoop 目录的所有权归还给hadoop用户和用户组,确保等脚本文件有执行权限。# 递归修改Hadoop安装目录的所有者和所属组# 给所有.sh脚本添加执行权限③修复权限后,再次执行格式化命令。(此处有陷阱,要避免多次执行格式化命令!
2026-02-25 11:07:33
1001
原创 Ansible习题笔记
remote_user: root指定以root用户身份连接并登录远程主机,执行后续的自动化任务。仅对当前playbook生效。①全局配置:修改ansible主配置文件/etc/ansible/ansible.cfg,会作为所有 Playbook 的默认远程用户。
2026-02-23 11:27:03
1028
原创 VMware Workstation与本地Windows的资源共享
①首先打开虚拟机设置,在选项栏找到共享文件夹。勾选在下次关机或挂起前一直启用,最好不要总是启用,以免导致不必要的安全问题。④在虚拟机命令行或图形化界面可以看到"/mnt/hgfs/"下成功看到包含所需文件夹的Windows目录。法一:利用VMware Tools直接拷贝到桌面,但现版本好像不支持安装,或者觉得太繁琐,可以利用法二。②点击添加文件夹,选择包含待上传文件的路径。法二:在虚拟机设置中打开共享文件夹,使虚拟机访问Windows目录。注意:虚拟机重启后共享目录会失效,需重新设置。
2026-02-22 13:12:50
514
原创 解决简单的pod异常状态
argocd命名空间包含两个异常状态的pod且长时间不更新状态,一个状态是PodInitializing,另一个是Unknown。
2026-02-21 11:20:13
434
原创 使用nfs共享存储解决跨节点调用大模型
echo "/mnt/ollama-nfs 节点2IP/24(rw,sync,no_root_squash) 节点3IP/24(rw,sync,no_root_squash)" >> /etc/exports。如果创建pv然后修改 Deployment 挂载 PVC,会发现重启后在目标节点ollama list是找不到大模型的,查看目录结构发现,manifests文件是空的,说明持久化是失败的。HostPath 的本质是将节点本地的一个目录挂载到 Pod 中,数据只存在于该节点的磁盘上。
2026-02-16 14:11:16
393
原创 k8s集群内的ollama pod持久化调用本地大模型
法一:通过共享存储(nfc)让本地和集群 Pod 共用一份模型文件,集群 Pod 挂载 NFS 共享目录调用本地大模型。法二:提前在本地windows部署大模型,上传到集群节点,再拷贝到pod中。最后为 Pod 配置持久化存储,这样即使重启虚拟机模型也不会丢失,能够实现持久化调用本地大模型。弊端:大文件传输kubectl cp的效率太低,同一大模型占用本地和集群两处存储空间。本文介绍方法二。
2026-02-16 00:28:28
879
原创 shell高级编程练习题实现系统日志错误分析
基础代码:这里用了awk匹配文件第七列(测试文件里第七列是错误种类),不太安全,文件必须严格按照这种排列方式才能成功统计,更好的做法是注释掉awk部分,在-E后添加o选项,表示只输出匹配到的部分,更安全。Ⅲ我开始细看代码,是vim编辑器中的高亮显示提醒了我,这里的sore都是黄色,uniq却没有变色,而且uniq结尾的反斜杠是白色的,不同于其他行黄色的反斜杠。代码的uniq这一行报错了,提示我找不到命令,问了ai可能出现的问题后,我开始验证几种可能的情况。依旧报一样的错,也不是这个问题。
2026-01-26 22:56:22
700
原创 shell高级编程练习题实现90天未登录用户检测
①grep -q静默匹配(只返回结果,不输出),判断登录记录中是否包含“Never logged in”;:尝试将清洗后的时间字符串转换为时间戳;若转换成功:计算时间差(当前时间戳 - 登录时间戳),再转换为天数,与 90 天阈值比较,输出「超期」或「正常」;若转换失败(如时间格式为非标准格式):输出「时间格式错误」,避免脚本中断。
2026-01-25 23:55:06
509
原创 描述正则表达式
效果:[aou] 是字符集合,只匹配集合内的其中一个字符,不会匹配其他字符(比如 cart 中的 "a" 虽然在集合里,但 cart 是 c+a+r+t,中间是两个字符,所以不匹配)效果:输出所有包含 cat 这个字符串的行,比如 cat, category, concatenate 等,只要行内任意位置包含 "cat" 就会被匹配。效果:.\{2\} 表示必须匹配恰好 2 个任意字符,多一个少一个都不行(比如 cat 中间只有 1 个字符,就不会被匹配)。举例:grep cat /usr/words。
2026-01-21 23:52:18
616
原创 【RH134知识点问答题】第1章 提高命令行运行效率
你可以通过 echo $PATH 查看当前 PATH 的内容,也可以通过 export PATH=$PATH:/new/path 来添加新路径。在终端输出字符串或变量的值,例如 echo "Hello World" 会打印文本,echo $PATH 会输出环境变量内容。当你在命令行输入一个命令(如 ls、bash)时,系统会按顺序在 PATH 包含的目录中查找对应的可执行文件。匹配整行内容只有cat的行(精确匹配整个字符串为 "cat"。(也叫 hashbang),是脚本文件的第一行。
2026-01-19 23:03:09
936
原创 Linux文件系统权限
ls -l 文件名 看文件所属组和所有者以及权限,下图app2.log文件属于database1组。id 用户名 看用户的主组和附属组,下图1008后是主组,1006是附属组。ll | grep "组名 " 看组内文件。groups 用户名 看某个用户属于哪些组。
2026-01-19 00:34:25
36
原创 输出重定向验证
③重定向操作是从右向左解析的。所以即使test1a.txt不存在,也会先帮你创建一个名为test1a.txt的空文件。所以前半部分没有错误输出,产生标准输出写入test1a.txt;后半部分产生的标准输出重定向到错误输出写入txt文件。如果文件不存在 → 立即创建空文件(这就是 test1a.txt 出现的时刻);:第一个命令执行成功,触发第二个命令。如果文件已存在 → 清空文件原有内容。
2026-01-17 23:10:35
31
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅