当前位置: 首页 > news >正文

资源下载/网站排名优化首页

资源下载,网站排名优化首页,如何建设一个小型网站,做网站基本费用大概需要多少Java调优进阶总目录 持续集成Jenkins环境搭建 Jenkins基于Java开发,服务器必须是要有Java的运行环境! 自动化构建、测试、打包、发布:将本地开发环境基本移植到云端! git、maven、wget、axel【多线程下载工具,下载快…

Java调优进阶总目录

持续集成Jenkins环境搭建

Jenkins基于Java开发,服务器必须是要有Java的运行环境!
自动化构建、测试、打包、发布:将本地开发环境基本移植到云端!
git、maven、wget、axel【多线程下载工具,下载快】、跨服务区异步文件同步rsync!tree。

一、 Jenkins环境搭建

Jenkins支持主从模式,这将会把构建任务分发到多个从节点去执行,这样就可以支撑起多个项目的大量 构建任务,提升构建效率。同时,你可以提供多种环境(如:开发环境、生产环境)来对同一个项目进行测试和构建。
Jenkins的部署方式主要有三种:这里采用第一种方式

  1. 服务器直接运行war
  2. 服务器通过 yum命令下载jenkins安装包进行安装运行
  3. docker容器运行

1.1 安装前置组件步骤

1. 切换管理员,安装组件及Java。

sudo -s
yum install -y git sshpass wget rsync tree
java -version
yum install java-1.8.0-openjdk-devel.x86_64 -y
echo $JAVA_HOME# 配置JAVA_HOME环境变量
vim /etc/profile
source /etc/profile

配置JAVA_HOME环境变量,vim /etc/profile,最后加上,JAVA_HOME路径需确认。

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10- 1.el7_9.x86_64
export JRE_HOME=${JAVA_HOME}/jre 
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 
export PATH=${JAVA_HOME}/bin:$PATH

2. 安装axel

axel多线程下载工具。 rpm卸载命令:rpm -e --nodeps 要卸载的软件包

# 下载 axel rpm包
wget http://download- ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/a/axel-2.4-9.el7.x86_64.rpm
# 安装axel
rpm -ivh axel-2.4-9.el7.x86_64.rpm
# 查看版本
axel --version

3. 安装maven

axel -n 20 https://archive.apache.org/dist/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz tar zxvf apache-maven-3.6.1-bin.tar.gz mv apache-maven-3.6.1 /usr/local/vim /etc/profile
source /etc/profile
# 测试maven安装是否成功
mvn -v
# 创建maven本地仓库目录
mkdir -p /data/maven_repository
# 如果用户没有当前目录权限,则给用户授权
chown -R hky-student:hky-student /data/maven_repository/
# 修改maven中仓库的位置
vim /usr/local/apache-maven-3.6.1/conf/settings.xml
export MAVEN_HOME=/usr/local/apache-maven-3.6.1
export PATH=${MAVEN_HOME}/bin:${PATH}

找到对应标签,将其中内容替换为新建的仓库位置。在其中添加如下内容

<localRepository>/data/maven_repository</localRepository><mirror><id>aliyunmaven</id><mirrorOf>*</mirrorOf> <name>阿里云公共仓库</name><url>https://maven.aliyun.com/repository/public</url>
</mirror>

1.2 安装Jenkins软件

1. 下载jenkins安装包

jenkins.war 没有下载完成会出现该错误。 Error: Invalid or corrupt jarfile jenkins.war

axel -n 20 http://ftp-chi.osuosl.org/pub/jenkins/war/latest/jenkins.war# 创建jenkins新的工作目录
mkdir -p /data/jenkins_data

2.在~下新建脚本:vim jenkins.sh

#!/bin/bash
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el7_9.x86_64
export JENKINS_SERVER_PATH=/root
export JENKINS_HOME=/data/jenkins_datacd ${JENKINS_SERVER_PATH}
nohup java -jar jenkins.war --httpPort=80 >jenkins.log 2>&1 &
# 2>&1 日志格式化的方式 
# 在上面的例子中,0 – stdin (standard input),1 – stdout (standard output),2 – stderr (standard error) 
# 2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到jenkins.log文件中。

以上内容编辑后保存退出

