- 博客(158)
- 收藏
- 关注
原创 dolphinscheduler部署文档
参考文档:https://blog.csdn.net/weixin_47884711/article/details/123523144一、环境平台:HDP(Ambari)dolphinscheduler版本:1.3.5mysql驱动:mysql-connector-java-8.0.22.jar配置目录:/data/soft/dolphinscheduler-incubating-1.3.5分发节点信息:192.168.3.203二、集群搭建1、在203节点新建安装目录。
2022-08-24 16:00:23
865
原创 运维开发学习心得
我的学习心得:用了小一个月时间写了这个运维管理平台,算是一段学习的总结吧!实现了一些基本的功能,跟生产环境的系统还有很大距离!现在一想其实实现起来没想象的那么遥不可及,可以说用到的技术都是基础的东西,并没有多高深,所以学习起来并不是很难。自己要完成这样的平台,思路很重要,比如数据可视化该怎么展示,数据怎么处理等等。涉及到从前端到后端再到数据库表设计及存储的一系列流程,这些都要有所了解,否则会局限你的思路。因此写好一个比较完善的平台,开发能力会有很大的提高。当然薪资也紧跟着蹭蹭的涨啦!该怎么学习呢?刚入
2021-11-19 15:50:49
413
原创 linux解决故障思路学会请关注
在有那么一瞬间,遇到服务器故障可能会手足无措, 完全不知道自己应该干些什么,该如何处理。 这里就简单记录一下解决服务器故障的思路,以便今后迅速定位问题。问题的前因后果尽可能搞清楚问题的前因后果,不要一下子就扎到服务器前面,你需要先搞明白对这台服务器有多少已知的情况,还有故障的具体情况。不然你很可能就是在无的放矢必须搞清楚的问题有:o故障的表现是什么?无响应?报错?o故障是什么时候发现的?o故障是否可重现?o有没有出现的规律(比如每小时出现一次)?o最后一次对整个平台进行更新的内容是什.
2021-11-19 14:59:11
942
原创 Linux 系统故障排查
导读有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源。这时候就需要登录服务器进一步深入分析问题的根源。那么分析问题需要有一定的技术经验积累,并且有些问题涉及到的领域非常广,才能定位到问题。所以,分析问题和踩坑是非常锻炼一个人的成长和提升自我能力。如果我们有一套好的分析工具,那将是事半功倍,能够帮助大家快速定位问题,节省大家很多时间做更深入的事情。本篇文章主要介绍各种问题定位的工具以及会结合案例分析问题。分析问题的方法论:套用5W2H方法,可以提出性能分析的几个问题What-现象是
2021-09-25 21:40:31
318
原创 k8s故障解决方法
pod处于pending状态可能是什么问题?1.镜像问题2.可能是node资源不足3.没有匹配的节点标签4.有污点node是not reay状态可能原因:1.kubelet启动有问题2.kubelet与apiserver网络问题3.kubelet携带证书问题,例如过期了service 访问异常排查1.service是否关联pod2.service指定target-port端口是否正常3.pod工作是否正常4.service是否通过dns工作5.kube-proxy正常工作6
2021-08-24 19:55:45
298
原创 python经典练习题
自动化测试 - python语言篇1、python面试题序号 面试题1 python 常用到的库 和 常遇到的异常2 python当中如何操作数据库?3 工作中使用python去做过哪些事情?为什么要使用?4 简述Python的可变类型和不可变类型?5 python为什么使用*args和**kwargs6 python 中的 __new__和 __init__方法的作用是什么?7 单元测试框架的断言方式?8 装饰器 - 知道它是什么?9 深浅拷贝、垃圾回收?在面试自动化岗位的过程中,
2021-08-17 18:39:38
602
原创 python编写自动启动tomcat脚本
#!/usr/bin/python import subprocess import datetime res = subprocess.Popen("ps -ef |egrep -v grep | grep deployer",stdout=subprocess.PIPE,shell=True) tomcats=res.stdout.readlines() counts=len(tomcats) if counts>1: dt=datetime.datetime.now(
2021-08-02 10:37:58
391
原创 k8s检测脚本
export KUBECONFIG=/path/to/your/kubernetes.yamlpods=""total=`/usr/local/bin/kubectl --kubeconfig=$KUBECONFIG get pods -o wide | grep service | sed -n '$='` # 1for pod in `/usr/local/bin/kubectl --kubeconfig=$KUBECONFIG get pods -o wide | grep service |
2021-08-02 10:35:23
474
原创 kubernetes日志回滚测试
结论容器挂掉后自动重启,pod不会重新创建,podname不会发生变化,k8s保留上次挂掉容器的日志信息手动重新部署,podname发生变化,不能获取到上次容器崩溃时的日志信息问题咨询电话:18311061660 ...
2021-07-27 10:21:47
292
转载 python监控服务器应用日志,推送钉钉机器人,实时关注日志异常
生产环境多台服务器上部署了多个应用,日志出现报错时,无法及时反馈到开发人员。部署一个大型的运维监控应用,不但耗资源,而且配置也不简单。简简单单写个python脚本来监控服务器日志就简单多了,废话不多说,直接上脚本。主要逻辑:1. 使用python的subprocess模块,执行shell命令,“tail -f” 来监听日志文件2. 对输出的日志文件,逐行比对字符串,如果匹配到预设的字符串则开始记录,keywords中配置需要预设的异常字符串3. 开始记录日志至数组中,可通过rows来预设
2021-07-24 15:47:25
513
转载 Kubernetes 集群优化大法
一、节点配额和内核参数调整对于公有云上的 Kubernetes 集群,规模大了之后很容器碰到配额问题,需要提前在云平台上增大配额。这些需要增大的配额包括:虚拟机个数vCPU 个数内网 IP 地址个数公网 IP 地址个数安全组条数路由表条数持久化存储大小参考gce随着node节点的增加master节点的配置:1-5 nodes: n1-standard-16-10 nodes: n1-standard-211-100 nodes: n1-standard-4101-250
2021-07-16 15:00:17
595
原创 python-lambda和推导式
#请把下面的函数转换成匿名函数# def add(x,y):# return x+y# l=add(4,5)# print(l)#改成lambda函数后# sum1=lambda x,y:x+y# print(sum1(4,5))# dic = {'k1':50,'k2':80,'k3':90}# func=lambda k:dic[k]# print(max(dic,key=func))#改成一句话# print(max(dic,key=lambda k:dic[k]))
2021-07-15 16:50:43
218
原创 python-内置函数
#!/usr/bin/env python#_*_ coding:utf-8 _*_#l.locals()和globals()# def func():# x=1# y=2# print(locals())# print(globals())# func()############################################################ 2.eval,exec,和compile# eval("print(456)"
2021-07-15 15:44:53
124
原创 python-列表推导式
#列表推导式列子#例子1:# y=2# for i in range(10):# print(i*y)#列表推导式是for循环的简写# l=[i*y for i in range(10)]# print(l)l=[{'name':'v1','age':'22'},{'name':'v2'}]# for dic in l:# print(dic['name'])# name_list=[dic['name'] for dic in l]# print(name_lis
2021-07-14 17:51:24
128
原创 python-装饰器
一、简单的装饰器1.为什么要使用装饰器呢?1.装饰器的功能:在不修改原函数及其调用方式的情况下对原函数功能进行扩展2. 装饰器的本质:就是一个闭包函数一个简单的装饰器:实现计算每个函数的执行时间的功能好理解版本:import time def wrapper(func): def inner(): start=time.time() func() end=time.ti
2021-07-12 20:23:05
85
原创 python之闭包
闭包:1.闭 :内部的函数 2.包 :包含了对外部函数作用域中变量的引用#如果x定义了,他就用自己的了,就实现不了闭包def func(): x=21 def inner(): x=10 print(x)闭包例子def func(): x=21 def inner(): '''闭包函数''' print(x)return inner()判断闭包函数的方法:closure#输出的__closure__有cell元素 :是闭包.
2021-07-12 17:30:39
67
原创 k8s基础问答
1.k8s基础组件有哪些,什么功能2.一个pod创建过程3.网络选型需要注意什么4.pod中penging状态,是什么原因产生的,pod出问题,排查思路5.k8s发布策略(4种)6.手写raft7.你们监控用什么,怎么利用普罗米修斯监控pod信息,k8s状态,如果你来设计相关的监控如何做。8.如何利用k8s实现滚动更新,我说的是配置文件机制。9.statefulset是怎么实现滚动更新的10.k8s架构遇到什么问题,如何处理。11.kubectl exec实现原理
2021-05-07 19:48:05
151
原创 一个pod生成过程
kubectl -> apiserver -> (创建资源文件)-> etcd(一条数据)-> schduler(进行调度) -> kubelet检测到Pod调度过来 -> 通过container runtime 运行Pod,并更新到apiserver。用户通过 REST API 创建一个 Podapiserver 将其写入 etcdscheduluer 检测到未绑定 Node 的 Pod,开始调度并更新 Pod 的 Node 绑定kubelet 检测到有新的 P
2021-05-06 17:06:12
336
原创 k8s pod 状态 查询
CrashLoopBackOff: 容器退出,kubelet正在将它重启InvalidImageName: 无法解析镜像名称ImageInspectError: 无法校验镜像ErrImageNeverPull: 策略禁止拉取镜像ImagePullBackOff: 正在重试拉取RegistryUnavailable: 连接不到镜像中心ErrImagePull: 通用的拉取镜像出错CreateContainerConfigError: 不能创建kubelet使用的容器配置CreateContai
2021-04-28 18:11:18
3120
原创 shell实例:临时解决rsync自动断开的问题
需求:公司有两台备份服务器,一主一从,每天晚上8点开始从服务器就开始同步主服务上的一些数据,但是rsync总会断开连接,尝试了好多方法都没有用,写了个脚本临时解决这个问题,如下#!/bin/bashrsync -avzP --timeout=60 -e "ssh -p X" X.X.X.X:/kejiandata/streams/tarena/streams/* /hzdata/streams/while ((1 < 100));do ps aux | grep /kejianda
2021-03-05 10:15:43
1725
1
原创 2 CDH 部署hadoop
1. 部署环境CDH是Cloudera公司对整体hadoop集群环境进行监控与管理的企业级大数据管理平台。Cloudera Manager分为:Cloudera Manager Server:对整个集群提供监控与管理操作。Cloudera Manager Server通过部署在不同设备上的Cloudera Manager Agent进行管理整体集群。Cloudera Manager Server需要部署在一台设备上。Cloudera Manager Agent:部署在每个需要监控与管理的设备上。
2021-02-02 17:06:26
816
原创 1 cdh介绍
1. 介绍Hadoop是一个由Apache基金会所开发的分布式系统基础架构。 用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群威力进行高速运算和存储。 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large d
2021-02-02 16:00:08
613
原创 2 Hadoop 正式安装
1. 部署1.1 安装hadoopmkdir /opt/bigdatatar xf hadoop-2.6.5.tar.gz -C /opt/bigdata/cd /opt/bigdata/ln -sf hadoop-2.6.5 hadoop详细过程[root@node01 ~]# mkdir /opt/bigdata[root@node01 ~]# cd /usr/local/src/[root@node01 src]# lshadoop-2.6.5.tar.gz InstallJ
2021-02-02 15:30:24
309
原创 1 Hadoop 环境准备-基础介绍
1. 环境准备2. 服务器优化name="node04"hostnamectl set-hostname $nameecho $name > /etc/hostnamebashsed -i 's@SELINUX=enforcing@SELINUX=disabled@g' /etc/selinux/configsetenforce 0getenforce\cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtimeecho "*/5 * *
2021-02-02 10:03:38
130
原创 9 Nginx location重点核心非常重要
1. 作用 location指令的作用是可以根据用户请求的URI来执行不同的应用,其实就是根据用户请求的 网站地址URL匹配,匹配成功即进行相关的操作。2. 语法location使用的语法例子:location [=|~|~*|^~] uri{ …}解释location [=|~|~*|^~|@] uri {…}指令 匹配标识 匹配的网站网址 匹配URI后要执行的配置段 上述语法中
2021-02-02 09:05:17
128
原创 10 Nginx Rewrite配置
1. 介绍和Apache等web服务软件一样,Nginx Rewrite的主要功能也是实现URL地址重写,Nginx的 Rewrite规则需要PCRE软件的支持,即通过Perl兼容正则表达式语法进行规则匹配的,前文在安装Nginx软件时就已经安装了这个PCRE软件,以及让Nginx支持Rewrite的功能,默认参数编译 Nginx就会安装支持Rewrite的模块,但是,也必须要PCRE软件的支持。2. 语法指令语法:rewrite regex replacement [flag];默认值:non
2021-02-02 09:05:04
136
原创 11 Nginx 负载均衡
1. 介绍官方介绍连接:http://nginx.org/en/docs/http/ngx_http_upstream_module.html2. 环境准备2.2 安装Nginx软件下面将在以上4台服务器上安装Nginx。完整的安装过程见上面的说明,这里只写出安装的命令部分。安装依赖软件包命令集合。yum install openssl-devel pcre-devel -y安装Nginx软件包的命令集合wget http://nginx.org/download/nginx-1.
2021-02-02 09:04:47
112
1
原创 Nginx http2协议和认证和修改源码配置(终极升级篇)
Nginx http2协议1. 介绍 HTTP 2.0 的主要目标是改进传输性能,实现低延迟和高吞吐量。从另一方面看,HTTP 的高层协议语义并不会因为这次版本升级而受影响。所有HTTP 首部、值,以及它们的使用场景都不会变。 现有的任何网站和应用,无需做任何修改都可以在HTTP 2.0 上跑起来。不用为了利用HTTP 2.0 的好处而修改标记。HTTP 服务器必须运行HTTP 2.0 协议,但大部分用户都不会因此而受到影响以下都是基于我的ubuntu16.04上操作,centos的
2021-02-02 09:04:29
1047
原创 one MySQL mysqldump
1. 介绍mysqldump是mysql用于转存储数据库的实用程序。它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等。2. 参数--all-databases , -A 导出全部数据库。mysqldump -uroot -p --all-databases--all-tablespaces , -Y 导出全部表空间。mysqldump -uroot -p --all-databases --all-tablespaces-
2021-02-01 17:27:58
70
原创 8 Nginx hash
hashnginx的负载均衡时有一个hash $request_uri的选项,这个是类似于LVS的dh。是针对客户端访问的uri来做的绑定。这样客户端访问同一个uri的时候,会被分配到同一个服务器上去。这样提高了缓存的命中率。 过程:每个uri进行hash计算得到一个数值,这个数值除以整个节点数量取余数。(取模算法) 缺点:如果一个节点挂了,那么整个全局都会乱掉。因为整个的节点数变了,因为除数变了。2. 一致性hash一致性hash的采用的是除数特别大,
2021-02-01 11:00:39
503
1
原创 7 Nginx 优化
1. 介绍目录访问权限标准情况下,软件默认的参数都是对安装软件的硬件标准来设置的,⽬前我们服务器的硬件资源远远⼤于要求的标准,所以为了让服务器性能更加出众,充分利⽤服 务器的硬件资源,我们⼀般需要优化APP的并发数来提升服务器的性能。2. cpuNginx是主进程+⼯作进程模型• worker_processes 1; ⼯作进程数量 按CPU的总核⼼调整• worker_cpu_affinity 0010 0100 1000; CPU的亲和⼒• worker_connections 1024;
2021-02-01 10:56:46
76
原创 0 Nginx常见配置
1. 介绍目录访问权限 allow 192.168.1.0/24; deny all; #return 404; return http://www.jd.com;}2. 认证登录location /b { auth_basic "请输入账号和密码"; auth_basic_user_file /etc/nginx/htpasswd;}3. 反向代理location / { index index.php index.html inde
2021-02-01 10:53:18
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