Jenkins继续集成2

节点管理
删除之前的节点
默认状态
在这里插入图片描述
在这里插入图片描述
这个表示master除了做持续集成和持续交付外,本身也要做构建,如果在上面创建的项目越来越多的时候,如果只在一台机器上建,会负载不了,一般情况下,都会把构建任务从master分离出来
重建创建vm5

主机
cd /var/lib/libvirt/images/
rm -f vm5
qemu-img create -f qcow2 -b small-new.qcow2 vm5
server5
yum install -y java-1.8.0-openjdk.x86_64

在jenkins新建节点,专门做构建的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如果不让master不工作的话,只需要将数量改为0就可以了
在这里插入图片描述

问题:如果gitlab的密码不知道了

cd /etc/gitlab
gitlab-ctl uninstall
gitlab-ctl cleanse
//rm -f initial_root_password
//gitlab-ctl reconfigure

在这里插入图片描述

find / -name *gitlab*

再重新部署gitlab

server4
cd /etc/yum.repos.d/
ls
scp docker.repo server5:/etc/yum.repos.d/
cd /etc/sysctl.d/
ls
scp docker.conf server5:/etc/sysctl.d/
cd /etc/docker/
scp -r certs.d/ daemon.json server5:/etc/docker/
server5
yum install -y docker-ce
sysctl --system
systemctl enable --now docker
vim /etc/hosts
172.25.0.1 server1 reg.westos.org
systemctl restart docker
docker info
docker pull nginx

在这里插入图片描述
新建用户
控制用户权限
在这里插入图片描述
在这里插入图片描述
新建的用户就没有权限了。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
gitlab密码重新获得之后,新建项目
在这里插入图片描述

server2
git push -u origin main

之后刷新
问题:如果jenkins出现以下情况
在这里插入图片描述
是因为server3的公钥没有复制

server3
cd .ssh/
cat id_rsa.pub  #将其中的内容复制到gitlab  SSH中

先把docker_project_test 先禁用
如果test的控制台输出也出错了
可能是因为server5上没有安装git。

yum install -y git

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
把很多自由风格的项目串成流水线
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
构建主机时固定的,可以以下操作

server5
cd /tmp/workspace/
cd devops
ls
ssh-keygen
ssh-copy-id server4

如果构建主机不是固定的,
ssh-agent 帮你在这个里直接缓存你的凭据。
构建凭据
在这里插入图片描述
在这里插入图片描述
自动触发
在这里插入图片描述
在这里插入图片描述
高级
在这里插入图片描述
在这里插入图片描述
保存

jenkins结合钉钉报警
安装插件
在这里插入图片描述
创建一个报警群
在这里插入图片描述
在智能群助手中創建一個机器人,关键字jenkins,复制webhook地址,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
测试上传失败
在这里插入图片描述

在这里插入图片描述
通过gitlab做版本控制
创建个项目
在这里插入图片描述
在这里插入图片描述

server2
vim Jenkinsfile #将之前的代码写到里面
git addJenkinsfile
git commit -m "add Jenkinsfile"
git push -u origin main

做修改
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在master的设置中
在这里插入图片描述
集合ansible
在jenkins这台主机上安装ansible

rpm -ivh ansible-2.8.5-1.el7.noarch.rpm
yum install -y ansible-2.8.5-1.el7.noarch.rpm


有本地源则创建一个ansible源
cd /etc/yum.repos.d/
vim ansible.repo
yum install ansible

在这里插入图片描述
把四个包访问一个目录里,yum install *

ansible -v
cd /etc/ansible/
ls
cat ansible.cfg #主配置文件
cat hosts #对象

gitee
在这里插入图片描述

server2
git clone git@172.25.254.0.2:root/ansible.git
cd ansible/
ls
server4,5
systemctl stop docker
systemctl stop docker.socket
netstat -antlp

推ansible的play-book在server4,5
server4作为测试环境,5作为生产环境
jenkins会通过git方式从仓库中拉取下来,所有的信息都是放在仓库中,做任何变更都有版本控制的。

server2
vim ansible.cfg

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

mkdir inventory
cd inventory/
ls
vim test 
[test]
172.25.0.4
vim prod
[prod]
172.25.0.5
cd ..
vim playbook.yml
---
- hosts:all
  tasks:
  - name: install httpd
    yum:
        name: httpd
        state:present
  - name: create index.html #创建模板
    template:
      src: index.html.j2
      dest: /var/www/html/index.html
  - name: start httpd
    service:
      name:httpd
      state:started
      enabled:yes
vim index.html.j2
{{ ansible_hostname }}
ls
git add .
git status -s
git commit -m "add playbook.yaml"
git push -u origin main

在这里插入图片描述
在jenkins拉取,新建项目
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

server3
cd /var/lib/jenkins/
cd workspace/
ls

如果是构建主机,比如是server5,构建的是/tmp/,那就在/tmp/下面
在ansible的主配置文件中,连接远程是要通过ssh
ssh devops@172.25.0.4 这个用户是在远程主机上创建的,然后通过sudo来运行,如果不做这个设置的话,会通过jenkins用户去访问,但这个是错的

server4,5
useradd devops
visudo

在这里插入图片描述

server4
passwd devops
设置用户密码
server5
echo westos | passwd --stdin devops
server3
su - jenkins
cat /etc/passwd
usermod -s /bin/bash jenkins
su - jenkins
ssh-keygen 
ssh-copy-id devops@server4
ssh-copy-id devops@server5
ssh devops@server4 #测试
ssh devops@server5
ssh devops@172.25.0.4
ssh devops@172.25.0.5
然后退出来就行
ansible- playbook -i inventory/test playbook.yml

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值