3. 添加脚本执行权限,启动jenkins

这里使用sh 脚本启动Jenkins, 也可以直接使用 nohup java -jar jenkins.war 命令启动。

chmod +x jenkins.sh
# 启动jenkins
/root/jenkins.sh# 修改jenkins配置(插件站点更新,加速联网)
vim /data/jenkins_data/hudson.model.UpdateCenter.xml

将XML内的url的值替换为:http://mirror.xmission.com/jenkins/updates/update-center.json

4. Jenkins开机自启动

在root用户下,设置开机执行:vim /etc/rc.d/rc.local,在最后添加如下启动命令
重启后。浏览器访问或者通过jps命令查看。

vim /etc/rc.d/rc.local
# 最后添加启动命令 /root/jenkins.sh
chmod +x /etc/rc.d/rc.local
# 重启机器
reboot# 查看启动的相关Java程序
jps
# 查看程序进程 及其 端口号
netstat -anp
ps -e|grep java
# 杀死进程
kill pid

5. Jenkins 启动相关的问题记录

  1. 使用/root/jenkins.sh 无法启动, 直接使用命令nohup启动。端口在命令中。通过端口映射,实现外网的页面的访问。
nohup java -jar jenkins.war --httpPort=8080 > jenkins.log 2>&1# 查看java相关程序是否运行
jps -l

1.3 、 测试Jenkins可用性

1 浏览器访问jenkins

提示输入密码,根据页面提示查看密码的方式获取密码并登录,一般用cat命令查看

cat /data/jenkins_data/secrets/initialAdminPassword# 或者在日志中查看
tail -100f ./jenkins.log

2 创建pipeline方式的测试job

在高级项目选项中,配置流水线脚本。

	pipeline {agent any stages {stage('Hello') {steps {echo 'Hello World'}}}}

二、 Jenkins管理界面&&核心配置介绍

小结重点介绍核心配置:用户管理、角色管理、分组管理、插件管理、全局工具配置等。

1 角色管理

  • 之所以提到角色管理,是由于跟用户权限控制有关,在jenkins中控制用户权限需要选择安全策略,比如有:安全矩阵策略、项目矩阵策略、基于角色的策略等,而企业最常用的就是基于角色的策略,本文也是以角色管理为主。
  • 在Jenkins中角色管理分为两种:一种是全局角色,此角色与具体的job无关,是一种全局权限的控制,比如控制用户能不能查看job,能不能配置job;还有一种是项目角色,此角色与具体job有关,可以精细化控制到用户具体能拥有哪些job的哪些权限。

注意:如果想要配置角色管理,必须安装插件才行。
1、安装插件,插件名:Role-based Authorization Strategy

2 全局工具配置:JDK、Git、MVN

非pipeline的Java项目如果要构建成功,全局工具的环境需要配置好

  • 配置入口:Manage Jenkins->Global Tool Configuration
  • 配置方式:指定服务器上已经安装好的服务位置(不需要勾选自动安装)
  • 配置前提:服务器已经安装好jdk1.8、maven3.6.1、git1.8.3.1

三、 Jenkins原理分析-jenkins如何存储数据

本质:就是将本地的构建过程搬到云端:CI/CD。Jenkins核心操作,对应的数据两个部分;jobs存储了构建的相关信息。存储从代码仓库拉取下来的所有代码,workspace。

  • jobs --> 任务:日志、构建基本元数据【存放构建过程】
  • workspace --> 工作空间【存放代码】

在Jenkins中,所有的数据默认都以文件形式存储在$JENKINS_HOME【/data/jenkins_data】目录下。
占用空间最大的目录就是jobs目录和workspace目录。

  • jobs目录:项目在jenkins上的配置、构建日志、构建结果等所在目录
  • workspace目录:项目在jenkins上配置的源码仓库地址下载的源码所在目录,Java中maven的构建操作在此目录下进行。

四、Jenkins Job备份恢复

1 备份需求

  • 只备份重要的信息,保证恢复时除了构建历史,重要配置和job都在,排除掉build目录
  • 备份要周期性的执行,保证至少每天备份一次

2 备份实现

thin backup插件实现备份到备份服务器

2.1 插件设置备份内容

