- 博客(54)
- 收藏
- 关注
原创 服务器为互联网发送数据出现丢包情况
然后排查看服务器的带宽是否被某个服务沾满导致丢包情况,使用iftop -B命令,发现 一个端口和本地服务一直进行大量数据交互,因为该主机的带宽为5M,服务器和本地的交互也是5M,因此导致服务器直接连接互联网发现丢包;当前服务器是一个云主机,规格是4-8,可以连接互联网;发现当前服务器ping 互联网ip出现丢包问题,例如直接ping baidu 就出现丢包,延迟大概是50ms;2、减少主机和本地的大量数据交换,尽量不要占满带宽;例如:cpu 、内存、负载都正常;
2024-03-25 14:34:38
485
2
原创 验证K8S集群pod之间传输速度过慢,导致pod之间业务无法正常交互
发现1K的文件可以相互拷贝,大于1K的都不能拷贝,最终原因是K8S集群所在的虚拟化平台的虚拟机的网络模式使用的是vxlan,据我分析,应该是平台有相关策略导致的,并不是vxlan不支持K8S集群。通过启动两个busybox容器,之间进行scp传输文件,验证pod之间tcp连接是否正常。K8S部署完成后,但是pod之间无法进行交互访问,导致pod异常。拷贝文件至busybox1。进入第一个busybox1。进入第二个busybox1。运行第一个busybox。
2024-03-15 17:35:09
915
2
原创 由于gvfs-udisks2-volume-monitor进程占用内存过大
经查看,发现gvfs-udisks2-volume-monitor这个为cenots 图形界面中控制u盘或者存储自动发现的进程【命令行界面是不会启动该进程的】,该进程发生了内存泄漏,导致该服务器内存使用率一直过高。
2024-01-06 16:24:10
2994
原创 k8s中api-server报错,watch chan error: etcdserver: mvcc: required revision has been compacted
watch chan error: etcdserver: mvcc: required revision has been compacted
2024-01-02 11:22:41
1419
原创 k8s修改/etc/resolve.conf导致容器域名解析失败
CoreDNS 是 Kubernetes 集群中的默认 DNS 服务器,负责处理集群内的 DNS 解析请求。当修改了 /etc/resolv.conf 后,CoreDNS 可能无法立即意识到更改,从而导致 DNS 解析出现问题;因为用户原因,修改了k8s主机中/etc/resolve.conf的dns地址,产生的现象就是主机可以解析域名,但是pod不能解析域名;:重启dns相关服务即可。
2023-12-25 11:44:21
1390
原创 查看为啥开启了tcp6,但是没有开启tcp,有些人就说是只开启了ipv6,没有ipv4,但是实际上ipv6支持ipv4
【代码】查看为啥开启了tcp6,但是没有开启tcp,有些人就说是只开启了ipv6,没有ipv4,但是实际上ipv6支持ipv4。
2023-07-19 15:25:08
4940
原创 k8s集群中etcd的备份与恢复
master01执行{etcd01节点}work01执行{etcd02节点}work02执行{etcd03节点}10.查看k8s集群状态。
2023-06-21 23:22:27
627
原创 K8S中serviceaccount的理解
一般情况下pod等资源会自动创建对应权限的serviceaccout,使其拥有和apiserver通信的权限,这个权限是最低权限,如果一个Pod没有指定ServiceAccount,那么将自动关联一个默认的ServiceAccount。
2023-06-21 21:54:07
394
原创 K8S中rbac(Role-Based Access Control)和SA (Service Account)的理解
在 Kubernetes 中,Role-Based Access Control (RBAC) 是一种基于角色(role)的访问控制机制,用于限制用户、Service Account 或组等实体对集群里资源(例如 Pod、Deployment 和 ConfigMap 等)的操作和访问权限。Role:定义了一组具有相似权限的资源,权限定义确定了能够执行哪些操作(例如 create、delete、get、list 和 watch 等)
2023-06-06 23:41:58
705
原创 K8S的的就绪探针readinessProbe 和存活探针livenessProbe
readinessProbe: 当Pod需要开始接收流量时,“kubelet” 将定期检查 readinessProbe,如果该probe处于成功状态,则容器视为就绪,并将 Pod 标记为已就绪状态。换句话说,readinessProbe 确认 Pod 是否已准备好处理传入请求,并告诉 Service Proxy 可以将流量路由到此 Pod。livenessProbe:让 “kubelet” 检查容器是否仍在运行。
2023-05-15 11:37:40
599
原创 k8s集群指定pod运行节点,即node select
直接编辑yml文件,在space下添加nodeName: master01即可,这样该pods只会运行在master01上。
2023-05-15 11:11:00
365
原创 修改nfs服务的依赖服务rpcbind的111端口
RPCbind 是一个在 RPC 系统上运行的服务器程序,它允许客户端查询指定的 RPC 服务,并获取该服务使用的 TCP 或 UDP 端口号。当您在 NFS 服务器上启动 NFS 服务时,NFS 服务器会告诉 RPCbind 需要哪些服务,并将其绑定到相应的端口。当 NFS 客户端需要使用这些服务时,它会联系 RPCbind 并请求相关信息,以便能够通过正确的端口与 NFS 服务器通信。因此,简言之,RPCbind是一项基础服务,是NFS的前置依赖服务。
2023-05-15 10:39:27
4826
1
原创 docker添加防火墙策略
以上命令为禁止除了192.168.1.0/24网段的主机访问该主机的6000端口。6000端口为docker容器暴露的端口。
2023-05-15 10:24:03
787
1
原创 /etc/resolv.conf中关键字的作用
如果使用的是短名,则需要将其转换为完整的主机名,向DNS服务器查询该主机名对应的IP地址。这个意思是告诉DNS服务器,在查询不带域名后缀的主机名时,应该自动加上"example.com"后缀进行查询。**nameserver:**指定DNS服务器的IP地址,可以指定多个DNS服务器,每行只写一个IP地址。search是一个关键字,用于指定DNS向哪些域名服务器查询主机名的域名后缀。**domain:**设置本地主机所在的域名,一般为机构或公司的网址后缀名。:指定DNS向哪些域名服务器查询主机名的域名后缀。
2023-05-09 17:51:27
712
原创 二进制安装K8S集群后碰到的问题
kubelet bootstrap 引导出错导致kube-apiserve 和 kubelet 之前自动证书审批未完成,导致两者之间未建立连接。删除kubelet证书并重启kubelet 让 kubelet bootstrap 重新引导完成自动证书审批工作 ,问题解决。根据网上查询的,是由于systemd版本过旧导致的【因为安装的centos7.3】,因此需要升级一下systemd。查看证书请求:kubectl get csr。然后重启kubelet就可以了。然后重启kubelet。
2023-04-26 14:39:51
380
原创 使用iptables的DNAT实现端口转发
因为项目中需要使用K8S连接harbor环境,但是harbor又用F5做了高可用映射,端口为18080,但是K8S集群中的下载镜像地址都是80,因此想通过Dnat来实现端口转发,即把本机的80转到F5地址的18080。目的就是为了把192.168.1.100:80转发至192.168.2.100:18080上。harbor地址:192.168.3.100。K8S主机:192.168.1.100。F5地址:192.168.2.100。
2023-04-24 22:58:35
406
原创 使用iptabls策略来禁止主机被ping以及相关漏洞处理
因为安装环境的时候没有安装iptables-service服务,因此只用在现有的策略的基础上,添加。执行了以上命令,就是禁止其他主机来ping该主机。执行了以上命令是处理CVE-1999-0524。执行了以上命令是处理CVE-1999-0633。CVE-1999-0524漏洞处理。
2023-04-24 22:36:28
1051
原创 通过iptables来限制K8S的nodeport
外部主机访问master01:30090->NAT表PREROUTING->NAT表KUBE-SERVICES(因为不是CLUSTER_IP,因此不用判断,直接进入下一步)->NAT表KUBE-NODE-PORT->NAT表KUBE-MARK-MASQ->NAT表KUBE-SVC-UVFA6R2T7DODYNMU->DNAT把该主机的30090端口的访问转发至->10.233.10.67:443上。IP,即就是通过DNAT把该主机的30090端口的访问转发至->10.233.10.67:443上。
2023-03-24 17:13:00
2721
原创 linux的iptable和iptabes-services一些使用方法
分类----------功能 ----------------- 作用链---------------------------------参数。DNAT--------目标地址转换------进口PREROUTING-----------------to-destination。SNAT--------源地址转换---------出口POSTROUTING---------------to-source。4、防火墙的默认规则是对应链的所有的规则执行完以后才会执行的(最后执行的规则)。
2023-03-16 00:21:01
1223
原创 kubectl logs查看容器日志报错“ x509: certificate signed by unknown authority”
kubectl logs 无法查看日志
2023-02-02 15:07:20
2539
原创 k8s中容器存在nslookup解析失败,导致容器一直处于init状态
容器启动后一直处于init状态,半小时后也不能启动,nslookup时好时坏,k8s
2022-10-28 11:50:19
770
原创 python-连接oracle查询数据并且把数据保存至excel,然后发送至邮箱
环境准备:python:3.7需要库:cx_Oraclepandas库的下载地址:https://pypi.org/project/pandas/1.0.0/#filesoracle:11.2…0.4本机上与服务器上的oracle客户端不一致,因此下载了instantclient这个东西,配置好tnsnames.ora文件,就可以使用cx_oracle连接oracle下载地址为:https://www.oracle.com/cn/database/technology/instant-cli
2020-06-05 17:39:09
1177
原创 pip的安装及使用详解
1、下载及安装pip在阿里源上下载pip的rpm包,并安装https://opsx.alibaba.com/mirror2、pip使用详解现实包的详细信息pip show --file-somepackagepip安装包pip install SomePackagepip卸载包pip uninstall somePackage3、pip其他参数...
2019-11-11 12:21:04
236
原创 离线方式快速安装python模块以及相关依赖模块
环境:1、一个外网电脑,系统与内网一致2、一个内网电脑,系统与外网一致1在外网环境安装要安装的模块,以下脚本是安装paramiko,通过阿里源pip3 install -i https://mirrors.aliyun.com/pypi/simple/ paramiko2然后在能连接公网的机器上执行pip freeze>python3_module.txt这样就可以将你...
2019-11-11 11:11:04
384
原创 通过paramiko实现验证linux系统ip,端口,密码是否正确
import timeimport paramikoimport os# 创建SSH对象ssh = paramiko.SSHClient()# 允许连接不在known_hosts文件上的主机ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())def conn(hostname,port,username,passwd):...
2019-11-11 10:49:26
342
原创 paramiko模块
import paramiko# 创建SSH对象ssh = paramiko.SSHClient()# 允许连接不在known_hosts文件上的主机ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 连接服务器ssh.connect(hostname="192.168.0.99", port=22, username=...
2019-11-11 10:45:24
96
原创 python--tarfile模块
import tarfileimport os#压缩文件with tarfile.open('a.tar', 'w') as tar: tar.add('log.log', arcname='log.log') tar.add('test.txt', arcname='test.txt')#解压文件with tarfile.open('a.tar', 'r') as t...
2019-11-11 10:40:53
485
原创 python--zipfile模块
import zipfileimport os#压缩单个文件import zipfileimport oswith zipfile.ZipFile('test.zip', 'w') as z: z.write('log.txt') #压缩某个目录下所有文件def compress_file(zipfilename, dirname): ...
2019-11-07 15:44:48
185
原创 python--shutil模块
shutil.copyfile(‘file1’,‘file2’) #复制文件1内容到文件2,不用自己打开关闭文件shutil.copymode(‘file1’,‘file2’) #仅拷贝权限,内容、组、用户都不变shutil.copy(‘file1’,‘file2’) #拷贝文件和权限shutil.copy2(‘file1’,‘file2’) #拷贝文件和状态信息shutil.co...
2019-11-07 15:30:28
153
原创 python---sys模块
print(sys.argv) #以list格式返回该脚本参数,返回的第一个参数,并且执行该脚本的相对路径,结果为列表。#如 test.py 执行 python3 test.py wahahah 结果为 [test.py,wahahah]sys.exit(n) #退出程序,正常退出为sys.exit(0)sys.version #获取python版本sy...
2019-11-07 15:28:26
100
原创 python---os模块
os.getcwd() #获取当前工作目录,即当前python脚本的工作目录os.chdir(‘c:\user’) #切换到c:\user目录或者用os.chdir(r’c:\user’) \是转意的意思,r是提示统一转意,推荐使用第二种方法os.curdir #返回当前目录(.)os.pardir #返回上层目录(…)os.makedir(‘test/...
2019-11-07 15:26:06
117
原创 python--random模块
random.random() #随机生成一个0-1之间的浮点数random.uniform(1,3) #随机生成一个1-3之间的浮点数random.randint(1,3) #随机生成一个1-3之间的整数random.randrange(0,101,2) #随机生成0-100的偶数,步长为2random.randrange(1,5) #随机生成1-4的整数random....
2019-11-07 15:21:47
99
原创 python--datetime模块
datetime.datetime.now() #获取当前系统时间datetime.datetime.now()+datetime.timedelta(3) #当前时间+3天datetime.datetime.now()+datetime.timedelta(-3) #当前时间-3天datetime.datetime.now()+datetime.timedelta(hour=3...
2019-11-07 15:20:39
106
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人