记录关于Devops运维,虚拟化容器云计算,数据库,网络安全等各方面问题。
k8s 部署jenkins实现动态slave 一、创建namespacekubectl create namespace devops 二、创建PVC 我的k8s集群已经配置过nfs-storageclass了,所以下面只创建了pvc,pv是自动创建的apiVersion: v1 kind: PersistentVolumeClaim metadata: name: jenkins-pvc namespace: devops spec: storageClassName: nfs-storage accessModes: - ReadWriteOnce resources: requests: storage: 20Gi 三、创建ServiceAccount--- apiVersion: v1 kind: ServiceAccount metadata: name: jenkins namespace: devops --- apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: annotations: rbac.authorization.kubernetes.io/autoupdate: "true" labels: kubernetes.io/bootstrapping: rbac-defaults name: jenkins namespace: devops rules: - apiGroups: - "" resources: - pods - pods/log - pods/exec verbs: - create - get - watch - delete - list - patch - update - apiGroups: - "" resources:...
docker安装jenkins_slave节点并通过docker构建项目   docker安装jenkins-jnlp-slave并在从节点使用docker构建项目   一,环境说明。 1,jenkins-master主构建节点,系统:centos7,IP: 192.168.1.20 ,Jenkins安装到docker容器中,实现master节点会新增容器中构建项目,完成后,会自行删除构建的容器。 具体方法看:docker安装jenkins使用npm容器构建Node.js+实现cicd部署-虚拟化云计算,DBA,系统安全,路由交换。 (micoder.cc) 2,Jenkins-slave从构建节点,系统:centos7,IP: 192.168.1.41 , jnlp-slave安装到docker容器中,并实现构建项目时,在从节点会新增容器中构建项目,完成后,会自行删除构建的容器。 二,从节点容器创建。 1,流程图,实现主从节点与项目工程构建环境全是docker中运行。 2,jenkins-master中配置slave从节点相关信息。 具体信息如下: 1,名称: jnlp-slave,这个可以随意填写,后面会用来。 2,远程工作目录,需要设置一个,这里填写: /var/jenkins_home。 3,标签,这里填写: slave,那么在pipeline中,添加此标签,即可实现在从节点中构建工程。   ...
html {overflow-x: initial !important;}:root { --bg-color:#ffffff; --text-color:#333333; --select-text-bg-color:#B5D6FC; --select-text-font-color:auto; --monospace:"Lucida Console",Consolas,"Courier",monospace; --title-bar-height:20px; } .mac-os-11 { --title-bar-height:28px; } html { font-size: 14px; background-color: var(--bg-color); color: var(--text-color); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; } body { margin: 0px; padding: 0px; height: auto; inset: 0px; font-size: 1rem; line-height: 1.42857; overflow-x: hidden; background: inherit; tab-size: 4; } iframe { margin: auto; } a.url { word-break: break-all; } a:active, a:hover { outline: 0px; } .in-text-selection, ::selection { text-shadow: none; background: var(--select-text-bg-color); color: var(--select-text-font-color); } #write { margin: 0px auto; height: auto; width: inherit; word-break: normal; overflow-wrap: break-word; position: relative; white-space: normal; o...
ansible-playbook 执行剧本时的sudo-su使用方法1,由于服务器基本上不能使用root登陆,只能使用普通账号,使用sudo来管理系统,所以有些操作需要提取执行。2,下面来个简单演示ansible-playbook执行sudo权限操作方法。以下是YAML内容:```yaml- name:  启动rs组的所有主机的nginx服务。  hosts: rs  user: elk    tasks:   - name: 启动nginx命令.    become: yes    become_method: sudo    service:      name: nginx       state: started ```3,从上面YAML文件内容可以看出来,这里是采用单个任务中sudo提取方法。上面的切换主要使用的是become语句,其参数主要解释如下:become:        yes #是否允许身份切换become_method: sudo#切换用户身份的方式,有sudo、su、pbrun等方式,默认为sudobecome_user: root   #切换指定的用户当然,如果你采用了sudo方法,可能需要使用visudo命令修改成无需提供密码方法,并且上面的示例中 用户 elk,也要有sudo相关权限,比如Centos,RHEL加入wheel组。4,become语句的使用,可以...
 
0

CentOS 7 DR模式LVS搭建

发表者:admin分类:应用服务2021-12-22 14:34:27 阅读[644]
 CentOS 7 DR模式LVS搭建1,环境说明。调度器LB : 192.168.94.111 系统: Centos6真实web服务器1 : 192.168.94.22 系统:Centos6真实web服务器2 : 192.168.94.33 系统: Centos6VIP : 192.168.94.1112,脚本内容与说明。1,Centos6安装ipvsadm软件命令,如下 :yum install -y ipvsadm 2,脚本有两个,一个是 lvs主机需要配置的,具体如下: #!/bin/bash echo 1 > /proc/sys/net/ipv4/ip_forward ipv=/usr/sbin/ipvsadm vip=192.168.94.111 rs1=192.168.94.22 rs2=192.168.94.33 #注意这里的网卡名字 ifconfig ens33:2 $vip broadcast $vip netmask 255.255.255.255 up route add -host $vip dev ens33:2 $ipv -C $ipv -At $vip:80 -s wrr $ipv -at $vip:80 -r $rs1:80 -g -w 1 $ipv -at $vip:80 -r $rs2:80 -g -w 1 注意:LVS不支持端口修改,所以后端rs主机端口必需一致。3,两台realserver主机需要使用脚本,具体如下。[root@web1 ~]# vim /usr/local/sbin/lvs_dr_rs.sh #/bin/bash ...
 
0
如何使用Podman部署podPodman是CentOS 8和RHEL 8的新容器部署引擎。尽管它的目标与Docker引擎相同(部署和管理容器),但它的实现方式非常不同——至少在底层是这样。从用户的角度来看,它的工作方式与Docker非常相似。您可以使用与Docker引擎相同的方式来获取映像和部署容器。可以将pod看作是一种将相关容器分组在一起的方法,以便更容易地进行管理(例如,Wordpress容器及其所需的MySQL数据库容器是通过单个pod进行管理的)。由于Podman将每个容器部署为自己的流程,因此这是创建互连容器的一种非常有效和简单的方法。一、准备工作1、已安装Podman的CentOS 8系统服务器运行实例2、具有sudo特权的用户3、要了解如何在CentOS 8上安装Podman,请参阅:如何在CentOS 8上安装Podman容器引擎。二、如何创建一个新的pod首先要做的是创建一个新的容器。创建新容器的命令是:podman pod create当命令返回新容器的ID时,您将知道容器是否已成功创建。这将创建一个非常基本的pod。你可以使用一些选项创建一个pod,如:--cgroup-parent value-设置pod的父cgroup--infra-创建一个与容器关联的基础容器,以共享命名空间--infra-command value-启动pod时将在infra容器上运行的命令(例如“ / pa...
docker容器与外网互访流程讨论容器如何与外部世界通信。这里涉及两个方向: 容器访问外部世界 外部世界访问容器   容器访问外部世界 在我们当前的实验环境下,docker host 是可以访问外网的。[root@localhost ~]# ping -c 2 www.baidu.com PING www.a.shifen.com (180.101.49.12) 56(84) bytes of data. 64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=1 ttl=128 time=12.2 ms 64 bytes from 180.101.49.12 (180.101.49.12): icmp_seq=2 ttl=128 time=15.1 ms  我们看一下容器是否也能访问外网呢?[root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f7b1aff354b3 busybox "sh" 3 seconds ago Up 3 seconds reverent_ganguly [root@localhost ~]# docker exec -it f7b1aff354b3 ping www.baidu.com PING www.baidu.com (180.101.49.11): 56 data bytes 6...
Kubernetes 上安装 Gitlab CI Runner Gitlab CI 基本概念以及 Runner 的安装 上节课我们使用 Helm 快速的将 Gitlab 安装到了我们的 Kubernetes 集群中, 这节课来和大家介绍如何使用 Gitlab CI 来做持续集成,首先先给大家介绍一些关于 Gitlab CI 的一些基本概念,以及如何在 Kubernetes 上安装 Gitlab CI Runner。 简介 从 Gitlab 8.0 开始,Gitlab CI 就已经集成在 Gitlab 中,我们只要在项目中添加一个.gitlab-ci.yml文件,然后添加一个Runner,即可进行持续集成。 在介绍 Gitlab CI 之前,我们先看看一些 Gitlab CI 的一些相关概念。 Pipeline 一次 Pipeline 其实相当于一次构建任务,里面可以包含很多个流程,如安装依赖、运行测试、编译、部署测试服务器、部署生产服务器等流程。 任何提交或者 Merge Request 的合并都可以触发 Pipeline 构建,如下图所示:+------------------+ +----------------+ | | trigger | | | Commit / MR +---------->+ Pipeline | | | | | +------------------+ ...
基于 kubernetes 的动态 jenkins slave 基于 Jenkins 的 CI/CD(一) 前面的课程中我们学习了持久化数据存储在Kubernetes中的使用方法,其实接下来按照我们的课程进度来说应该是讲解服务发现这一部分的内容的, 但是最近有很多同学要求我先讲解下 CI/CD 这块的内容,所以我们先把这块内容提前来讲解了。提到基于Kubernete的CI/CD, 可以使用的工具有很多,比如Jenkins、Gitlab CI已经新兴的drone之类的,我们这里会使用大家最为熟悉的Jenkins来做CI/CD的工具。 安装 听我们课程的大部分同学应该都或多或少的听说过Jenkins,我们这里就不再去详细讲述什么是 Jenkins 了,直接进入正题, 后面我们会单独的关于 Jenkins 的学习课程,想更加深入学习的同学也可以关注下。 既然要基于Kubernetes来做CI/CD,当然我们这里需要将 Jenkins 安装到 Kubernetes 集群当中,新建一个 Deployment:(jenkins2.yaml)--- apiVersion: extensions/v1beta1 kind: Deployment metadata: name: jenkins2 namespac...
Jenkins Blue Ocean 的使用 基于 Jenkins 的 CI/CD(三) 上节课我们讲解了使用Jenkins Pipeline来自动化部署一个Kubernetes应用的方法,在实际的项目中,往往一个代码仓库都会有很多分支的,比如开发、测试、线上这些分支都是分开的,一般情况下开发或者测试的分支我们希望提交代码后就直接进行CI/CD 操作,而线上的话最好增加一个人工干预的步骤,这就需要Jenkins对代码仓库有多分支的支持,当然这个特性是被Jenkins支持的。 Jenkinsfile 同样的,我们可以使用上节课的方法直接把要构建的脚本配置在 Jenkins Web UI 界面中就可以,但是我们也提到过最佳的方式是将脚本写入一个名为 Jenkinsfile 的文件中,跟随代码库进行统一的管理。 我们这里在之前的 git 库中新建一个 dev 分支,然后更改 main.go 的代码,打印当前运行的代码分支,通过环境变量注入进去,所以我们我们通过 k8s.yaml 文件的环境变量把当前代码分支注入进去,具体代码可以参考https://github.com/cnych/jenkins-demo/tree/dev。 然后新建一个 Jenkinsfile 文件,将上节课的构建脚本拷贝进来,但是我们需要对其做一些修改:(Jenkinsfile)node('haimaxy-jnlp') {   ...
    总共265页,当前第22页 | 页数:
  1. 12
  2. 13
  3. 14
  4. 15
  5. 16
  6. 17
  7. 18
  8. 19
  9. 20
  10. 21
  11. 22
  12. 23
  13. 24
  14. 25
  15. 26
  16. 27
  17. 28
  18. 29
  19. 30
  20. 31
  21. 32