运维随笔

SRE & Devops & Architect


  • 首页

  • 分类

  • 标签

  • 归档

  • 关于

  • 工具

  • 搜索

ELK之logstash多个配置文件及模板的使用

发表于 2020-07-08 | 分类于 日志管理
本文字数: 26k | 阅读时长 ≈ 24 分钟

前言

在使用 logstash 编写多个配置文件,写入到 elasticsearch 时,会出现数据写入混乱的问题,举例来说:

多个配置文件中规则如下:

然而当 logstash 服务运行起来的时候并不是这样的,可能出现如下想象:

究其原因,是因为 logstash 运行起来的时候,会将所有的配置文件合并执行。因此,每个 input 的数据都必须有一个唯一的标识,在 filter 和 output 时,通过这个唯一标识来实现过滤或者存储到不同的索引。

阅读全文 »

k8s之详解Ingress并实战

发表于 2020-07-07 | 更新于 2020-08-04 | 分类于 容器编排 > K8s
本文字数: 142k | 阅读时长 ≈ 2:09

目的

本文对k8s中Ingress反向代理进行详细剖析,详细介绍了原理,并通过实际例子来详细说明。

阅读全文 »

容器版Jenkins连接K8s

发表于 2020-07-02 | 更新于 2020-08-04 | 分类于 容器编排 > K8s
本文字数: 13k | 阅读时长 ≈ 12 分钟

目的

本文详解介绍了容器版jenkins连接k8s的配置和使用详情。特别注意:必须用谷歌浏览器,而且非容器版jenkins是无法安装kubernetes插件的,所以无法连接k8s。搭建k8s集群教程

环境

操作系统版本: Ubuntu 18.04 TLS

软件版本: Jenkins 2.121.2

阅读全文 »

k8s版jenkins带maven、jdk、git各种工具用master/slave模式实现CI/CD

发表于 2020-07-02 | 更新于 2020-08-04 | 分类于 容器编排 > K8s
本文字数: 69k | 阅读时长 ≈ 1:02

目的

本文在k8s集群中把各种工具(jdk,git, maven等)集成到jenkins,用master/slave模式实现CI/CD。

环境

k8s集群 参考教程

Hubor镜像服务 参考教程

nfs/Ceph持久存储 参考教程

K8s中Jenkins实践教程

阅读全文 »

CentOS7安装指定版本Docker-ce

发表于 2020-07-02 | 更新于 2020-08-04 | 分类于 容器技术
本文字数: 3.9k | 阅读时长 ≈ 4 分钟

Docker版本说明

Docker-CE指Docker社区版,由社区维护和提供技术支持,为免费版本,适合个人开发人员和小团队使用。

Docker-EE指Docker企业版,为收费版本,由售后团队和技术团队提供技术支持,专为企业开发和IT团队而设计。

相比Docker-EE,增加一些额外功能,更重要的是提供了更安全的保障。

此外,Docker的发布版本分为Stable版和Edge版,区别在于前者是按季度发布的稳定版(发布慢),后者是按月发布的边缘版(发布快)。

通常情况下,Docker-CE足以满足我们的需求。

阅读全文 »

jenkins配置jdk、git、maven等工具

发表于 2020-07-01 | 更新于 2020-08-04 | 分类于 CI&CD > Jenkins
本文字数: 3.8k | 阅读时长 ≈ 3 分钟

目的

本文详细介绍jenkins配置各种打包工具。

阅读全文 »

Centos7安装gitlab详细教程

发表于 2020-06-30 | 更新于 2020-08-04 | 分类于 运维技术 > 服务部署
本文字数: 17k | 阅读时长 ≈ 16 分钟

目的

博客中有docker直接启动gitlab服务,这里再补充下直接裸机部署gitlab服务的教程。

阅读全文 »

k8s之jenkins动态创建slave

发表于 2020-06-30 | 更新于 2020-08-04 | 分类于 容器编排 > K8s
本文字数: 38k | 阅读时长 ≈ 34 分钟

简述

持续构建与发布是我们日常工作中必不可少的一个步骤,目前大多公司都采用 Jenkins 集群来搭建符合需求的 CI/CD 流程,然而传统的 Jenkins Slave 一主多从方式会存在一些痛点,比如:

  • 主 Master 发生单点故障时,整个流程都不可用了
  • 每个 Slave 的配置环境不一样,来完成不同语言的编译打包等操作,但是这些差异化的配置导致管理起来非常不方便,维护起来也是比较费劲
  • 资源分配不均衡,有的 Slave 要运行的 job 出现排队等待,而有的 Slave 处于空闲状态
  • 资源有浪费,每台 Slave 可能是物理机或者虚拟机,当 Slave 处于空闲状态时,也不会完全释放掉资源。

