自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(195)
  • 资源 (1)
  • 收藏
  • 关注

原创 iptables添加端口映射,k8s主机查询不到端口但能访问。

研究原因:k8s内一台主机使用命令查询没有80端口。但通过浏览器访问又能访问到服务。查询了资料是使用了hostport方式暴露pod端口。cni调用iptables增加了DNAT规则。访问时流量先经过iptables直接被NAT到具体服务去了。

2024-03-28 18:03:24 1156

原创 centos7.9 安装sersync+rsync 服务器数据实时同步

注:/tmp/rsync_fail_log.sh 文件可以查看异常文件。源服务器创建文件,查看目标服务器是否同步。

2023-12-08 14:49:19 1245

原创 docker 一键安装命令

【代码】docker 一键安装命令。

2023-10-24 14:40:54 831

原创 ai-docker-compose命令使用方法

Docker Compose 是一个 Docker 应用程序的编排工具,通过 YAML 文件定义一组相关的服务,然后使用 Docker Compose 命令集成、启动、停止等这些服务。该命令用于在运行中的服务中执行一次性命令。是要构建并启动的服务名称,省略表示构建并启动所有服务。是要查看日志的服务名称,省略表示查看所有服务的日志。是要重建的服务名称,省略表示重建所有服务。该命令用于停止并删除所有服务。该命令用于构建并启动所有服务。该命令用于查看服务的日志。该命令用于重建指定的服务。是要在服务中执行的命令。

2023-08-28 11:39:03 216

原创 nginx开启http2导致的服务验证码不可用问题

在阅读规范时,我看不到任何地方说getAllResponseHeaders()必须以小写形式返回标头名称,此外,由于HTTP2服务器必须以小写形式返回标头getAllResponseHeaders()将返回此特定协议的小写标头。1、因服务器有多个站点,一个站点开通了http2所有站点默认都开启http2。所以相同的配置在只有一个站点的服务器上访问没有问题。通过正常请求和异常请求的nginx日志分析,发现异常请求时使用的HTTP/2.0协议。多次验证后在新环境配置上加了http2协议支持后问题复现。

2023-07-03 17:16:09 875

原创 单机部署-loki日志收集-prometheus系统监控

使用docekr-compose一键部署,适合一台物理服务器部署解决监控和日志问题。使用了loki、promtail、node_exporter、prometheus、grafana。统一在grafana页面查询日志,查看监控情况。

2023-05-25 16:43:47 593

原创 docker buildkit 缓存.m2 加速构建

MAVEN_BUILD--mount=type=cacheDOCKER_BUILDKIT=1 临时使用buildkit方式构建。(不须要修改docker配置文件)

2023-04-11 15:44:52 1241

原创 多容器共用同一空间的网络、内存、进程

2个不同的容器,启动后查询到的ip是同一个。2个容器可以直接访问对方的网络。

2023-03-31 12:22:00 399

原创 ingress 双向认证

1、本地生成双向认证证书一、生成ca证书二、这里生成 crt 类型的证书(用户使用)三、生成p12证书文件(不使用密码直接回车)四、在k8s创建secret五、ingress配置扩展:生成私有证书(会提示安全警告)

2022-12-06 16:42:04 1812 1

原创 go-upload

go-upload基于go原生http单文件上传下载web.

2022-06-20 16:05:52 273 1

原创 K8s 通过AIP访问服务

通过AIP访问服务kubectl proxy --address=‘0.0.0.0’ --disable-filter=truehttp://192.168.100.181:8001/api/v1/namespaces/default/services/http:nginx:/proxy/

2022-03-24 18:20:22 3957

原创 kubernetes node节点失效 快速重新调度

测试node挂 机,发布需要等几分才会 在其它 的node机器 启动,这个明显不合理,对于大多数业务kube-controller-manager配置:/etc/systemd/system/kube-controller-manager.service--node-monitor-grace-period=10s \--node-monitor-period=3s \--node-startup-grace-period=20s \--pod-eviction-timeout=10s \

2022-03-10 15:36:31 1601

原创 VM 虚拟机 Linux数据盘扩容

更多扩展方法参考:https://help.aliyun.com/document_detail/25452.html这里从200G扩容到300G查看现有情况fdisk -l /dev/sdbDisk /dev/sdb: 214.7 GB, 214748364800 bytes, 419430400 sectors外部添加磁盘直接修改硬盘2的大小,保存即可。命令通知内核更新分区表partprobe /dev/vdb查看磁盘已经变大。fdisk -l /dev/sdbDisk /d

2021-08-20 12:31:06 3314

原创 rsyslog内存占用高

rsyslog内存占用高起因查询内存占用前10进程处理方法一优选方法二处理方法三根本原因起因k8s集群节点,内存分布不均。查看详细k8s服务负载发现并不高。到具体节点机查看。发现rsyslog服务占用32%内存。查询内存占用前10进程ps aux | grep -v PID | sort -rn -k +4 | head处理方法一直接重启rsyslog服务 释放内存systemctl restart rsyslog优选方法二查询了资料,rsyslog旧版本会存在内存泄露问题。故对系统r

2021-06-29 12:19:18 5051

原创 python项目 Dockerfile 基础镜像精简之路

python项目 Dockerfile 基础镜像精简之路1、指定pip安装不缓存# 例如:pip3 install --no-cache-dir -r /tmp/requirements.txt -i https://mirrors.aliyun.com/pypi/simple/2、apt 安装时加 --no-install-recommends 不安装非必要依赖# 能直接用apt安装的依赖包直接用apt安装。apt没的包再用pip安装。apt 安装后删除apt缓存RUN apt-get

2021-05-20 11:26:48 1193

原创 k8s 搭建 skywalking

k8s 搭建 skywalking仅用于测试环境es没做持久化,正式环境最好还是把es数据做一下持久化。agent服务配置下载agent这里选择的是8.1.0版本须要对应https://mirrors.tuna.tsinghua.edu.cn/apache/skywalking/8.1.0/apache-skywalking-apm-8.1.0.tar.gz可以使用pvc方式或hostpath方式把agent目录挂载到容器内。服务配置启动项目jar前加上javaagent文件地址。- c

2021-04-01 10:36:45 3210

原创 Arthas排查skywalking问题 id is too long, must be no longer than 512 bytes

