DevOps工具之jenkins安装
DevOps
DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。
DevOps是一组过程、方法与系统的统称,用于促进开发、技术运营和质量保障(QA)部门之间的沟通、协作与整合。
通俗的来讲,DevOps出现是为了消除运维、开发、测试等人员之间的隔阂,通过自动化流程来使得整体过程更加快捷和可靠
百科说是一组过程、方法什么的,让人一头雾水,我个人更愿意将它视为一种思想。就是根据DevOps的思想理念来重新梳理整个软件开发生命周期,在全流程上生成新的流程和规范
DevOps的优势
DevOps做大的好处就是高效交付,这也正是它的初衷
各人员之间能高效的参与项目,增加认同,消除隔阂
CI/CD更便捷高效,团队能更快的得到相关反应
DevOps常用工具
DevOps工具想当之多,每个流程都有一系列的工具
工具类型及对应的不完全列举整理如下:
- 代码管理(SCM):GitHub、GitLab、BitBucket、SubVersion
- 构建工具:Ant、Gradle、maven
- 自动部署:Capistrano、CodeDeploy
- 持续集成(CI):Bamboo、Hudson、Jenkins
- 配置管理:Ansible、Chef、Puppet、SaltStack、ScriptRock GuardRail
- 容器:Docker、LXC、第三方厂商如AWS
- 编排:Kubernetes、Core、Apache Mesos、DC/OS
- 服务注册与发现:Zookeeper、etcd、Consul
- 脚本语言:python、ruby、shell
- 日志管理:ELK、Logentries
- 系统监控:Datadog、Graphite、Icinga、Nagios
- 性能监控:AppDynamics、New Relic、Splunk
- 压力测试:JMeter、Blaze Meter、loader.io
- 预警:PagerDuty、pingdom、厂商自带如AWS SNS
- HTTP加速器:Varnish
- 消息总线:ActiveMQ、SQS
- 应用服务器:Tomcat、JBoss
- Web服务器:Apache、Nginx、IIS
- 数据库:MySQL、Oracle、PostgreSQL等关系型数据库;cassandra、mongoDB、redis等NoSQL数据库
- 项目管理(PM):Jira、Asana、Taiga、Trello、Basecamp、Pivotal Tracker
下图为国内常用的工具
CI/CD的概念
CI (Continuous integration-持续集成)
持续集成是指多名开发者在开发不同功能代码的过程当中,可以频繁的将代码行合并到一起并切相互不影响工作。
CD(Continuous Delivery-持续交付,Continuous Deployment-持续部署)
持续部署是基于某种工具或平台实现代码自动化的构建、测试和部署到线上环境以实现交付高质量的产品,持续部署在某种程度上代表了一个开发团队的更新迭代速率。持续交付是在持续部署的基础之上,将产品交付到线上环境,因此持续交付是产品价值的一种交付,是产品价值的一种盈利的实现。
Jenkins部署与基本配置
Jenkins是一款最常用开源 CI&CD 软件,用于自动化各种任务,包括构建、测试和部署软件。
jenkins可以通过容器、独立的java程序(war包)或是系统包(rpm包)安装
环境准备:
机器需求:
- 最低256 MB 内存,建议大于 512 MB
- 建议10 GB 以上的硬盘空间,足够存放以后使用的Jenkins 和 Docker 镜像
环境需求:
- Java8( JRE 或者 JDK 都可以)
系统为cnetos7
安装jdk
jdk按官方要求,要在8以上,也可以用java-1.8.0-openjdk
[root@jenkins ~]# yum -y install java-1.8.0-openjdk
[root@jenkins ~]# java -version
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (build 1.8.0_282-b08)
OpenJDK 64-Bit Server VM (build 25.282-b08, mixed mode)
安装jenkins
尽量使用最新的稳定版
从官网下载安装:https://pkg.jenkins.io/redhat-stable/
这里我使用清华的源直接安装快一点
[root@jenkins ~]# wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/jenkins-2.277.1-1.1.noarch.rpm
root@jenkins ~]# rpm -ivh jenkins-2.277.1-1.1.noarch.rpm
warning: jenkins-2.277.1-1.1.noarch.rpm: Header V4 RSA/SHA512 Signature, key ID 45f2c3d5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:jenkins-2.277.1-1.1 ################################# [100%]
配置文件修改
rpm安装的配置文件在/etc/sysconfig/jenkins
可根据个人需求修改
修改如下内容:
JENKINS_USER="root"
JENKINS_PORT="8888"
启动jenkins
[root@jenkins ~]# systemctl start jenkins
#启动并开机自启
[root@jenkins ~]# systemctl enable --now jenkins
等待加载完成
#查看密码,粘粘过去
[root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
1dd239738200404ca732e481643765bf
安装插件
输入密码,等待初始化完成后安装插件
选择安装推荐插件,等待安装完成
配置管理员用户,或者用默认的admin用户
配置实例路径,就是jenkins资源使用路径