版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 DevOps工具平台介绍本文的目标是开启DevOps的第一个阶段- Level 1 个人级别的DevOps,除了要具备DevOps的思想之外,还要按照DevOps的原则和工具处理自己的工作。分享各种工具的效用和体验也是改进,不仅自己可以收益,还可以为DevOps的下个级别-团队级别的DevOps做好准备。本文描述的软件不区分操作系统类型,所谈到的工具一般都支持Win,MacOS,Linux等平台。注意本文提到的工具,不是说建议安装,而是建议全部安装和正常使用。1 环境准备类 -JDK 8如果要编译Java项目的话,则会用到JDK,而且它还是运行其它很多Java类型DevOps工具的依赖。下载
2、和安装地址:/technetwork/java/javase/downloads/jdk8-downloads-2133151.html校验方法,打开命令行工具,运行 java -versionmartinmbp:dev/bin $ java -versionjava version 1.8.0_111Java(TM) SE Runtime Environment (build 1.8.0_111-b14)Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)2环境准备类 -Git客户端码农必备工具,如果你需要与版本控制
3、系统GitHub、GitLab等打交道的话。Git客户端是必须安装的。下载安装网址: /downloads校验方法,打开命令行工具,运行 git -versionmartinmbp:dev/bin $ git -versiongit version 2.13.1建议熟练掌握这篇 “Git作弊小抄”里的命令。/arslanbilal/git-cheat-sheet/blob/master/other-sheets/git-cheat-sheet-zh.md如果想学习到更全面的Git知识,请参考这份指引:/web/20161121145226/:80/tutorials/git/index校验方法
4、,能在GitHub上完整的操作一次GitHub Flow流程。如果你是Windows操作系统的话可以尝试/ 这个终端模拟器,它能运行linux命令,融合了git和ssh的客户端,可以在Windows下面找到类似Unix的体验。3 容器管理- Docker在本机使用Docker快速体验相关的软件应该是目前很流行的做法,Docker也是软件工程师(本文中不区分Dev还是Ops,统称工程师-engineer)在笔记本或者工作站上运行开发和测试环境的绝佳方法。容器化应用,快速的测试Dockerfile等等也都是DevOps工程师必备的技能,为了保证持续的可用性,建议安装最新的社区CE稳定版,这样既可以
5、用到最新的feature,又可以避免新版本的毛病。下载安装网址: /engine/installation/校验方法,打开命令行工具,运行下列命令:martinmbp:dev/bin $ docker versionClient:Version: 17.06.1-ceAPI version: 1.30Go version: go1.8.3Git commit: 874a737Built: Thu Aug 17 22:53:38 2017OS/Arch: darwin/amd64Server:Version: 17.06.1-ceAPI version: 1.30 (minimum versio
6、n 1.12)Go version: go1.8.3Git commit: 874a737Built: Thu Aug 17 22:54:55 2017OS/Arch: linux/amd64Experimental: truemartinmbp:dev/bin $ docker-machine versiondocker-machine version 0.12.0, build 45c69admartinmbp:dev/bin $ docker-compose versiondocker-compose version 1.14.0, build c7bdf9edocker-py vers
7、ion: 2.3.0CPython version: 2.7.12OpenSSL version: OpenSSL 1.0.2j 26 Sep 2016熟悉掌握Docker相关命令的小抄在这里:/wsargent/docker-cheat-sheet/tree/master/zh-cn要能参考小抄熟练地在本地管理和构建镜像,管理容器的生命周期,访问容器里的服务,运行docker compose文件。校验方法,能在本机运行一个web服务器容器,并访问到web服务器的网页。4 代码版本管理工具注册GitHub的账户,它的功能太多了,要熟练使用GitHub里的所有主要功能,能熟练地管理自己的项目,克
8、隆和学习别人的项目。尽可能的通过GitHub和同事或者朋友协作一些感兴趣的东西。Git Flow 是团队协作不可缺少的分支策略模式,需要熟练掌握这个小抄上的知识:https:/danielkummer.github.io/git-flow-cheatsheet/index.zh_CN.htmlGitHub Flow的分支策略模式是Git FLow的简化版,它的操作方式在这里:/introduction/flow/分支管理的图形工具包括GitHub Desktop版和Atlassian的SourceTree,下载和安装网址如下:/校验方法,能在本机运行运行git命令行、GitHub DeskTo
9、p和SourceTree,能完成一次GitHub Flow流程。5 编码工具Visual Studio Code 这是不仅是一个编辑代码的IDE环境,还是一个Git客户的,用起来很方便。下载和安装网址 :/校验方法,能在本机编辑并提交一个自己的GitHub项目的源代码。能安装Jenkinsfile、Ansible和Dockerfile等插件。Atom是一个我用了很久的文本文件编辑工具,吸引人之处也是大量的扩展插件,变化无穷。下载和安装网址 :https:/atom.io/校验方法,能在本机编辑一个GitHub项目的目录,尝试全局替换关键字功能。STS - spring-tool-suiteSp
10、ring项目的开发工具,是Eclipse的一个变体。校验方法,能在本机打开和编辑更新一个GitHub里的Spring示例项目。6 构建工具 MavenApache Maven它可能是最流行的Java项目构建工具。不做过多解释。注意和本机Java的依赖关系。下载安装网址:/download.cgi校验方法,打开命令行工具,运行 mvn -versionmartinmbp:dev/bin $ mvn -versionApache Maven 3.2.2 (45f7c06d68e745d05611f7fd14efb6594181933e; 2014-06-17T21:51:42+08:00)Mave
11、n home: /Users/martin/Documents/apache-maven-3.2.2Java version: 1.8.0_111, vendor: Oracle CorporationJava home: /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home/jreDefault locale: en_US, platform encoding: UTF-8OS name: mac os x, version: 10.13.1, arch: x86_64, family: mac7 测试运行环境 To
12、mcat是运行和测试Java项目的服务器端的最简单的运行环境。注意和本机Java的依赖关系。下载安装网址:/download-70.cgi 下载二进制压缩包的版本,不要用服务安装版本。这样的好处是,可以复制这个文件夹在本机运行多个实例。校验方法,打开命令行工具,运行 Tomcat服务器端bin目录里的启动脚本,服务器可以正常启动,可以通过网页浏览到Tomcat的默认网页 http:/localhost:80808 制品库 Artifactory OSS 版本Artifactory OSS是Frog的免费开源版本是一个不需要申请License,可以在本机长期使用的工具,是非常好的本地制品库缓存服
13、务器。如果你在本地编译的Java项目都是访问的这个制品库的话,那么你离线了也基本上是能正常工作的,即使在飞机上,在没有互联网的条件下,Java项目还是可以照常编译的,不会遇到下载不了依赖包的尴尬情况。建议尝试专业版。下载安装网址:/open-source/ 下载ZIP包的版本,可以一条命令启停服务器,使用非常方便。校验方法,打开命令行工具,运行 Artifactory服务器端bin目录里的启动脚本,服务器可以正常启动,可以通过网页浏览到Artifactory的默认网页 http:/localhost 第一次启动接受所有默认选项即可9 代码持续检查 SonarQube它是一个支持多种语言的代码静
14、态扫码工具。在不需要你做很多配置的情况下,就可以扫码代码库,这里假设你的本地有几乎所有的项目文件夹。用这个工具提高代码质量,消除技术债务和安全隐患。该软件也有大量的插件。下载安装网址:/downloads/ 下载ZIP包的版本,可以一条命令启停服务器,使用非常方便。校验方法,打开命令行工具,运行 SonarQube服务器端bin目录里的启动脚本,服务器可以正常启动,可以通过网页浏览到Tomcat的默认网页 http:/localhost:9000/sessions/new 第一次启动接受所有默认选项即可,默认密码是 admin / adminmartinmbp:bin/macosx-unive
15、rsal-64 $ pwd/Users/martin/Downloads/devops/sonarqube-6.7/bin/macosx-universal-64martinmbp:bin/macosx-universal-64 $ ./sonar.sh consoleRunning SonarQube.wrapper | - Wrapper Started as Consolewrapper | Launching a JVM.jvm 1 | Wrapper (Version 3.2.3) jvm 1 | Copyright 1999-2006 Tanuki Software, Inc. A
16、ll Rights Reserved.jvm 1 |jvm 1 | 2017.12.05 23:58:35 INFO appo.s.a.AppFileSystem Cleaning or creating temp directory /Users/martin/Downloads/devops/sonarqube-6.7/tempjvm 1 | 2017.12.05 23:58:35 INFO appo.s.a.es.EsSettings Elasticsearch listening on /:9001jvm 1 | 2017.12.05 23:58:35 INFO appo.s.a.p.
17、ProcessLauncherImpl Launch processkey=es, ipcIndex=1, logFilenamePrefix=es from /Users/martin/Downloads/devops/sonarqube-6.7/elasticsearch: /Users/martin/Downloads/devops/sonarqube-6.7/elasticsearch/bin/elasticsearch -Epath.conf=/Users/martin/Downloads/devops/sonarqube-6.7/temp/conf/es10 流水线工具 Jenki
18、nsJenkins或许是应该第一个介绍的工具,不过它的价值却是把以上的单点工具都串联起来。DevOps工程师可以尽可能地,把所有工作都变成自动化的脚本和程序代码,用git版本控制系统管理起来,管理在内部或外部的代码仓库里(你GitHub里项目的质量就是你的简历),对这些代码的执行和处理应该完全交给Jenkins做,特别是需要重复执行的动作,都可以交给Jenkins完成。下载安装网址:https:/jenkins.io/download/ 下载war包的版本,可以一条命令启停服务器,使用非常方便。在MacOS上也用过后台服务的版本,不过这会新建一个jenkins用户,权限问题也很麻烦,现在只用命
19、令行版本,感觉更易于使用。校验方法,打开命令行工具,进入jenkins.war 文件所在目录,运行Jenkins服务器端的启动命令 java -jar jenkins.war ,服务器可以正常启动,可以通过网页浏览到Jenkins的默认网页 http:/localhost:8080 第一次启动接受所有默认选项即可,记住新建的第一个管理员用户的用户名和密码。11 配置管理工具 AnsibleAnsible是一种学习成本较低的配置管理工具,由于它有能很好地和IaaS资源池对接的插件,所以能够方便地调度AWS,Azure的虚拟机,也可以配置F5的负载均衡器。是实现基础架构即代码的很好的工具。使用它可
20、以完成部署环境的搭建过程,用它保证环境搭建的一致性和自动化程度。下载安装网址: /ansible/latest/intro_installation.html在MacOS下面推荐用 brew 安装:brew install ansiblemartinmbp: $ brew install ansibleUpdating Homebrew.xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLin
21、eTools/usr/bin/xcrun= Auto-updated Homebrew!Updated 2 taps (homebrew/core, caskroom/cask).= New Formulaednsdist= Updated Formulaearmadillo folly librdkafka pandoc rtvats2-postiats fwup libvirt payara scamperbyobu fzf lua pdftoedn sql-translatorcabal-install gitbucket lua5.3 pdftoipe syncthingdiff-pdf gopass mpg123 pdnsrec urhemscripten haproxy ndpi poppler vowpal-wabbitfaas-cli jenkins ntopng re2 weechatfirebase-cli lbdb paket redis you-get= Deleted FormulaegeogitError: ansible _1 is already installedTo upgrade to , run brew upgrade ansible在Windows下建议使用虚拟(如Virtual Box的Cent
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度远程英语教育兼职外教合同3篇
- 二零二五年酒店员工福利待遇转让合同示例3篇
- 二零二五版寄卖合同范本:农产品寄售协议书3篇
- 二零二五版植物营养肥料试验与研究服务合同3篇
- 二零二五年度酒类批发市场租赁销售合同2篇
- 二零二五年度耕地承包与农村土地承包权登记发证合同2篇
- 二零二五年度红色文化遗址保护与修复合同3篇
- 二零二五版趸购电合同:电力批发市场交易合同2篇
- 二零二五版高端社区地下车库经营权转让合同3篇
- 二零二五年度智能化办公大楼安全防范系统合同2篇
- 中国高血压防治指南(2024年修订版)解读课件
- 沥青路面施工安全培训
- 机电设备安装施工及验收规范
- 仓库安全培训考试题及答案
- 中国大百科全书(第二版全32册)08
- 初中古诗文言文背诵内容
- 天然气分子筛脱水装置吸附计算书
- 档案管理项目 投标方案(技术方案)
- 苏教版六年级上册100道口算题(全册完整版)
- 2024年大学试题(宗教学)-佛教文化笔试考试历年典型考题及考点含含答案
- 计算机辅助设计智慧树知到期末考试答案章节答案2024年青岛城市学院
评论
0/150
提交评论