创建备份目标目录, 安装Thin Backup插件, 找到备份管理页面Manage Jenkins->ThinBackUp,进入后选择Settings进行配置。构建的最大备份文件个数为-1表示不限制,备份中排除了build的结果。

mkdir /data/jenkins_backup

配置信息:

# 配置好了每天21:00执行一次
H 21 * * *# 特殊配置了备份时需要将凭证目录secrets下的所有文件进行备份,通过正则表达式
^(secrets|.*)$

2.2 rsync增量同步备份文件

使用rsync命令可以实现在每天jenkins完毕后,将当天新增的同步内容,增量同步到备份服务器上在master上切换到jenkins用户,执行rsync备份命令。

  • 特殊说明:执行sshpass命令前先在CI服务器上执行一次rsync命令(仅需一次即可),只有这次执行通过后,后续再执行sshpass带密码才可使用。后续再执行sshpass前都无需单独再执行rsync命令。
sshpass -p ****** rsync -avz /data/jenkins_backup/ root@39.103.222.177:/data/jenkins_backup/ 
sshpass -p ****** rsync -avz /data/jenkins_backup/ root@39.103.182.34:/root/jenkins_backup/

2.3 脚本自动执行同步【重要】

将rsync做成脚本自动执行,比如jenkins配置的是每天22:31执行同步,那么rsync可以在每天22:35再自动执行登录到部署机上,执行如下操作。

vim /root/backup_jenkins.sh
# 在脚本内填入如下内容
sshpass -p ****** rsync -avz /data/jenkins_backup/root@39.103.182.34:/root/jenkins_backup/# 给脚本添加执行权限
chmod +x /root/backup_jenkins.sh# 添加到系统crontab文件中,切换到root用户
vim /etc/crontab
# 添加内容
35 22 * * * root /bin/bash /root/backup_jenkins.sh &>/dev/null
# 保存完后,重启contab
systemctl restart crond.service

3. 恢复备份文件

  • 使用thinbackup插件,插件安装完毕后,重启jenkins ,然后登录找到hinBackup的配置,点击Settings,配置备份目录,然后恢复的时候就能从备份目录中,找到之前备份的那些文件了。
  • 选择要恢复的备份文件,选择最新的备份文件,点击开始恢复
  • 恢复过程页面是不会有恢复完成提示的,等待几分钟后,执行jenkins的重启链接即可
http://www.jmfq.cn/news/5298715.html

相关文章:

  • 国内三大oa系统/南宁百度seo建议
  • 做漫画网站的需求/培训学校招生方案
  • 12306网站开发费用/陕西省人民政府
  • 淳安网站建设/东莞seo建站排名
  • 网站备案更改需要多久/市场营销咨询
  • 室内设计联盟下载/四川最好的网络优化公司
  • 国内用react做的网站/企业门户网站
  • 上海市网站建设公司/大数据智能营销系统
  • 网站开发 怎样做费用结算/营销推广策略
  • 做网站域名转出挂靠服务器/百度站长之家
  • 南通五建宏业建设工程有限公司网站/济南seo公司
  • 网上做批发的网站有哪些/建站宝盒
  • 国产做的视频网站/图片外链生成工具
  • 佛山网站优化怎么做/辽源seo
  • 武汉 做网站/哪些网站可以seo
  • 佛山知名网站建设公司/必应搜索国际版
  • 深圳房管局官网/韶关seo
  • 新浪网页编辑器/谷歌seo网站排名优化
  • 做网站卖东西流程/最新做做网站
  • 深圳产品网络推广/seo网站推广什么意思
  • 关于网站开发中网站上传/全网搜索关键词查询
  • 电影网站 备案/安卓嗅探app视频真实地址
  • 网站栏目名称大全/网络优化seo薪酬
  • 江苏营销型网站建设公司/seo优化顾问服务阿亮
  • wordpress数据查询系统/seo免费优化软件
  • 网页隐藏网站代码/淘宝关键词
  • 做网站准备材料/sem是什么岗位
  • 有个网站专做品牌 而且价格便宜/百度搜索资源平台
  • 怎么做.com的网站/百度关键字搜索排名
  • 设计说明翻译/网站内链优化