Blog

使用Ansible部署etcd 3.2高可用集群

📅 2017-06-05

本文内容已过期

之前写过一篇手动搭建etcd 3.1集群的文章《etcd 3.1 高可用集群搭建》,最近要初始化一套新的环境,考虑用ansible自动化部署整套环境, 先从部署etcd 3.2集群开始。

需要部署etcd的主机信息如下:

1node1 192.168.61.11
2node2 192.168.61.12
3node3 192.168.61.13

1.配置管理项目目录结构 #

 1├── inventories
 2   ├── staging
 3      ├── group_vars
 4         ├── all.yml
 5         └── etcd-nodes.yml
 6      ├── host_vars
 7         ├── node1.yml
 8         ├── node2.yml
 9         └── node3.yml
10      └── hosts
11   └── production
12├── roles
13   ├── common
14      ├── defaults
15         └── main.yml
16      └── tasks
17          └── main.yml
18   ├── etcd3
19       ├── defaults
20          └── main.yml
21       ├── files
22          └── make-ca-cert.sh
23       ├── meta
24          └── main.yml
25       ├── tasks
26          ├── create_etcd_user.yml
27          ├── etcd-restart.yml
28          ├── etcd-start.yml
29          ├── etcd-stop.yml
30          ├── gen-etcd-certs.yml
31          ├── gen-etcd-systemd.yml
32          ├── install_etcd_bin.yml
33          └── main.yml
34       └── templates
35           ├── etcd.conf.j2
36           └── etcd.service.j2
37├── deploy-etcd3.yml

roles/etcd3/defaults/main.yml:

...

服务治理之限流

📅 2017-06-04

大型网站系统主要的挑战是庞大的用户流量和高并发的访问,尤其是在一些大促场景下的会流量突增,如果不对这些流量加以管控,任由流量放大冲击系统,将会导致一系列恶劣的问题,例如一些可用的线程资源、连接资源被耗尽,分布式缓存容量被爆掉等,有可能会引起整个系统的雪崩。 当然普通网站系统在出现大量恶意流量和攻击时也会这些问题。

...

团队环境:Jenkins版本升级和插件更新

📅 2017-06-04

Jenkisn官方提供两种支持方式的版本:

  • LTS(Long-term-Support)版本:大约每12周更新一次
  • Weekly Release:每周更新一次,每个版本会有一些enhancement和bug fix

我们使用的是Weekly版本,这里记录一下Jenkins版本的升级和插件更新。 最初我们是使用rpm安装的Jenkins,这种安装方式jenkins.war被默认安装到/usr/lib/jenkins下。 升级Jenkins的版本只要将这个目录的jenkins.war替换成新的版本,重启Jenkins服务即可。

...

Prometheus的告警

📅 2017-06-03

Prometheus的AlertManager是一个独立于Prometheus的外部组件,用于监控系统的告警,通过配置文件可以配置一些告警规则,Prometheus会把告警推送到AlertManager。 Alertmanager会对收到的告警信息进行处理,例如进行忽略,禁止,聚合并通过邮件等方式发送告警信息。

...

Prometheus的查询语言PromQL

📅 2017-06-02

PromQL是Prometheus提供的查询语言,用户可以使用PromQL对时序数据进行查询和聚合。 PromQL的查询结果可以用来在PromQL的浏览器中绘图、以表格展现数据,另外,PromQL的HTTP API也可以被外部系统使用。

Prometheus’s Expression Browser #

Prometheus的-web.listen-address=监听的就是PromQL浏览器的地址,例如: -web.listen-address=:9090,就以http://serverip:9090/graph访问PromQL浏览器。

...

Kubernetes Pod调度入门

📅 2017-06-01

最近两周一直没有抽出时间写点Kubernetes的东西,这篇学习一下Kubernetes对Pod的调度。我们先来复习一下Kubernetes的一些基本概念。

Kubernetes的基本概念 #

Kubernetes是一个基于容器技术的分布式架构平台,它首先是一个开源的容器集群管理系统,又是一个分布式系统开发、运维和支撑平台。 Kubernetes为容器应用提供了服务注册和发现、负载均衡、服务部署和运行、服务滚动升级、在线扩容和缩容、资源调度、资源配额管理等功能。 可以说Kubernetes具备完备的集群管理能力,贯串分布式系统开发、测试、部署、运维监控各个环节。

...

ES6学习笔记

📅 2017-05-20

1.变量声明和赋值 #

1.1 变量声明 #

let和const是新增的变量声明关键字, 它们与var的区别是,声明变量没有预解析。

1// 变量声明
2{
3    let num1 = 10
4    const max_len = 99
5    // max_len = 100 // 错误,常量不能修改
6}
7// console.log(num1) // 错误,超出了作用域

1.2 解构赋值 #

ES6允许按照一定的模式,从数组和对象中提取值,这被成为解构(Destructuring)

...

Vue.js 3.x学习索引

📅 2017-05-19

Vue.js是一个渐进式的JavaScript框架。怎么理解"渐进式":

  • 声明式渲染
  • 组件系统
  • 客户端路由
  • 集中式状态管理
  • 项目构建

1.CSS基础 #

2.JavaScript基础 #

3.Vue基础 #

4.第三方组件库 #

5.其他资源 #

Vue.js:在Vue项目中使用less

📅 2017-05-18

在Vue项目中使用less #

Less是一个CSS预编译器,它扩展了CSS语言添加了变量(variables),混合(mixins),函数(functions)等特性。 下面演示在Vue项目中使用less.

使用vue-cli创建项目:

1vue init webpack-simple vue-less
2cd vue-less
3npm i

安装webpack支持的less编译包:

...

开源监控系统Prometheus的基本概念

📅 2017-05-16

Prometheus是一个开源的监控系统和时序数据库。 Prometheus使用Go语言开发,是Google BorgMon监控系统的类似实现。

Prometheus架构 #

Prometheus使用的是Pull模型,Prometheus Server通过HTTP的pull方式到各个目标拉取监控数据。

...

© 2024 青蛙小白 | 总访问量 | 总访客数