opensearch (es) 修改分片
错误
Fluentd 向 ES 写入数据的时候如下报错:
1 | 2024-12-27 01:33:27 +0000 [warn]: #0 fluent/log.rb:381:warn: send an error event to @ERROR: error_class=Fluent::Plugin::ElasticsearchErrorHandler::ElasticsearchError error="400 - Rejected by Elasticsearch [error type]: illegal_argument_exception [reason]: 'Validation Failed: 1: this action would add [2] total shards, but this cluster currently has [3000]/[3000] maximum shards open;'" location=nil tag="kubernetes.var.log.containers.dataops-ds-worker-fbc64df5f-k6xrm_dataops_dataops-ds-worker-494d705e1a173657644f86708f16041cf8d429038c969f1237d7f040bbaa313e.log" time=2024-12-27 01:33:21.135254232 +0000 |
解决
1 | curl -X PUT -u admin:xxxxxx --insecure https://172.23.8.175:9200/_cluster/settings -H 'Content-Type: application/json' -d '{ |
其他命令
1 | curl -X GET -u admin:xxxxxx --insecure https://172.23.8.175:9200/_cat/shards?v |
lsyncd 同步 Coredns 配置
配置文件
1 | # /etc/lsyncd.conf |
启动
1 | # /usr/lib/systemd/system/lsyncd.service |
Coredns 安装配置文档
启动
1 | # /usr/local/bin/coredns -dns.port=53 -conf /etc/coredns/Corefile |
Corefile
1 | # /etc/coredns/Corefile |
DNS zone file
1 | # /etc/coredns/jakehu.me |
如果增加了记录需要将 2017042745
加 1,让配置生效
主从配置
CoreDNS 本身并不直接支持传统的主从配置(如 BIND 的 masters 和 slaves)。不过,以下几种方法可以实现类似的功能:
- DNS 转发:通过配置 forward 插件将 DNS 查询转发到另一台服务器,适用于负载均衡或容灾目的。
- CoreDNS 与 Consul 集成:通过 Consul 共享服务发现数据,实现多台 CoreDNS 服务器的高可用配置。
- DNS 区域同步:通过手动同步 DNS 配置文件,达到多个 CoreDNS 服务器数据一致性。
参考:
https://coredns.io/manual/toc/
博客 hexo 部署在 github 的方式
方式一:源码部署
参考官方文档:https://hexo.io/zh-cn/docs/github-pages
方式二:一键部署
参考官方文档:https://hexo.io/zh-cn/docs/github-pages
方式三:我的方式
- 将源码传入到 github 私有仓库(因为有部分东西不想对公暴露)
- 利用私有所在仓库 Actions 进行 build
- 再利用 Actions 传入到另一个仓库(jakehu.github.io)
package.json
1 | "scripts": { |
.github/workflows/deployment.yml
1 | name: Publish Hexo to gitpage |
ACCESS_TOKEN 变量需要在源码仓库 Settings->Secrets and variables->Actions
下进行设置
redisson 错误
错误
1 | SlaveConnectionPool no available Redis entries |
解决
升级版本 3.27.0 以上
参考:https://github.com/redisson/redisson/blob/master/CHANGELOG.md
Rancher 更新 kubelet 证书
检查
1 | cd /var/lib/kubelet/pki/ && openssl x509 -in kubelet.crt -text -noout |grep After |
处理
1 | # ansible剧本 |
后续
1 | kubectl rollout restart ds calico-node -n kube-system |
consul+vm 自动发现监控主机
Consul 安装
1 | # docker-compose.yaml |
WEB UI:http://10.168.140.45:8500/ui/dc1/services 可以直接访问 8500 端口
配置
1 | log_level = "error" |
默认配置:
https://developer.hashicorp.com/consul/docs/agent/config/config-files
数据注册
1 | # 结构类似于 |
服务注册文档:
https://developer.hashicorp.com/consul/api-docs/agent/service#register-service
VM 配置
1 | scrape_configs: |
参考:
夜莺黑盒监控 (categraf http_response)
安装
1 | wget -c https://download.flashcat.cloud/categraf-v0.3.77-linux-amd64.tar.gz |
配置
N9E: 这里是配置像哪个 VM 推送数据 参考
1 | [[Pushgw.Writers]] |
categraf:
1 | [[writers]] |
inputs:
1 | [[instances]] |
启动
linux systemd 托管不太好控制单个模块采集
1 | nohup ./categraf --inputs http_response & |
常用命令
1 | ./categraf --test --inputs http_response |
参考:
https://flashcat.cloud/docs/content/flashcat-monitor/categraf/2-installation/
VictoriaMetrics 安装文档
安装单机版本
1 | # 下载victoriametrics |
配置启动参数
1 | # vim /usr/local/victoriametrics/conf/victoriametrics |
开机启动
1 | # vim /usr/lib/systemd/system/victoriametrics.service |
vmalert
告警部分可以交给夜莺即可