运维知识体系

运维知识体系

运维知识体系总结,持续更新,欢迎转载。
缓存知识体系

缓存知识体系

运维知识体系之缓存,分层多级缓存体系。
K8S实践指南

K8S实践指南

Docker和Kubernetes实践指南(每周更新)
新运维课堂

新运维课堂

全新体系化课程,开启运维新征程!

SaltStack快速入门(1)SaltStack简介

SaltStack赵班长 发表了文章 • 1 个评论 • 5618 次浏览 • 2015-10-27 22:31 • 来自相关话题

     SaltStack是什么,它能干什么呢?我们首先介绍SaltStack的基本知识。然后快速的带领读者使用SaltStack的远程执行和使用SaltStack完成服务器配置管理的功能。让你快速的一睹SaltStack的风采。让我们立即开启敏捷的自动化运 ...查看全部
     SaltStack是什么,它能干什么呢?我们首先介绍SaltStack的基本知识。然后快速的带领读者使用SaltStack的远程执行和使用SaltStack完成服务器配置管理的功能。让你快速的一睹SaltStack的风采。让我们立即开启敏捷的自动化运维之路!

SaltStack介绍
       
    SaltStack是一个新的基础平台管理工具,只需要花费数分钟即可运行起来,可以支撑管理上万台服务器的规模,数秒钟即可完成数据传递。SaltStack是使用Python语言开发的,同时提供Rest API方便二次开发以及和其它平台进行集成,同时官方也发布了一个Web管理界面halite。

SaltStack常用网址:
  • 官方网站:http://www.saltstack.com
  • 官方文档:http://docs.saltstack.com
  • GitHub:https://github.com/saltstack
  • 中国SaltStack⽤户组:http://www.saltstack.cn
SaltStack有三种运行方式:
  •  Local
  • Master/Minion
  • Salt SSH
    SaltStack的传统运行模式为Master/Minion(C/S结构),需要在被管理的节点上安装Minion。同时SaltStack也支持SSH的方式,无需安装Agent,通过SSH实现管理。SaltStack目前拥有三大主要功能:
  • 远程执行
  • 配置管理
  • 云管理
  SaltStack目前在业内的用户案例:
  • LinkedIn部署了约28,000的SaltStack
  • Wikipedia部署了约8,000 SaltStack用于代码更新,
  • Rackspace大约一半的服务使用SaltStack
  • Hulu.com也采用了SaltStack。

国内目前各大公司也在研究和使用SaltStack。
  同时,你可以通过搜索引擎获得SaltStack与Puppet、Chef、Ansible等工具的对比,我们不准备列举和讨论这些对比,让我们快速的进入SaltStack的世界,相信你可以自己寻找到自己的答案。

CentOS 6.6 + Virtualbox + Mac_OSX_Yosemite 构建生产打包环境

系统管理赵班长 发表了文章 • 0 个评论 • 2776 次浏览 • 2015-10-20 17:17 • 来自相关话题

终于搞定了在Centos 6.6上使用Virtualbox安装Mac,用于在服务器上进行ios打包,记录一下。 1.创建虚拟机。System  ->  Chipset:PIIX3 2.执行命令。注意修改mac ...查看全部
终于搞定了在Centos 6.6上使用Virtualbox安装Mac,用于在服务器上进行ios打包,记录一下。

1.创建虚拟机。System  ->  Chipset:PIIX3

2.执行命令。注意修改mac-node1为你实际的虚拟机名称。

VBoxManage setextradata "mac-node1"  "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "MacBookPro11,3"
VBoxManage setextradata "mac-node1"  "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "mac-node1" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata "mac-node1" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "mac-node1" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1

3.安装系统。

4.安装xcode

5.启动多个虚拟机,编写PHP进行打包。Nginx做负载均衡,终于解决了ios自动打包的问题。
 

赵老师,能否介绍下cobbler的kickstart模块的一些常配参数

DevOpsrichie 回复了问题 • 2 人关注 • 2 个回复 • 3924 次浏览 • 2015-10-19 11:45 • 来自相关话题

提问必备-如何有效的提问?

运维杂谈赵班长 发表了文章 • 0 个评论 • 4202 次浏览 • 2015-10-19 11:40 • 来自相关话题

        不要怀疑,即便你工作了很多年,有可能,你依然不会提问,让我们来看看目前的现状是什么? 很多人在群里发牢骚:     - 群里不活跃,发问题没人回答。     - 牛人都很牛逼,爱搭不理的。 ...查看全部
        不要怀疑,即便你工作了很多年,有可能,你依然不会提问,让我们来看看目前的现状是什么?

很多人在群里发牢骚:
    - 群里不活跃,发问题没人回答。
    - 牛人都很牛逼,爱搭不理的。

我想说的是:
  1. 没人回答,,有可能是你不会问。
  2. 牛人也有自己的工作,回答了是分享,不回答也不应该受到责备。


不过,根据我的统计,不会提问的人大有人在。我先列举几个提问的问题。
0.有人在吗? 不解释,我相信你懂的。

1.网站千万PV要怎么调优?   这样的问题,让人如何回答,这个也不是几句话能说明白的吧。不回答原因:问题太泛泛了,没法回答。

2.我的salt-minion无法启动怎么办?  好吧,没有人知道,遇到问题第一时间应该是看日志,没有日志,saltstack作者遇到这样的问题,也不知道怎么回答。不回答原因:有问题,第一时间看日志!

3.已经意识到上面两种问法不对,知道看日志,发了一段日志问怎么办?  日志截图一定要全,最好的是直接发送错误日志到群共享,经常遇到圈红圈的。我想说,你既然不会,就不要帮别人确定应该看的日志范围。 不回答原因:日志不全!之前真有帮忙排查半天,然后发现url输入有问题的,因为截图不截取URL。

