KVM部署篇

KVM 介绍 KVM是以色列初创公司Qumranet开发,2008年9月RedHat公司收购了Qumranet KVM是Linux内核的一个模块,它把Linux内核变成了一个Hypervisor KVM是完全开源的,RedHat基于KVM的虚拟化解决方案叫做RHEV KVM在Linux操作系统里面以进程的形式出现,由标准的Linux调度程……

KVM入门篇

近年来,随着高性能时代的到来,购买一台配置很高的服务器运行着一些简单的服务未免有点大材小用,这时候我们就用到了虚拟化。虚拟化简单讲,就是把一台物理计算机虚拟成多台逻辑计算机,每个逻辑计算机里面可以运行不同的操作系统,相互不受影响,这样就可以充分利用硬件资源。 虚拟化介绍 关键词Hypervisor(VMM) 虚拟机管理器 虚拟化技术分为全……

SubversionEdge部署研发团队文档管理

为了提高公司办公效率,需要搭建一款文档分享server,windows可轻轻松松搭建一个文档服务器,但是为了配合研发同事的工作需要,综合考虑最终使用了Linux下的SVN作为首选。 一、介绍 Subversion Edge是Collabnet公司发布的SVN和Apache等组件结合的SVN管理工具。由于安装过subversion+apac……

Kubernetes集群部署篇( 一)

K8S集群部署有几种方式:kubeadm、minikube和二进制包。前两者属于自动部署,简化部署操作,我们这里强烈推荐初学者使用二进制包部署,因为自动部署屏蔽了很多细节,使得对各个模块感知很少,非常不利用学习。所以,这篇文章也是使用二进制包部署Kubernetes集群。 一、架构拓扑图 二、环境规划 角色 IP 主机名 组件 Maste……

Kubernetes集群(概念篇)

Kubernetes介绍 2013年docker诞生,自此一发不可收拾,它的发展如火如荼,作为一个运维如果不会docker,那真的是落伍了。 而2014年出现的kubernetes(又叫k8s)更加炙手可热,我想大部分人仅仅是听说过,简单了解它,但并没有真正使用过。那今天本文将带着大家一起走近kubernetes。 为啥kubernete……

mysql利用mysqld_multi部署单机多实例

近期博客更新不及时,是因为工作有了大的变动,今天分享个工作中遇到的一个小问题。 随着硬件层面的发展,linux系统多核已经是普通趋势,而mysql是单进程多线程,所以先天上对多进程的利用不是很高,虽然5.6版本已经在这方面改进很多,但是也没有达到100%,所以为了充分的利用系统资源,mysql有自己的补充,那就是可以部署多实例,一个实例一……

恢复删除的数据

背景 还需要场景吗?数据被删除了。。。突发事件,应用上传的数据被程序自动删掉了,可悲的是还没有数据备份,数据是放在系统的 /data/webapps/xxxx/upload 目录下面,可把我们急坏了,之前又没有做过数据恢复的测试,然后我找到了一款数据恢复的软件,成功把删除的大部分数据找回来了,我的数据恢复过程如下。 安装恢复软件 1、ep……

Ansible自动化编译安装Nginx服务

企业的生意是越来越NB,咱运维也不能落下。部署了那么多线上服务器,80%以上几乎都是脚本搞定,自动化的今天我可能有点土逼了。。 说搞就搞~~ Ansible 这款软件简直是太灵巧了。如下分享是经过实操的,也就是真正应用在了线上。后期的可扩展性极强! 充分利用现有设施。使用 Ansible 无需安装服务端和客户端,只要 SSH 即可。这意味……

Ansible线上部署出现中文乱码

今天在部署服务的时候遇到了一个很罕见的现象,线上有5台服务器是手机推送消息的服务,新来的运维使用ansible批量跑部署脚本的时候,发现手机端接收到来的消息全是乱码,然后登陆到服务器,查看日志发现,日志里面就是乱码,如图: 由于这个问题用户是有感知的,所以属于“事故”级别了,于是Boss大怒,叫运维赶快回滚,然后让开发赶紧重新检查代码,然……

nginx反向代理问题处理记录

周末出现事故,记录一下。还好BOSS不在,赶紧整,出现400了。。 写完回家! 同事说测试站点访问接口出现400 Bad Request Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上服务器进行测试查看,打开nginx与ugwsi日志与配置,发现后端服务日志记……

再讲Mysql主从延迟(外赠MySQL异地多活的数据双向复制经验.pdf)

数据库的集群架构都不陌生了,最熟悉也是应用最广泛的就是咱们熟知的主从,今天大概的回味下: 主从复制 MySQL复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新、删除等等)。因此,要进行复制,必须在主服务器上启用二进制日志。 每个从服务器从主服务器接收主服务器已经记录到其二进制日志的保存的更新,以便从服务器可以对其数据拷贝执行相同……

Tomcat故障一例

问题描述: Tomcat安装之后,正常启动,但是ps查看进程却没有发现启动,尝试关闭,弹出来错误信息。找不到或无法加载主类org.apache.catalina.startup.Bootstrap 原因:tomcat/bin下面缺少一个bootstrap.jar的文件 解决方法:官网重新下载安装即可。你如果出现问题的包也是官网下载的,那么……

Ansible 企业高可用负载均衡部署方案

一、前言 ansible作为一款灵活、高效、功能丰富的自动化部署工具在企业运维管理中备受推崇。经过测试,我来使用ansible部署小型企业服务框架,实现高可用、负载均衡的目标。如有错误敬请赐教。 目标环境拓扑: 环境介绍: 前端代理层由两台nginx实现,并安装keepalived实现地址滑动达成高可用。 web层由两套Apache+PH……

Ansible 多机房自动部署发布

一、面临的问题 一个完整的程序开发流程少不了部署发布这个环节,而部署发布是一个重复的过程,最基本的操作包含停止系统服务、更新软件包、重启系统服务,复杂的还需要做好监控、灰度发布、回滚等。在只有少量服务器的情况下,大多数运维人员会选择手动更新,减少自动化部署发布的开发成本。而当服务器数量增加,甚至服务器可能存在于跨地域的不同机房情况下,如何……

MySQL“延迟”主从复制

世界上没有卖后悔药的,一旦做错了,后悔莫及。我们作为运维,尤其是不小心误删除数据库里的数据时,那更是损失巨大。对于MySQL来说,这里有一种方法,可以避免这种悲剧的发生。 这儿所谓的延迟,并不是经常说的网络延迟,而是我们故意把从库复制的步伐放慢,比如让从库比主库慢30分钟。这样,如果在半小时内发现数据有问题,还能补救。 MySQL 5.6……

再回顾几个内核参数

net.ipv4.tcp_syncookies #应该设置为1,防止SYN Flood。 处在SYN_RECV的TCP连接称为半连接,存储在SYN队列。大量SYN_RECV会导致队列溢出,后续请求将被内核直接丢弃,也就是SYN Flood攻击。 开启syncookies后,当SYN队列满了后,TCP会通过原地址端口,目的地址端口和时间戳打……

Redis的两种备份方式

再来一篇文章,为了明天的那一刻,再次复习下:Redis提供了两种持久化选项,分别是RDB和AOF。 默认情况下60秒刷新到disk一次[save 60 10000 当有1w条keys数据被改变时],Redis的数据集保存在叫dump.rdb一个二进制文件,这种策略被称为快照。 也可以手动调用Save或BGSAVE命令的: /usr/loc……