正因为上面的这些种种痛点,我们渴望一种更高效更可靠的方式来完成这个 CI/CD 流程,而 Docker 虚拟化容器技术能很好的解决这个痛点,又特别是在 Kubernetes 集群环境下面能够更好来解决上面的问题,下图是基于 Kubernetes 搭建 Jenkins 集群的简单示意图:

从图上可以看到 Jenkins Master 和 Jenkins Slave 以 Pod 形式运行在 Kubernetes 集群的 Node 上,Master 运行在其中一个节点,并且将其配置数据存储到一个 Volume 上去,Slave 运行在各个节点上,并且它不是一直处于运行状态,它会按照需求动态的创建并自动删除。

这种方式的工作流程大致为:当 Jenkins Master 接受到 Build 请求时,会根据配置的 Label 动态创建一个运行在 Pod 中的 Jenkins Slave 并注册到 Master 上,当运行完 Job 后,这个 Slave 会被注销并且这个 Pod 也会自动删除,恢复到最初状态。

使用jenkins动态slave的优势:

  • 服务高可用,当 Jenkins Master 出现故障时,Kubernetes 会自动创建一个新的 Jenkins Master 容器,并且将 Volume 分配给新创建的容器,保证数据不丢失,从而达到集群服务高可用。
  • 动态伸缩,合理使用资源,每次运行 Job 时,会自动创建一个 Jenkins Slave,Job 完成后,Slave 自动注销并删除容器,资源自动释放,而且 Kubernetes 会根据每个资源的使用情况,动态分配 Slave 到空闲的节点上创建,降低出现因某节点资源利用率高,还排队等待在该节点的情况。
  • 扩展性好,当 Kubernetes 集群的资源严重不足而导致 Job 排队等待时,可以很容易的添加一个 Kubernetes Node 到集群中,从而实现扩展。
阅读全文 »

k8s之存储服务

发表于 2020-06-30 | 更新于 2020-08-04 | 分类于 容器编排 > K8s
本文字数: 35k | 阅读时长 ≈ 32 分钟

目的

本文详细介绍了kubernentes的存储,使用NFS进行演示,让你充分了解和使用pv和pvc,可以举一反三的使用持久化存储。

阅读全文 »

详解nexus私服仓库

发表于 2020-06-28 | 更新于 2020-08-04 | 分类于 运维技术 > 服务部署
本文字数: 18k | 阅读时长 ≈ 17 分钟

简介

Nexus 是Maven仓库管理器,如果你使用Maven,你可以从Maven中央仓库 下载所需要的构件(artifact),但这通常不是一个好的做法,你应该在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。此外,他还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。

阅读全文 »
1…678…22
豌豆多多

豌豆多多

资深运维架构师豌豆多多的呕心笔记

217 日志
44 分类
71 标签
RSS
GitHub E-Mail Gitee 微博
友情链接
  • 菜鸟教程
  • 自强学堂
  • 运维生存时间
  • 朱双印博客
  • 靳闯博客
  • 运维饼铛
0%
  • Ai3
  • Ansible2
  • Aplayer1
  • Apollo2
  • CAP2
  • Cat1
  • Centos1
  • Cloud2
  • Cmdb3
  • Confd2
  • Confluence2
  • Consul1
  • Dns2
  • Docker18
  • Elk4
  • Eureka1
  • Experiences2
  • Flask1
  • Git6
  • GlusterFS6
  • Go2
  • Haproxy3
  • Hexo6
  • Http2
  • Iptables3
  • Java8
  • Jenkins5
  • Jumperserver2
  • K8s13
  • Kafka1
  • Kali2
  • Keepalived3
  • Linux25
  • Lvs5
  • Mail1
  • Mesos1
  • MongoDB3
  • Mysql5
  • Nacos1
  • Network5
  • Nexus1
  • Nfs1
  • Nginx14
  • Open-falcon2
  • Openldap9
  • Opensips1
  • Openssl1
  • Openvpn1
  • PostgreSQL1
  • Prometheus2
  • Python9
  • Redis9
  • Redmine1
  • RocketChat1
  • Samba1
  • Saturn1
  • Selenium1
  • Sentry3
  • Shell3
  • Sql1
  • Stackstorm2
  • Supervisor2
  • Tcpdump1
  • Tomcat4
  • Uwsgi2
  • Web2
  • Wiki2
  • Windows1
  • Xxl-job1
  • Zabbix10
  • Zookeeper2
© 2020 – 2023 豌豆多多 | 站点总字数: 490k | 站点阅读时长 ≈ 7:25
博客全站共508.5k字
访问人数: | 总阅读量: