devops
文章平均质量分 61
多多小老虎
为学日益,为道日损,损之又损,以至于无为,无为而无不为
展开
-
冗余代码检查CPD使用
文章目录前言一、下载二、命令行启动三、图形化界面启动总结前言随着代码不断开发,项目不断变更,项目人员不断更迭。有些时候,由于不清楚或者不熟悉,在代码中写了大量重复代码,后期如果要人工检查去处理太消耗人力。CPD(copy-paste-detecto)支持 C/C++, C#, Dart, Fortran, Go, Groovy, Java, JavaScript, JSP, Kotlin, Lua, Matlab, Modelica, Objective-C, Perl, PHP, PLSQL, Pyt原创 2021-10-19 16:47:14 · 1099 阅读 · 0 评论 -
linux 和mac profile jdk maven配置
export JAVA_HOME=/usr/software/jdk1.8.0_11export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport MAVEN_HOME=/usr/software/apache-maven-3.6.1export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATHsource /etc/profile原创 2021-03-31 16:12:22 · 167 阅读 · 2 评论 -
常用命令
1.生产和UAT的镜像用这个docker push registry.getech.cn/iot-pub/IMAGE[:TAG]docker tag registry.getech.cn/iot/iot-tcl-custommade/master:1.0.728 registry.getech.cn/iot-pub/iot-tcl-custommade/master:1.0.728 // docker tag 原来的image UAT和生产上面的image(iot-pub)doccker pu原创 2021-03-05 14:22:45 · 157 阅读 · 0 评论 -
Tdengine安装
常规做法:官网下载地址:https://www.taosdata.com/cn/getting-started/这里选择tar包安装1、将tar拷贝到固定目录,解压tar包,2、进入解压后的文件夹,执行./install.sh3、启动TDengine: systemctl start taosd执行命令 taos -h hostname在腾讯云上部署的时候,发现不能使用headless的方式给k8s增加一条DNS记录指向外面的地址所以,想办法改造Tdengine,令他的连接可以使用ip地原创 2021-02-01 20:06:22 · 734 阅读 · 0 评论 -
Kong in DB-less Mode
文章目录前言一、在rancher创建pvc二、kong挂载该pvc三、创建并配置kong.yml四、修改kong的环境变量,并重启五、使用konga查看前言在部署华为云的时候,因为要部署kong,但是传统kong需要部署postgresql或者cassandra作为他的数据库,但是不能支持mysql,迫不得已需要购买华为云的服务。心想能不能不适用数据库。后面查阅官网,发现,kong既支持DB,也支持非DB模型。但是如果使用非DB模式,则基于Konga操作kong的配置只剩下查询,不支持新增,修改和删除原创 2021-01-30 10:24:50 · 321 阅读 · 0 评论 -
centos7单机版 mongodb安装
文章目录前言一、下载文件二、安装程序安装mongodb服务端安装mongodb命令行安装mongodb工具集群三、修改配置文件四、启动mongodb前言IOT产品中的组态,因为数据存储的多样性,以及数据量在单个字段中较大,综合考虑,团队采用mongodb存储组态相关的数据一、下载文件wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/RPMS/mongodb-org-server-4.0.5-1.el7.x86_64.原创 2021-01-25 15:36:27 · 167 阅读 · 0 评论 -
Linux iptable常见使用
1.查看已开放的端口(默认不开放任何端口)firewall-cmd --list-ports2.查看防火墙相关IP和PORT配置firewall-cmd --list-all2.设置端口和源IPfirewall-cmd --zone=public --add-rich-rule ‘rule family=“ipv4” source address=“101.74.152.23” port port=6379 protocol=tcp accept’ --permanent3.重新加载firew原创 2021-01-18 13:59:05 · 303 阅读 · 0 评论 -
rancher证书过期: X509:certificate has expired or is not yet valid
前言rancher运行的好好的,突然某一天,rancher登录不进去一、问题定位登录rancher所在机器,发现rancher的容器一直在重启查看rancher容器的日志发现报错,最开始一直没有找到错误点,因为日志里面大部分都是connection refuse连接拒绝这些。还有就是下载rancher官网一些东西。但是这些并不是重点。后面实在没有办法重启docker。发现该机器上不知道谁开启了apache http占用80端口,明显端口冲突,马上把httpd服务关掉,我以为就好。但是问题并不是原创 2020-12-28 17:01:45 · 2720 阅读 · 0 评论 -
mysql主从搭建
一:mysql数据库安装查看我上篇文章mysql安装https://blog.csdn.net/sinat_36759535/article/details/107575791二:Master节点配置配置 /etc/my.cnflog-bin=mysql-binserver-id=1 重启服务service mysql restart 创建slave账户,并授权slave所在机器的IP地址GRANT REPLICATION SLAVE ON *.* to 'slave'@'原创 2020-12-23 15:27:54 · 70 阅读 · 0 评论 -
修改coreDNS配置,实现k8s集群全局域名映射
文章目录前言一、修改coreDNS配置二、重启相关coreDNS服务,使其生效前言在某些不能上网的封闭环境中,有时候需要通过代理访问增加公司外网的harbor仓库,但是部署环境中的机器并没有对应的域名解析,有些时候可以通过将域名解析写在机器的/etc/hosts文件中,但是万一将来k8s集群扩容,然后又忘了在新加入的机器的/etc/hosts文件中写域名映射,在生产上容器产生问题。所以我们通过在k8s的coreDNS中手工增加一条映射解决问题,将来k8s就算机器扩容也不用担心忘记在新机器的/etc/ho原创 2020-12-23 13:51:11 · 4632 阅读 · 4 评论 -
CDH告警邮件通知
一:告警邮件相关配置点击下面的保存更改邮件服务器主机名称:根据自己实际情况选择,可用smtp.163.com、smtp.qq.com等邮件服务器用户名:对应邮件服务器的邮箱账号,如我的是 xxx.163.com邮件服务器密码:上面xxx.163.com 对应的密码邮件发件人地址:发件人地址一般可以与邮件服务器用户名一样,为xxx.163.com邮件收件人: 接收报警信息的地址,可为任意可用邮件地址二、重启Cloudera Management Service,使得配置生效即可也可原创 2020-12-17 19:15:20 · 587 阅读 · 0 评论 -
ansible使用
1.安装yum install epel-release -yyum install ansible# rpm -ql 安装服务的名称,下面以ansible服务为例rpm -ql ansible |more2.3.shell ansible webservers -m shell -a 'mkdir /tpm/cch' ansible webservers -m shell -a 'ls /tpm/'原创 2021-01-14 20:15:58 · 123 阅读 · 1 评论 -
centos7 安装epel
使用epel源,可以默认会去下载最新的软件安装包yum install epel-release -y原创 2020-12-14 12:33:11 · 274 阅读 · 0 评论 -
linux vim 常用命令
1.删除当前行后面所有的行::,$d2.删除第一行到当前行::1,.d原创 2020-12-14 12:30:51 · 58 阅读 · 0 评论 -
ntp时间同步
1.服务器器信息服务器IP类型192.168.235.180主192.168.235.181从192.168.235.182从2.安装ntp服务所有机器安装ntp服务centos7需要禁用chronysystemctl stop chronyd systemctl disable chronyd安装ntp服务yum install ntp ntpdate -ysystemctl status ntpd #有信新显示表示安装成功3.主服务配原创 2020-06-07 18:57:10 · 286 阅读 · 0 评论 -
opentsdb搭建
hbase搭建参看:https://blog.csdn.net/vtopqx/article/details/78448787hbase下载地址:https://mirrors.ustc.edu.cn/apache/hbase/2.2.6/版本:hbase-2.2.6-bin.tar.gzopentsdb搭建参看:https://www.jianshu.com/p/e151bdb70172opentsdb下载地址:https://github.com/OpenTSDB/opentsdb/rele原创 2020-12-02 14:08:22 · 115 阅读 · 0 评论 -
redis cluster 集群redis5.xj数据迁移
集群搭建参考我上片文章https://blog.csdn.net/sinat_36759535/article/details/106605884现在网上大都是基于3.x和4.x的迁移方案;他们通常是使用唯品会开源的redis-migrate-tool实现但是我亲测,在两个redis cluster都是5.x的情况下,迁移是失败的。https://github.com/tanruixing88/redis-migrate-toolredis5.x集群数据迁移方案如下:最终方案如下:1.将要创建原创 2020-11-26 12:51:30 · 455 阅读 · 0 评论 -
postgresql安装
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpmyum install -y postgresql11-server/usr/pgsql-11/bin/postgresql-11-setup initdbsystemctl enable postgresql-11systemctl start postgresql-1原创 2020-11-25 16:27:04 · 130 阅读 · 0 评论 -
kong插件在请求时添加允许跨域请求头
需求:需要在Kong上设置对websocket允许跨域,类似nginx上实现的效果 add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Headers X-Requested-With; add_header Access-Control-Allow-Methods GET,POST,OPTIONS;需要把类似上面nginx的配置在Kong上配置实现出来利用kong 的Reques原创 2020-11-02 17:29:19 · 2451 阅读 · 0 评论 -
Rancher部署日志
部署Rancher,建议单独部署在一台机器上,和集群分离前面端口是宿主机端口 后面端口是容器端口docker run -d --restart=unless-stopped \ -p 80:80 -p 443:443 \ -v /data/rancher:/var/lib/rancher \ rancher/rancher:latest创建集群,编辑集群配置文件,设置资源预留和限制kubelet: extra_args: enforce-node-allocatable:原创 2020-10-24 16:17:36 · 4294 阅读 · 0 评论 -
nginx通过alias别名使请求路径可以多变
文章目录前言一、root二、alias三、样例总结前言UAT上有一个需求,只有一个公网域名,通过二级域名来区分不同环境,然而对于前端不同环境来说,只有前端只有一套代码,需要打包不同环境的包加不同目录,对于前端来说不友好,所以就通过nginx的配置来解决这个问题这里主要用到root和alias这两个指令都可以定义在location模块中,都是用来指定请求资源的真实路径一、rootlocation /i/ { root /data/w;原创 2020-10-22 10:47:57 · 3873 阅读 · 0 评论 -
haproxy
haproxy可以基于4层也可以基于7层的代理下面的例子是四层代理的例子,基于四层代理的话,当外网访问www.xxx.com域名的时候,DNS会把用户的请求发送到这台haproxy服务的机器上,haproxy根据请求的端口80,443端口把数据流转发到内网五台机器上,由于我们是ranhcer管理的k8s集群,所以需要在rancher的负载均衡上设置kong的ingress的域名为www.xxx.com,这样当数据流转发到k8s集群后,就会被ingress转发到k8s里面的kong网关服务。安装yum原创 2020-10-16 16:55:24 · 330 阅读 · 1 评论 -
rancher 挂载服务的配置文件
记录如下找到需要挂载外部配置文件的服务原创 2020-10-14 19:45:49 · 2091 阅读 · 0 评论 -
mysql离线安装
1.下载https://dev.mysql.com/downloads/mysql/2.安装#创建mysql数据目录mkdir /data/mysqldatamkdir /data/mysql_slow_query_data/ #删除mariadbrpm -qa|grep mariadb rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_6原创 2020-07-25 11:12:54 · 145 阅读 · 0 评论 -
fastdfs搭建
前言fastdfs是一款开源的高性能分布式文件系统(DFS)。其实这里我不想过多阐述,因为fastdfs出现有一段时间了,比较早以前使用它的公司比较,现在使用它的公司占比没有太多,过多的理论可以看他的github详细介绍https://github.com/happyfish100/fastdfs;或者网上找些其他博客看下,也差不多知道它的原理。我写这篇的原因是因为公司使用了该技术。纯粹记录下如何搭建,做个备忘。一、fastdfs安装1.下载安装 libfastcommon#1.安装gccyum原创 2020-09-08 20:45:11 · 194 阅读 · 0 评论 -
docker-compose启动cassandra
1.目录结构如下2.具体内容如下docker-compose.ymlversion: '2'services: cassandra: image: 'docker.io/bitnami/cassandra:3-debian-10' ports: - '7000:7000' - '9042:9042' volumes: - ./cassandra_data:/bitnami environment: - CASSA原创 2020-09-03 16:28:43 · 658 阅读 · 0 评论 -
docker-compose启动zookeeper和kafka
1.目录结构如下2.具体内容zk-single-kafka-single.ymlversion: '2.1'services: zoo1: image: zookeeper:3.4.9 hostname: zoo1 ports: - "2181:2181" environment: ZOO_MY_ID: 1 ZOO_PORT: 2181 ZOO_SERVERS: server.1=zoo1:2888:原创 2020-09-03 16:25:38 · 614 阅读 · 0 评论 -
nginx安装部署
1.Nginx下载地址centos7下载地址:http://nginx.org/packages/centos/7/x86_64/RPMS/下载后安装rpm -ivh nginx-1.12.0-1.el7.ngx.x86_64.rpm启动systemctl start ngixn修改配置文件vim /etc/nginx/nginx.conf/usr/sbin/nginx -s reload # Nginx重启user nginx;worker_processes 1;er原创 2020-08-31 11:19:42 · 119 阅读 · 0 评论 -
rancher-grafana-prometheus监控
1.架构图2.各个export监控的数据指标原创 2020-08-29 15:28:47 · 1560 阅读 · 0 评论 -
两台机器间docker镜像同步脚本
使用场景在工作遇到过需要在一台不能上网的机器上面进行rancher 部署,这个时候,需要把另外一台之前已经安装下载过镜像的docker镜像拷贝到这台机器。有一种最直接的方式是,我们手工在远端机器上面执行docker save -o xx.tar xx_image的方式导出来,然后在手工传到我们进行rancher部署的机器上面因为想简便的做法看有没有直接在两台机器上直接进行同步的脚本之类的工具。正巧在google上搜docker image sync 在github上找到了一个方法现在把连接放在下面原创 2020-08-29 15:08:24 · 1193 阅读 · 0 评论 -
k8s中redis cluster集群数据迁移到外部redis cluster集群
背景在生产环境中,我们使用k8s搭建redis集群,nfs存储也在我们的k8s 的work节点上面(无形挖坑),最开始没有什么问题,但是现在遇到一个问题就是我们迫不得已需要把k8s每台机器都重启升级内核,为了解决k8s为linux上的一个Bug。但是生产的数据不能随随便便停机,最好最数据迁移。虽然我们下面的方式能实现迁移,但是会有一些数据的丢失。而这些数据的丢失在公司容忍范围之内。方案探讨方案一,使用搜狐的cachecloud,网址如下:https://github.com/sohutv/cache原创 2020-08-24 20:39:28 · 716 阅读 · 0 评论 -
常见需要开通的外网权限
docker.mirrors.ustc.edu.cn https地址 Azure 中国 Docker 镜像库reg-mirror.qiniu.com https地址 七牛 Docker 镜像库hub-mirror.c.163.com https地址 网易 Docker 镜像库mirrors.ustc.edu.cn https地址 中国科学技术大学(USTC) Docker 镜像库原创 2020-08-21 09:55:34 · 1792 阅读 · 0 评论 -
dock-compose启动mysql实例
目录结构如下docker-compose.yml编写version: '2'services: mysql_iot: network_mode: "bridge" environment: MYSQL_ROOT_PASSWORD: "123456" MYSQL_USER: "root" MYSQL_PASSWORD: "123456" image: "mysql:5.7.2原创 2020-08-20 20:34:28 · 267 阅读 · 0 评论 -
离线升级centos7内核
获取离线升级包方法:在一台可以上网的机器上面执行如下命令获取离线安装包wget https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgrpm --import RPM-GPG-KEY-elrepo.org wget http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpmrpm -Uvh elrepo-release-7.0-2.el7.elrepo.noarch.rpm # 将包ke原创 2020-08-19 21:15:14 · 2976 阅读 · 3 评论 -
客户端一直尝试挂载nfs服务器问题排查
现象机器负载特别高通过top 命令发现 cpu利用率不高再通过iotop 发现机器的磁盘io不高很难定位是什么问题导致cpu负载升高。定位问题#接下来通过系统日志看下问题:cat /var/log/messages 可以看到,是因为一直去23机器上面找nfs服务临时解决方案是把23机器的nfs 执行命令 systemctl start nfs 把nfs服务启动彻底解决问题#查看机器挂载信息 cat /proc/mounts | grep nfs找到对应nfs挂载信原创 2020-08-19 21:11:54 · 372 阅读 · 0 评论 -
mysql数据库锁表,数据导入失败
产生的情景:通过navicat上执行sql语句,语句内容为删除某张表,并重新插入数据,测试环境测试ok,但是生产上却导入不进去出现锁表的情况,通过在mysql 客户端执行命令发现:show processlist;产生的原因分析:是因为删除的这张表在生产上,有很多服务同时调用,而我们的sql语句要执行删表操作,导致mysql把整个表锁起来解决方案:把通过show processlist; 命令查找到的含有lock的pid删除。所谓的pid在上图已指出。但是问题又来了,就是查询出需要删除的pi原创 2020-08-19 21:09:23 · 679 阅读 · 0 评论