OpenShift压测工作必不可少,使用Jmeter搞起来
毫无疑问OpenShift是一个优秀的容器平台,但是我们有没有想过这些问题呢?OpenShift集群最多能运行多少个容器?每个请求的延时是多少呢?当有大量Pod并发启动时,容器平台是否还能轻松应对呢?等等这些问题在容器平台上生产时,我们都得心里有数。否则随着容器平台的压力不断扩大,到了无法承受之痛时,而我们却毫不知情。那么对OpenShift容器平台做压力测试就成了一项必不可少的工作。但是怎样去做呢?业界使用最多的方法就是用Jmeter来模拟API请求进行压测。 新建测试计划与进程组 创建一个名为”测试OpenShift Api”的Test Plan 右击”测试OpenShift Api”,Add->Threads(Users)->ThreadGroup,创建名为”模拟客户端”的Thread Group 右击”测试OpenShift Api”,Add->Listener->Aggregate Report,创建名为“测试OpenShift API Report”的Aggregate Report 通过模拟请求获取访问OpenShift平台的ACCESS_...
Airflow简单介绍及测试安装
Airflow 是什么 Airflow 是 Airbnb 开发的用于工作流管理的开源项目,自带 web UI 和调度。它支持编程方式创建工作流,同时在平台上管理和监控工作流程的状态。 Airflow 于 2016 年 3 月加入了 Apache Software Foundation 的孵化计划,所以它未来的持续维护性有保障。 官方地址:https://github.com/apache/airflow,现有11318个star,732个贡献者,是一个热门的开源项目。 先看下这篇介绍 :浅谈调度工具——Airflow 为什么使用 Airflow 智能调度 图形化展示任务关系 程序化流水线定义 流水线间数据交互 扩展性强 分布式,可靠性高 执行方式多样化,除了定时执行还可手动触发,api 触发等 Airflow 常用的场景Airflow 主要用于执行预定的批处理作业。它能够很好地管理不同的批量作业的关系,并给将复杂的关系图形化展示。 系统或运用的日常维护任务,批量作业 CD 部署任务,灰度发布,蓝绿部署等 数据分析,数据流管道管理 一句话:任何批量任务或者需要手动去触发执...
Ansible常用模块
lookup 函数在 playbooks 中可以使用一个名为 lookup()的函数,该函数用于 ansible 从外部资源访问数据,根据第一个参数的不同,该函数具有不同的功能,典型的就是读取外部文件内容。lookup()只在本地执行,而不是在远程主机上执行。例子: 123456debug: msg="{{ lookup('file', '/etc/foo.txt') }}"debug: msg="password - {{ lookup('password', '/tmp/random_pass.txt length=10') }}"debug: msg="{{ lookup('env','HOME') }} is an environment variable"debug: msg...
CI-CD流程-命令行方式与Jenkins-Blue-Ocean方式
命令行模式 环境准备 克隆代码 1git clone 启动私有docker hub 12 docker run -d -p 5000:5000 -v /data/registry:/var/lib/registry --name registry --restart=always registry 制作建置环境 1docker build -t localhost:5000/maven dockers/maven dockers/maven/Dockerfile 1234FROM ## 安装openjdk## 安装MavenCMD ["mvn"] 集成、测试、验证 进行自动化测试 1docker-compose run --rm test docker-compose.yaml 123456789101112131415161718192021222324data: image: alpine volumes: - ~/.m2:/root/.m2 command: "/bin/bash&quo...
Elasticsearch-+-Kibana添加到Systemctl
/usr/lib/systemd/system/kibana.service 1234567891011[Unit]Description=Elasticsearch[Service]PIDFile=/home/vagrant/kibana-5.1.1-linux-x86_64/kibana.pidExecStart=/home/vagrant/kibana-5.1.1-linux-x86_64/bin/kibanaUser=vagrantRestart=alwaysLimitMEMLOCK=infinityLimitNOFILE=1048576LimitNPROC=1048576 /usr/lib/systemd/system/elasticsearch.service 1234567891011[Unit]Description=Elasticsearch[Service]PIDFile=/home/vagrant/elasticsearch-rtf/elasticsearc...
Gitea访问使用KeyCloak作为用户管理
一、安装keyCloak 二、配置KeyCloak,添加ClientsClients -> createClient ID: devops-oidcEnabled: trueClient Protocol: openid-connectAccess Type: confidentialValid Redirect URIs: /* 三、配置Gitea,添加Authentication SourcesSite Administration -> Authentication Sources -> Add Authentication SourceOAuth2 Provider: OpenID ConnectClient ID(key): devops-oidcClient Secret: <keycload 中 devops-oidc Credentials中查询>OpenID Connect Auto Discovery URL: http:///auth/realms/master...
Git-+-Jenkins-提交Git-触发Jenkins-Job
利用git的Hook机制 .git/hooks/pre-push 123#!/bin/bashecho ====== trigger jenkins job: maglev-verify in 10s =======(sleep 10 && .git/hooks/post-push) & .git/hooks/post-push 123#!/bin/bashbranch=$(git rev-parse --abbrev-ref @{upstream})curl -k --user ${USER}=${TOKEN} http://${JENKINS_URL}/job/${JOB_NAME}/buildWithParameters --data-urlencode TAG=$branch
Jenkins-Pipeline触发机制
设置好了功能强大的流水线后,接下来我们要做的就是去执行流水线,如果都靠手动去触发流水线,显然不符合带着自动化基因新一代工程师的风格,必须自动触发。那么Jenkins的Pipeline支持哪些触发机制呢。一起来看一下。 定时触发:croncron规则与crontab的规则是一样的 12345678910111213pipeline{ agent any triggers{ cron('0 0 * * *') } stages{ stage('半夜触发'){ steps{ echo "凌晨执行" } } }} 轮询代码仓库周期性检查代码,看代码是否有更新。这种方式需要使用 12345678910111213pipeline{ agent any triggers{ pollSCM('* * * * *') } stages{ stage(...
Jenkins-Pipeline语法实例
Jenkins Pipeline支持的指令 指令名 说明 作用域 agent 定义执行任务的代理 stage 或pipeline environment 设置环境变量 stage或pipeline tools 自动下载并安装指定的工具,并将其加入到PATH变量中 stage或pipeline input 暂停pipeline,提示输入内容 stage options 配置Jenkins pipeline本身,如options{retry(3}},指pipeline失败时再重试2次 stage 或 pipeline parallel 并行执行多个step stage parameters 执行pipeline前传入一些参数 pipeline triggers 定义执行pipeline的触发器 pipeline when 定义阶段执行的条件 stage build 触发其他的job steps options Jenkins Pipeline配置参数 参数名 说明 例子 buildDiscarder 保留最近历史构建记录的数...
Jmeter简单配置使用
创建Test Plan 测试计划File->New或者直接点击New图标 添加Thread Group 测试任务右击测试计划,Add->Threads(Users)->Thread Group 添加HTTP Cookie 请求Cookie管理右击Thread Group,Add->Config Element->HTTP Cookie Manager 添加HTTP Header 请求头管理右击Thread Group,Add->Config Element->HTTP Header Manager 添加HTTP Request 请求右击Thread Group,Add->Sampler->HTTP Request 添加User Defined Variables 用户定义变量右击Thread Group,Add->Config Element->User Defined Variable 添加报告Result Tree 结果树右击Thread Group,Add->Listener->View R...






