有几台vmware的虚拟机挂载了很多块虚拟盘,这些虚拟盘都位于同一块物理盘中,在虚拟机中通过lvm组成一个卷。考虑到后期有将虚拟机迁移到pve的需求,多块虚拟盘导出导入比较麻烦,折腾下lvm的合盘操作,记一下笔记备用创建测试环境开了台新的虚拟机来测试,要从头创建一个lv来做测试虚拟机挂了三个盘,一个系统盘,两个测试用的数据盘[root@lvm-test ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 49G 0 part └─rl-root 253:0 0 49G 0 lvm / sdb 8:16 0 10G 0 disk sdc 8:32 0 10G 0 disk sr0 11:0 1 1024M
某套线下环境网络不稳定,有dns劫持的问题,对业务影响比较大,需要配置dns加密来对抗劫持,DNS加密方案有 DNS over HTTPS(DoH)以及DNS over TLS(DoT)两种,dnsmasq似乎是不支持这两种方式的,所以需要装一个dnscrypt-proxy,将查询请求通过DoH/DoT发出,将查询结果返回给dnsmasq。1.安装yum install dnscrypt-proxy2.配置配置文件/etc/dnscrypt-proxy/dnscrypt-proxy.toml修改dnscrypt-proxy监听的端口,因为53端口已经被dnsmasq占用,这里修改成5353listen_addresses = ['127.0.0.1:5353']来到sources这一块,把自带的远程源全部注释掉,不然每次启动都要到远程源下载可用服务器列表,影响启动速度,自带源又都放在github上,下不到就会启动失败,用自己配的自定义服务器就行,下面会写[sources] ## An example of a remote source from https://github.c
最近有几台机器老是被ssh爆破,虽然是强密码不容易被试出来,但是刷一堆错误日志看着也怪难受的,有些比较老的机器上是用crontab+ssh脚本来定时拉黑ip,新装的机器不想用脚本,换fail2ban来试试水安装主流发行版的软件源都包含了fail2ban包,直接装就行Debian系:apt install fail2banRH系:yum install fail2banRH系可能不会自动启动服务,要自己手动开下systemctl enable fail2ban systemctl start fail2ban配置fail2ban自带了模板配置文件,位置是/etc/fail2ban/jail.conf,不要直接更改这个文件,否则可能会被其他程序覆盖,在/etc/fail2ban/jail.d目录下新建一个custom.local文件,在这个新文件里面写配置fail2ban自带了很多规则,可以支持除ssh以外众多服务的爆破防御,我这里只需要对ssh防护,就不写别的配置了[DEFAULT] bantime = 7d # 封禁时长 findtime = 5m # 触发封禁的时间间隔 maxret
因为牙膏厂的win驱动有bug,12代的核显直通给win10之后会出现代码43的问题,所以12代的核显需要开启sriov将核显虚拟化,之后再传给虚拟机,简单记下操作流程。用到的dkms项目地址:https://github.com/strongtz/i915-sriov-dkms首先要跟着之前的pve安装初始化开启iommu,添加内核模块那一步有点变动,我安装的是pve 8.1.3,内核版本6.5.11-4,有一个模块就不需要手动添加了:cat >> /etc/modules << EOF vfio vfio_iommu_type1 vfio_pci vfio_virqfd #not needed if on kernel 6.2 or newer EOF安装依赖:apt install git dkms build-*克隆dkms项目:export http_proxy=http://192.168.0.170:2081 export https_proxy=http://192.168.0.170:2081 git clone https://github.
公司有部分虚拟机运行在vmware workstation上,现在需要迁移到pve上组集群运行,记一下操作的流程导出vmware虚拟机在vmware workstation中选中要导出的虚拟机,选择菜单栏的“文件”-“导出为OVF”,选择导出的位置导出完成后会看到几个文件,其中以“vmdk”结尾的文件就是虚拟机的磁盘文件,把磁盘文件复制到pve节点上导入到PVE在PVE中创建一个空白虚拟机,不要挂载磁盘,手动导入vmware导出的磁盘文件通过Shell登录pve,执行以下命令导入磁盘文件:qm disk import 5001 ./pgsqlVm_old-disk1.vmdk local --format qcow25001是空白虚拟机的id,后面是vmdk文件的位置,local是磁盘文件导入后存储的位置,格式选qcow2导入完成后,可以看到虚拟机多了一块未使用的磁盘双击这块磁盘,修改参数,挂载到虚拟机内还需要修改启动顺序,让虚拟机从我们导入的磁盘启动修改完成后即可启动虚拟机Linux启动失败修复直接导入的磁盘可能会出现系统启动失败的现象:出现这个错误的原因是原系统在vmware虚拟机
好久以前就申请了https证书给网站配上了,当时没有做笔记,现在证书快过期了,要重新申请下顺便记一下https证书的申请流程,免得以后忘了又要重新折腾申请用的工具是"acme.sh"项目地址:https://github.com/acmesh-official/acme.sh 国内镜像:https://gitee.com/neilpang/acme.sh准备工作先git克隆代码到本地,不想配代理可以用国内gitee的镜像mkdir acme cd acme git clone https://gitee.com/neilpang/acme.sh.git执行安装,邮箱写自己的,默认会安装到~/.acme.sh/目录下./acme.sh --install -m youremail@domain.com安装完重新登录终端,执行下acme.sh命令su acme.sh安装成功的话会显示acme.sh的帮助信息[root@test ~]# acme.sh https://github.com/acmesh-official/acme.sh v3.0.5 Usage: a
Why公司因为业务需要,在线下增设了几套新的k8s环境,这几套环境的监控报警都是通过Prometheus+AlertManager来做的,报警消息通过企业微信的api接口推送给指定的用户,但企微新创建的应用必须配置ip白名单才可以推送消息我司线下环境没有固定的公网ip,ip变动后就必须手动更新企微api的ip白名单,否则AlertManager的告警消息就无法推送到企微参考企微开发文档:连接为了企业的数据安全,从2022年6月20号20点之后,新开启的通讯录同步助手与新创建的自建应用必须在管理端配置可信IP,仅配置的可信IP能调用接口这种情况下,就需要一台具有固定ip的机器,来做企微api的反代,让线下环境的ip变动也不影响消息推送How企微的api接口全部采用https协议,https涉及到tls握手的问题,配置传统代理比较麻烦,所以选用sniproxy来直接转发https流量,而不对流量本身做解密这里提供一个测试代理的方法:https://qyapi.weixin.qq.com/cgi-bin/get_api_domain_ip这个接口是用来获取企微api接口ip段的,需要提交ac
家里的机器资源有点空闲了,之前用Docker跑服务每次要升级都要重新敲命令,比较麻烦,准备开个虚拟机跑个轻量K8s,把原来用Docker跑的服务全部迁移到上面,顺便再装个Rancher做图形化界面,方便之后做容器升级等操作,K8s的cronjob也能做比较复杂的定时任务。先介绍下环境:环境版本虚拟机OSRocky8.8Rancher2.7.6K3s1.26.9+k3s10. 初始化这一块就不详细写了,Rocky8和CentOS7差不多,装好之后记得关闭SELinux和Firewalld就行1. 下载K3s安装脚本,安装K3scurl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh > ./k3s-install.sh chmod +x ./k3s-install.shcat ./k3s-install.sh | \ INSTALL_K3S_VERSION=v1.26.9+k3s1 \ INSTALL_K3S_MIRROR=cn \ sh -s - server这里就没有继续使用Docker作为底层cri了,
PVE能折腾的地方还挺多的,也不好每个地方都开个笔记,干脆都记在这里了关闭每次登录时的“无有效订阅”提示PVE的企业源要付费才能用,不然每次登录都会弹出提示,挺烦人的通过修改web页面的js文件,可以关掉这个提示文件的位置在/usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js搜索No valid subscription,定位到图示的这个函数把Ext.Msg.show({注释掉,替换成void({修改完之后,刷新浏览器缓存,即可去掉提示添加cpu温度显示要先装好lm-sensors这个包,当然也可以配合其他命令来自定义显示数值在/usr/share/perl5/PVE/API2/Nodes.pm文件中找到$res->{pveversion} $res->{pveversion} = PVE::pvecfg::package() . "/" . PVE::pvecfg::version_text(); $res->{therm
有一批http接口需要通过ip白名单访问,因为我这里没有固定ip,需要开一台云服务器做代理中转请求,squid配置比较方便,简单记一下操作流程因为是http接口,没有https,就没做https相关的配置了使用的镜像:ubuntu/squid:5.2-22.04_beta正向代理(带身份验证)正向代理不需要额外配置就可以代理https先拉取镜像,然后写配置文件,位置无所谓,我这里是/etc/squid/squid.conf# Squid监听端口 http_port 3128 # 认证程序及密码文件位置 auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/pwd # 认证程序的线程数 auth_param basic children 5 # 认证领域?不知道有啥用 auth_param basic realm proxy # 认证令牌的有效期 auth_param basic credentialsttl 2 hours # 是否大小写敏感 auth_param basic casesensitive
鸽了
一定来,不会咕咕咕