id is too long, must be no longer than 512 bytes部署的skywalking老是崩溃,cpu被拉满。 查看skywalking-oap-server.log 日志,发现很多异常日志,如下:2021-02-20 17:27:18,699 - org.apache.skywalking.oap.server.core.register.worker.RegisterPersistentWorker - 105 [DataCarrier.REGISTER_L2.

2021-02-20 17:58:33 1513

转载 使用Nginx-Ingress实现蓝绿发布/金丝雀发布/AB测试

Kubernetes 使用Nginx-Ingress实现蓝绿发布/金丝雀发布/AB测试转载:https://juejin.cn/post/6844903927318577159背景介绍某些情况下,我们在使用Kubernetes作为业务应用的云平台,想要实现应用的蓝绿部署用来迭代应用版本,用lstio太重太复杂,而且它本身定位于流控和网格治理;Ingress-Nginx在0.21版本引入了Canary功能,可以为网关入口配置多个版本的应用程序,使用annotation来控制多个后端服..

2021-02-09 10:15:32 1099 1

转载 kubernetes中多用户的实践

kubernetes中多用户的实践有时候需要多个用户共用一个集群,这种情况需要为其分配一个新的用户;为了集群的安全性还需要限制新用户的权限范围;多个用户难免会有资源竞争的情况,这时还需要限制其资源使用。Kubernetes提供了一系列机制以满足多用户的使用,包括多用户,鉴权,命名空间,资源限制等等。接下来将创建一个名为staight的用户,其拥有practice命名空间下的管理员权限,该命名空间有着CPU,内存,Pod数量等限制。创建用户Kubernetes中的用户创建大体包括静态创建和动态创

2021-02-07 16:54:35 1216

原创 ingress-nginx 实现内部局域网的url转发配置

ingress-nginx 实现内部局域网的url转发配置实现目的:在 192.168.4.4 物理服务器上部署 WEB服务器 端口80.外网IP80端口直接指向ingress-nginx。域名指向 ingress-nginx ip 可以访问到局域网内物理搭建的web服务器,而非容器。实例yaml:主要利用自定义Endpoints资源,指向局域网服务器。apiVersion: v1kind: Endpointsmetadata: name: proxy-ingresssubsets

2021-01-28 17:37:04 3043 1

原创 k8s 拉取私有镜像 imagepullsecrets

k8s 拉取私有镜像 imagepullsecretsspec: imagePullSecrets: - name: aliyun-registry使用命令创建Secret 命令如下:kubectl create secret docker-registry aliyun-registry --docker-server=registry.cn-hangzhou.aliyuncs.com --docker-username=XXX --docker-password=XXX -n XXX

2021-01-28 12:38:28 1791

原创 PostgreSQL Citus集群验证

PostgreSQL Citus集群验证安装docker和docker-compose略。 网上都能找到。官方文档http://docs.citusdata.com/en/v9.5/installation/single_machine_docker.htmldocker-compose.yamlversion: '3'services: master: container_name: "${COMPOSE_PROJECT_NAME:-citus}_master" imag

2021-01-26 14:52:23 1073

原创 ISTIO bookinfo 实例 (固定版本、匹配重定向)

ISTIO bookinfo 实例 (固定版本、匹配重定向)最终效果:所有访问都会从productpage到eviews的v3版本再到ratigs。访问会一直是这个界面。kiali查看情况实现istio安装查看前面文章1、部署bookinfo实例。kubectl apply -f istio-1.6.14/samples/bookinfo/platform/kube/bookinfo.yaml# 验证[root@ops kube]# kubectl get pod,svc NAM

2021-01-19 18:12:37 834

原创 redis迁移工具

redis迁移工具(centos7 安装)redis-dump安装yum install centos-release-scl-rh -y#配置yum仓库yum install rh-ruby23* -y#安装其他工具,不安装后面可能会报错scl enable rh-ruby23 bashruby -v#查看版本gem install redis-dump -V使用# redis-dump导出数据redis-dump -u 192.168.0.4 -a 123456 >

2020-12-23 14:11:16 692

原创 ETCD增加节点与删除节点(带安装认证)

ETCD增加节点与删除节点(衔接上篇文章做了安装认证)查看现在状态查看文件[root@uat-master02 ssl]# pwd/data/etcd/ssl[root@uat-master02 ssl]# lsca-config.json ca-csr.json ca.pem client.json client.pem peer.csr peer.pem server-key.pemca.csr ca-key.pem clien

2020-10-13 15:52:13 2625

原创 kubeadm安装高可用K8S-1.19集群(外部etcd方式)

kubeadm安装高可用K8S-1.19集群<外部etcd方式>集群规划初始化工作(master01-master02-node01都须要操作)安装步骤一、安装keepalived创建VIP二、搭建高可用etcd集群三、安装 kubeadm, kubelet 和 kubectl四、初始化master五、将worker节点加入集群六、安装插件flannel、metrics-server七、测试集群外部二进制搭建etcd集群、系统出问题后还能通过外部etcd做恢复、操作上比直接把etcd放容器内好

2020-10-12 16:43:37 8053 7

原创 对外暴露主机SSH简单策略防护

Linux对外暴露主机SSH简单策略防护修改ssh服务的默认端口ssh服务的默认端口是22,一般的恶意用户也往往扫描或尝试连接22端口。所以第一步就是修改这个默认端口打开/etc/ssh/sshd_config,找到Port 22然后将22修改为其它没有被占用的端口,如1022。最好在1-1024之间,防止与用户进程端口冲突。然后重启sshd即可sudo /etc/init.d/ssh restart限制IP首先修改/etc/hosts.allow文件,将可访问服务器ssh服务的客户IP

2020-10-10 10:36:45 1173

原创 jenkins安装和kubernetes插件简单配置

jenkins 插件 kubernetes 简单配置插件安装k8s信息获取配置简单验证

2020-09-11 21:43:09 3827 3

原创 elasticdump 迁移ES索引

elasticdump 迁移ES索引github:https://github.com/elasticsearch-dump/elasticsearch-dump安装下载nodejs(centos7 yum 安装版本过低无法使用)wget https://nodejs.org/dist/v10.13.0/node-v10.13.0-linux-x64.tar.gz解压并添加环境tar xf node-v12.18.3-linux-x64.tar.xzcd node-v12.18.3-lin

2020-09-09 17:37:55 1191

原创 shell实现多线程备份恢复数据库

多线程mysqldump备份恢复数据库备份#!/bin/bashtrap "exec 6>&-;exec 6<&-;wxit 0" 2tmp_fifofile=/tmp/$$.fifomkfifo $tmp_fifofileexec 6<>$tmp_fifofilerm $tmp_fifofile# 这里是并发线程数thread=20for ((i=0; i<=$thread;i++))do echodone >&6#

2020-08-25 20:51:17 780

原创 自动清理harbor镜像仓库脚本

自动清理harbor镜像仓库脚本请看说明再执行,出现删除过多概不负责。网上找的版本删除有点问题,做了一定的修改。我这里的镜像都是依照数字正常排序构建的。例如v:1.0.1v:1.0.2v:1.0.3v:1.0.4OLD_VERSION_NUM设置为3的话 会把v:1.0.1删除。只保留后3个。执行前须安装jqwget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repoyum install

2020-08-20 12:00:31 2485 1

原创 Nginx get&post 静态文件返回200

Nginx get&post 静态文件返回200常规写法 只能get请求返回200 location =/auth/callback { root /data/nginx/static/test; try_files "" /callback.txt; }get&post请求都返回200 location =/auth/callback { de

2020-08-14 09:52:00 1401

原创 K8S-Server实现简单灰度发布

K8S-Server实现简单灰度发布直接上yaml文件---apiVersion: extensions/v1beta1kind: Deploymentmetadata: name: nginx-group1 labels: app: nginxspec: template: metadata: labels: app: nginx spec: containers: - name: nginx

2020-08-04 16:27:10 1959

原创 Yearning SQL审计平台 定制化修改

Yearning SQL审计平台 定制化修改下面所有都是修改前端。源码地址:https://github.com/cookieY/Yearning-gemini1、去掉登录验证码编辑 login.vue2、默认勾选ldap登录3、修改工单里面数据库选择为可输入选择修改文件:ddlOrder.vue && dmlOrder.vue格式文件:common.less打包:npm run build...

2020-07-22 10:29:28 1402

原创 Golang 部署webhook,执行指定脚本

Golang 部署webhook,远程触发执行指定脚本。下载GITHUB地址:https://github.com/adnanh/webhookhttps://github.com/adnanh/webhook/releases 直接下载最新的对应版本即可。webhook配置vim webhook.json使用时须要把备注删掉[ { "id": "lswzw-test", // 这里填写 http://server/hooks/{ID} 对应的是{ID} 值。也是唯一值。

2020-06-23 10:47:00 2963 2

原创 istio 允许服务间不安全连接

istio 允许服务间不安全连接集群中开启了自动注入istio, 但是通过 statefulset 创建的服务没办法注入。导致istio已经注入的服务访问有状态服务时出现不可信任连接。 导致服务无法访问。可以通过下面指定host允许不安全连接。apiVersion: networking.istio.io/v1alpha3kind: DestinationRulemetadata: name: consul namespace: testspec: host: test-cons

2020-06-18 14:52:08 839

原创 istio sidecar使用自定义镜像

istio sidecar使用自定义镜像Istio 和 sidecar 配置保存在 istio 和 istio-sidecar-injector 这两个 ConfigMap 中,其中包含了 Go template,所谓自动 sidecar 注入就是将生成 Pod 配置从应用 YAML 文件期间转移到 mutable webhook 中。所以直接更改 istio-sidecar-injector configmap 就可以了。 具体修改内容如下:values: |- 下面"hub": "docke

2020-06-05 09:35:05 1520 1

原创 二进制安装k8s - 0.9 安装 coredns && metrics

二进制安装k8s - 0.9 安装 coredns && metrics这里全部是用yaml 安装。corednsapiVersion: v1kind: ServiceAccountmetadata: name: coredns namespace: kube-system---apiVersion: rbac.authorization.k8s.io/v1kind: ClusterRolemetadata: labels: kubernetes.i

2020-05-18 14:08:15 734

原创 二进制安装k8s - 0.8 安装 flannel 网络插件

二进制安装k8s - 0.8 master安装 kube-scheduler

2020-05-18 13:49:17 1442

原创 二进制安装k8s - 0.7 node安装 kubelet、kube-proxy 、cni plugins

二进制安装k8s - 0.7 master安装 kube-controller-manager

2020-05-15 23:58:23 1220

DejaVuSansMono-1.ttf

DejaVuSansMono-1

2019-09-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除