4.谁了解xxx吗?群里谁搞过xxx?一般不会有人回答,你是想让群里所有了解的人都回复一个了解吗?这样的问题,有人回答才怪。 有问题就直接发问题。

5.提问没有得到回答,发牢骚的人。 好吧,只能怪群管理员偷懒了,这样的人,应该请出群中。

       做一个会提问的运维者,有效的提问是运维工作能力之一!

赵班长,上次你公开课讲的job管理平台,能不能讲讲或者开源下?

回复

DevOpserico 发起了问题 • 1 人关注 • 0 个回复 • 2368 次浏览 • 2015-10-18 23:35 • 来自相关话题

请问大家,我物理机和虚拟机互相ping的通,但是物理机不能访问虚拟机是什么原因?

系统管理赵班长 回复了问题 • 2 人关注 • 1 个回复 • 2960 次浏览 • 2015-10-12 17:11 • 来自相关话题

OpenStack如何实现key注入和密码注入?

OpenStack赵班长 发表了文章 • 2 个评论 • 3856 次浏览 • 2015-09-22 10:59 • 来自相关话题

有朋友问,OpenStack是否支持Key注入和在Horizon的Dashboard上面修改密码,nova是支持的,不过默认可能没有打开。操作也比较简单,需要两个步骤。 1.修改nova.conf,修改以下配置: ...查看全部
有朋友问,OpenStack是否支持Key注入和在Horizon的Dashboard上面修改密码,nova是支持的,不过默认可能没有打开。操作也比较简单,需要两个步骤。

1.修改nova.conf,修改以下配置:

inject_password=true
inject_key=true
inject_partition=-1
重启nova-api。

2.修改horizon配置文件,local_settings
#启用Web界面上修改密码
OPENSTACK_HYPERVISOR_FEATURES = {
    'can_set_mount_point': True,
    'can_set_password': True,
}

好的,现在就可以创建虚拟机了,并且可以在dashboard上给虚拟机设置密码!

Docker Machine、Swarm、Compose、Registry、Kitematic、Toolbox介绍

Docker赵班长 发表了文章 • 0 个评论 • 3401 次浏览 • 2015-08-12 20:11 • 来自相关话题

        Docker Machine为本地机器、私有数据中心以及云服务商提供Docker引擎,并可以配置一个本地的Docker客户端来安全(通过TLS)地与已经部署的引擎交互。Machine对部署平台进行了抽象,用户在对Docker零了解且不熟悉目标环 ...查看全部
        Docker Machine为本地机器、私有数据中心以及云服务商提供Docker引擎,并可以配置一个本地的Docker客户端来安全(通过TLS)地与已经部署的引擎交互。Machine对部署平台进行了抽象,用户在对Docker零了解且不熟悉目标环境的情况下,可以通过一个简单的命令部署Docker引擎。Docker Machine解决了操作系统异构安装Docker困难的问题。
 
        Docker Swarm为Docker容器提供了原生的集群,它将几个Docker引擎聚集在一起,然后对外暴露为一个单一的虚拟Docker引擎。Swarm提供了标准的Docker API,因此Docker客户端或者其它的第三方工具可以轻松扩展到多台主机,比如Dokku、Shipyard等。
 
       Docker Compose是一个编排工具,它可以定义并运行基于Docker的分布式应用。Compose基于Fig,Fig是一个已经存在的工具,它可以运行Docker的开发环境,并通过一个简单的文件来定义应用组件,这些组件包括容器、容器配置、连接以及卷。
 
       Docker Registry大家都比较熟悉,是用来构建Docker仓库的服务,目前来说功能不够完善。
 
       Docker Kitematic是GUI客户端。
 
       Docker Toolbox是一个工具箱,可以让用户简单快速的安装和设置Docker环境。它包含以下内容:
 
  1. Docker Client
  2. Docker Machine
  3. Docker Compose (Mac only)
  4. Docker Kitematic
  5. VirtualBox

运维知识体系V2.0

运维杂谈赵班长 发表了文章 • 2 个评论 • 6039 次浏览 • 2015-08-09 12:40 • 来自相关话题

    为了帮助运维人员扩展思路、清晰的识别运维边界、我整理了《运维知识体系》,目前是V2.0版本,并不断完善中,纯干货,后期可能推出不同层级的相关文档和视频教程。  
    为了帮助运维人员扩展思路、清晰的识别运维边界、我整理了《运维知识体系》,目前是V2.0版本,并不断完善中,纯干货,后期可能推出不同层级的相关文档和视频教程。

opsv2.png

 

Linux如何查看哪个进程占用的SWAP分区比较多?

系统管理赵班长 发表了文章 • 0 个评论 • 8899 次浏览 • 2015-08-09 10:33 • 来自相关话题

在日常管理中,我们经常会遇到swap分区使用比较多,那么导致是那些进程使用的呢,其实我们可以通过/proc/pid/下的smaps来获得。使用下面的命令可以列出所有进程占用的swap分区的大小,分别我们分析问题。  for i in ...查看全部
在日常管理中,我们经常会遇到swap分区使用比较多,那么导致是那些进程使用的呢,其实我们可以通过/proc/pid/下的smaps来获得。使用下面的命令可以列出所有进程占用的swap分区的大小,分别我们分析问题。

 for i in $(cd /proc;ls | grep "^[0-9]" | awk '$0>100'); do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps;done| sort -k2nr | head

获取到占用Swap分区比较多的PID,然后就可以通过PID获取到进程的相关信息了。

ps aux | grep ${pid}