kubeadm 处理K8s 证书过期问题
k8s默认证书有效期只有一年,目的就是为了让你经常升级k8s?升级成功后也会更新证书,延长1年有效期。实际生产中,由于升级k8s往往会产生一些奇奇怪怪的问题,因此也不会经常升级,那么就需要进行证书续签的操作,如果使用kubeadm安装的集群,证书续签还是挺简单的。下面的这些操作,在所有master节点都需要执行哦。
备份证书任何操作前先备份,给自己留口后悔药
1cp -r /etc/kubernetes /etc/kubernetes.bak
不放心,etcd数据也可以备份一下
1cp -r /var/lib/etcd /var/lib/etcd.bak
排查当前证书过期状态123456kubeadm certs check-expiration较老版本kubeadm使用kubeadm alpha certs check-expiration# 直接用openssl查看证书有效期cd /etc/kubernetes/pkifor i in $(ls *.crt); do echo "===== $i ====="; openssl x509 -in $i -tex ...
centos7使用binlog2sql
安装binlog2sqlbinlog2sql支持python2和python3,centos7自带的python就能正常运行,只是需要安装一些依赖。
123456yum install git pip#pip安装不上可以改成python-pip,首先需要yum install epel-releaseyum install epel-releaseyum install python-pipgit clone https://github.com/danfengcao/binlog2sql.git && cd binlog2sql
根据官方教程,这里使用pip安装相关依赖,但是经本人踩坑,这里的依赖版本有问题,会导致生成的sql字段错位,需要调整版本mysql-replication>0.19,这是我用的requirements.txt版本,实测恢复mysql8数据没什么问题
123PyMySQL==0.9.3wheel==0.29.0mysql-replication==0.21
修改完requirements.txt文件后,安装依赖
1pip instal ...
rke安装管理k8s集群
准备rke安装服务器rke安装服务器同样也可以用作集群节点,只需要继续做下面的准备集群服务器的相关步骤就行。
下载安装rke下载安装包Releases · rancher/rke (github.com),linux下使用rke_linux-amd64将安装包移动到/usr/bin/rke或者/usr/local/bin/rke,并授权。
12mv rke_linux-amd64 /usr/bin/rkechmod +x /usr/bin/rke
检查rke1rke --version
准备集群服务器服务器常规准备时间同步1234567ntpdate pool.ntp.orgdateecho '*/10 * * * * /usr/sbin/ntpdate pool.ntp.org' >>/var/spool/cron/rootcrontab -l
关闭防火墙和selinux12345systemctl stop firewalldsystemctl disable f ...
MySQL 查看库或表大小
mysql 查看库或表的大小方法,实际发现会有所出入,仅做参考
1. 查看所有数据库容量大小12345678selecttable_schema as '数据库',sum(table_rows) as '记录数',sum(truncate(data_length/1024/1024, 2)) as '数据容量(MB)',sum(truncate(index_length/1024/1024, 2)) as '索引容量(MB)'from information_schema.tablesgroup by table_schemaorder by sum(data_length) desc, sum(index_length) desc;
2. 查看所有数据库各表容量大小12345678selecttable_schema as '数据库',table_name as '表名',table_rows as '记录数',truncate(data_le ...
MySQL 关闭外键检查
建表对于插入新数据时,对于由于外键关联的主表缺少对应信息而导致子表插入数据失败的,可以暂时关闭外键检查。
123456789关闭外键检查SET FOREIGN_KEY_CHECKS = 0;查看是否关闭show VARIABLES like "FOREIGN_KEY_CHECKS";重新打开外键检查SET FOREIGN_KEY_CHECKS = 1;
导入时报错 Failed to open the referenced tablemysql导入报错信息
123[root@lw 20230323bak]# mysql -h 193.169.203.15 -u root -p -P 5958 apple < apple-20230323.sql Enter password: ERROR 1824 (HY000) at line 5: Failed to open the referenced table 'qrtz_triggers'
解决方法:导入时关闭关键检查
1cat <(echo "SET FOREIGN_ ...
centos7上部署mDns
简介mDNS即多播DNS(Multicast DNS),mDNS主要实现了在没有传统DNS服务器的情况下使局域网内的主机实现相互发现和通信,使用的端口为5353。
mdns 使用组播地址为: 224.0.0.251 (ipv6: FF02::FB) 端口为5353,mdns 是用于局域网内部的,并且主机的域名为.local 结尾,每个进入局域网的主机,如果开启了mDNS服务的话,都会向局域网内的所有主机组播一个消息,我是谁(域名),和我的IP地址是多少。然后其他有mdns服务的主机就会响应,也会告诉你,它是谁(域名),它的IP地址是多少。 当然设备需要服务时,就是使用mdns 查询域名对对应的ip地址,对应的设备收到该报文后同样通过组播方式应答,此时其他主机设备也是可以收到该应答报文,其他主机也会记录域名和ip 以及ttl 等,更新缓存。
比如,A主机进入局域网,开启了 mDNS 服务,并向 mDNS 服务注册以下信息:我提供 FTP 服务,我的IP是 192.168.1.101,端口是 21。当B主机进入局域网,并向 B 主机的 mDNS 服务请求,我要找局域网内 FTP 服务器,B ...
rinetd端口转发
简介TCP端口转发工具,需注意不支持UDP,配置文件路径/etc/rinetd.conf
安装rpm包下载rpm包
rpm -ivh rinetd-0.62-9.el7.nux.x86_64.rpm
YUM安装(未验证,可能失效)12345678$ sudo vim /etc/yum.repos.d/nux-misc.repo[nux-misc]name=Nux Miscbaseurl=http://li.nux.ro/download/nux/misc/el6/x86_64/enabled=0gpgcheck=1gpgkey=http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo yum --enablerepo=nux-misc install rinetd
配置1234567891011121314151617181920212223242526272829# example configuration file for rinetd### to forward connections to port 8 ...
hexo部署个人博客
安装hexo1npm install -g hexo-cli
初始化会创建devops_hexo_blog目录,并初始化项目
12345hexo init devops_hexo_blogcd devops_hexo_blognpm install
安装主题:12345678# clone主题代码,个人fork个分支方便后面变更git submodule add -b master git@github.com:Hello-Hyman/hexo-theme-butterfly.git themes/butterfly# 将配置文件拷贝到项目目录,方便后面更新主题文件,不会覆盖主题配置cp themes/butterfly/_config.yml _config.butterfly.yml# butterfly主题需要安装一些插件npm install hexo-renderer-pug hexo-renderer-stylus --save
预览12345678# 清理之前的文件,更换主题需要执行一下,文件更新之类不需要hexo clean# 生成文件hexo g# 预览, ...
macos系统配置
允许任何来源1sudo spctl --master-disable
终止ReportCrashm1芯片的mac突然发现耗电比较高,查看进程发现reportcrash一直占用大量cpu,强行停止后还会再启动,终端里运行以下代码可禁用
1234# 禁用reportcrash`launchctl unload -w /System/Library/LaunchAgents/com.apple.ReportCrash.plist` `sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.ReportCrash.Root.plist`
123# 启用reportcrash`launchctl load -w /System/Library/LaunchAgents/com.apple.ReportCrash.plist` `sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.ReportCrash.Root.plist`
Watchtower更新运行的docker镜像
简介Watchtower 是一个可以实现自动化更新 Docker 基础镜像与容器的实用工具。它监视正在运行的容器以及相关的镜像,当检测到 registry 中的镜像与本地的镜像有差异时,它会拉取最新镜像并使用最初部署时相同的参数重新启动相应的容器
使用示例更新所有镜像12dockerrun -d --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once
更新完成后删除watchtower容器1dockerrun --rm --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower --cleanup --run-once
更新指定服务1dockerrun -d --name watchtower -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchto ...
