第14章 运维技巧和常见问题处理 DBA的成长,离不开对各种问题的处理.本章将为读者介绍一些运维技巧和常见问题的处理方法.我们需要意识到,别人的经验代替不了自己的经验,所以,多实践.多处理问题,最终会帮你成为一名训练有素的DBA. 14.1 MySQL运维技巧 14.1.1 使用lsof命令恢复文件 如果你在Linux下不小心删除了一个文件,现在想要恢复这个文件,那么lsof命令就能派上用场了. 首先补充下关于lsof命令的基础知识. lsof是Linux自带的工具,其他Unix系统可能需要自己…
一.  Kubernetes 介绍 Kubernetes是一个全新的基于容器技术的分布式架构领先方案, 它是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,Kubernetes也叫K8S.K8S是Google内部一个叫Borg的容器集群管理系统衍生出来的,Borg已经在Google大规模生产运行十年之久.K8S主要用于自动化部署.扩展和管理容器应用,提供了资源调度.部署管理.服务发现.扩容缩容.监控等一整套功能.2015年7月,Kubernetes v1.0正式发布,截…
https://blog.csdn.net/keysilence1/article/details/70239717 概念 Kubernetes是谷歌严格保密十几年的秘密武器——Borg的一个开源版本,是Docker分布式系统解决方案. 名词 Borg Borg是谷歌内部使用的大规模集群管理系统,基于容器技术,目的是实现资源管理的自动化,以及跨多个数据中心的资源利用率的最大化: Endpoint(IP+Port) 标识服务进程的访问点: Master 集群控制节点,负责整个集群的管理和控制,基本…
1.1 Kubernetes是什么? 首先,它是一个全新的基于容器技术的分布式架构领先方案.是谷歌的Borg(大规模集群管理系统)的一个开源版本. 其次,如果系统设计遵循了Kubernetes的设计思想,那么传统系统架构中的和业务没有多大关系的底层代码或功能模块(比如负载均衡,服务自理框架,服务监控,故障处理等),都可以消失.使用Kubernetes,不仅可以节省至少30%的开发成本,更专注于业务,而且由于Kubernetes提供了强大的自动化机制,所以系统后期的运维难度和运维成本大幅度降低.…
作者 | 姚捷(喽哥)阿里云容器平台集群管理高级技术专家 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击即可完成下载. 导读:值得阿里巴巴技术人骄傲的是 2019 年阿里巴巴 双11 核心系统 100% 以云原生的方式上云,完美支撑了 54.4w 峰值流量以及 2684 亿的成交量.背后承载海量交易的计算力就是来源于容器技术与神龙裸金属的完美融合. 集团上云机器资源形态 阿里巴巴 双11 采用三地五单元架构,除 2 个混部单元外,其他 3 个均是云单元.神龙机型经过…
Kubernetes是什么 官网 https://kubernetes.io/ 中文版:https://kubernetes.io/zh/ Kubernetes是谷歌十几年大规模容器管理经验的成果 是Borg的一个开源版本 基于容器技术的分布式架构方案 Service简介 Kubernetes以Service为核心,Service有如下特征 唯一名称 拥有一个虚拟ip和端口 提供某种远程服务能力 被映射到提供这种服务能力的一组容器应用上 Pod简介 Pod运行在Node主机中 Pod是Kuber…
1 Node的隔离和恢复 方法1: 创建新的Node配置文件指定spec.unschedulable: true 通过kubectl replace完成对Node的状态修改 kubectl replace -f xxx.yaml 此时Node的状态增加一项SchedulingDisabled,后续创建Pod将不会对该Node进行调度 方法2: kubectl patch node name -p '{"spec":{"unschedulable":true}}' 将…
1 Kubernetes网络模型 基本原则:每个Pod都拥有一个独立IP,而且假定所有Pod都在一个可以直接连通的.扁平的网络空间中. 基于基本原则,用户不需要额外考虑如何建立Pod之间的连接,也不需要考虑容器端口映射到主机端口等问题 同一个Pod内部的所有容器共享一个网络堆栈即网络命名空间,Pod内的所有容器的端口是共享的 Kubernetes对集群网络要求: 所有容器都可以在不用NAT的方式下同别的容器通信 所有节点都可以在不用NAT的方式下同所有容器通信,反之亦然 容器的地址和别人看到的地…
1 Kubelet运行机制 Kubenetes集群中的每个Node节点都会启动一个Kubelet服务进程用于处理Master下发到该节点的任务,管理Pod及其中的容器 Kubelet进程在API Server上注册信息,定期向Master节点汇报Node资源情况,并通过cAdvise监控容器和节点资源 1.1 节点管理 Kubelet进程在启动时设置参数--register-node=true设置向APIServer主动注册节点信息 当设置非自动注册时,需要配置Node的资源信息以及给Kubel…
1 API Server 1.1 提供集群管理的API接口 API Server在kubernetes中的进程名为apiserver,运行在Master节点上 apiserver开放两个端口 本地端口,默认8080 安全端口,默认6443,接受Https,用于基于Token以及策略的授权 Kubectl Proxy作为API Server的反向代理,也能作为普通客户端访问API Server 命令行工具kubectl用来将API Server的API包装成建档的命令集 1.2 成为集群内各个功能…
1 Hello World 1.1 概述 搭建一个Web留言板应用,采用PHP+Redis. Redis由一个master提供写和两个slave提供读. PHP构成的前端Web层由三个实例构成集群,访问时进行负载均衡. 提供三个docker镜像 redis-master:写的redis redis-slave:读的redis php-fronted:PHP Web服务 1.2 创建redis-master Pod和服务 为redis-master创建一个RC yaml文件 apiVersion:…
1: etcd是干什么的: 键-值存储仓库,用来配置共享和服务发现. k8s把Node, pod,replication controller, Services看做是资源对象,这些资源对象可以通过K8s提供的kubectl工具进行增.删.改.查等操作将其保存在etcd中持久化存储.K8s相当于一个自动化的资源控制系统,通过跟踪对比etcd库里保存的‘资源期望状态’和“实际资源状态”的差异来实现自动控制和自动纠错的高级功能. 2:Master: k8s的集群控制节点,K8s所有控制命令都发给它,…
1 RC文件介绍: kind: ReplicationController,表示是一个RC: spec.selector:  RC的Pod标签(Label)选择器,监控和管理拥有这些标签的Pod实例,确保                   spec.replicas个实例在运行.当运行的实例小于这个数,会安装spec.template 定义的Pod模板生成新的实例. (注意,spec.template.metadata.labels指定了Pod的标签,这里的labels必须匹配之前 的spec…
1: 安装VirtualBox, 并下载CentOS-7-x86_64-DVD-1708.iso, 安装centOS7,具体过程可以百度. 2:开启centOS的SSH, 步骤如下: (1) yum list installed | grep openssh-server查看是否已经安装了SSH,如果没有安装则输入yum install openssh-server (2)vim  /etc/ssh/sshd_config, 打开监听端口和监听地址: 允许远程登录: 开启使用用户名密码来作为连接…
一.  kube-proxy 和 service  kube-proxy是Kubernetes的核心组件,部署在每个Node节点上,它是实现Kubernetes Service的通信与负载均衡机制的重要组件; kube-proxy负责为Pod创建代理服务,从apiserver获取所有server信息,并根据server信息创建代理服务,实现server到Pod的请求路由和转发,从而实现K8s层级的虚拟转发网络. 在k8s中,提供相同服务的一组pod可以抽象成一个service,通过service…
01_Kubernetes入门 li {list-style-type:decimal;}.wiz-editor-body ol.wiz-list-level2 > li {list-style-type:lower-latin;}.wiz-editor-body ol.wiz-list-level3 > li {list-style-type:lower-roman;}.wiz-editor-body li.wiz-list-align-style {list-style-position:…
1.说一说 当你安装完nginx,输出的格式是比较乱的,这样我们就需要自己去定义一下,自己看着舒服的格式. 2.Nginx日志字段 $remote_addr 记录客户端IP,但她的值不是客户端提供的,而是服务端根据客户端的ip指定的,当你的浏览器访问某个网站时,如果中间没有任何代理,那么网站的web服务器(nginx或apache)就会把remote_addr设置为你的机器IP.如果你用了某个代码,那么你的浏览器会先访问这个代理,然后在由这个代理了转发到网站,这样web服务器就会把remote_…
格式 json 数据增强可读性 --format json-pretty -f json-pretty ceph quorum_status -f json-pretty ceph mon_status -f json-pretty ceph集群报 Monitor clock skew detected 错误问题排查 产生问题的原因,monitor的时钟同步出现时间偏差,ceph默认偏差大于0.05s就会出现这个报警. $ ceph health detail HEALTH_WARN clock…
有时会遇到内存不够用的情况,可以使用本文提供的方法进行临时增加交换分区. #制作交换分区——得到文件 [root@serv01 linux-2.6.38]# dd if=/dev/zero of=/swap.img bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 2.68989 s, 399 MB/s [root@serv01 linux-2.6.38]# ls swa…
hadoop 性能调优与运维 . 硬件选择 . 操作系统调优与jvm调优 . hadoop运维 硬件选择 1) hadoop运行环境 2)  原则一: 主节点可靠性要好于从节点 原则二:多路多核,高频率cpu.大内存, namenode 100万文件的元数据要消耗800M内存,内存决定了集群保存文件数的总量, resourcemanager同时运行的作业会消耗一定的内存. datanode 的内存需要根据cpu的虚拟核数(vcore) 进行配比,CPU的vcore数计算公式为=cpu个数 * 单…
好的Linux运维工程师区分在效率上.如果一位高效的Linux运维工程师能在 10 分钟内完成一件他人需要 2 个小时才能完成的任务,那么他应该受到奖励(得到更多报酬),因为他为公司节约了时间,而时间就是金钱,不是吗? 技巧是为了提高管理效率.虽然本文不打算对所有 技巧进行讨论,但是我会介绍 “懒惰” 管理员所用的 10 个基本法宝. 这些技巧可以节约时间 —— 即使没有因为高效而得到更多的报酬,但至少可以有更多的时间去玩. 技巧1:卸载无响应的 DVD 驱动器 网络新手的经历:按下服务器(运行…
目录 教老婆学Linux(二)Linux常用命令指南[上] 一.概述 二.常用命令 教老婆学Linux(二)Linux常用命令指南[上] 作者:姚毛毛的博客 tips:文章太长,分两篇发出,本篇发前三个章节: 1.文件及目录操作: 2.文件查看及编辑 3.文件查找及统计. 一.概述 1.1写在前面 & 学习指南 本文目的:主要是作为一张给初学者入门Linux的学习地图. 所以我只会讲一些我们生产过程中常用的命令及操作,对于命令的一些偏门用法本文会一带而过甚至不讲. 对于Linux命令详解可以参考…
关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 文章目录: 0x00 前言简述 0x01 环境准备 主机规划 软件版本 网络规划 0x02 安装部署 1.准备基础主机环境配置 2.负载均衡管理ipvsadm工具安装与内核加载 3.高可用HAProxy与Keepalived软件安装配置 4.容器运行时containerd.io安装配置 5.安装源配置与初始化集群配置准备 6.使…
本博文出自51CTO博主 吴光科 的博客,有任何问题请进入博主页面互动讨论! 博文地址:http://wgkgood.blog.51cto.com/1192594/1641247 随着Linux在企业中的不断飞速的应用,为了企业中更好的运维,熟悉日常运维的技巧能更好的满足企业的发展,同时让我们的运维更加轻松,不再觉得运维是苦逼的活,真正去锻炼去成长去磨练. 让我们的运维更有"韵味",让我们的生活更加美好. 通过本次课程的学习,我会把我在日常运维中的心得和体会分享给大家,让大家得到真正的…
Heapster在Kubernetes的运维生态中如下:集群的容器的监控数据收敛汇聚层 heapster1.0版本后内部分为event和metric两个进程,可制作为两个docker镜像部署为两个独立pod. Heapster metric部分内部代码架构如下: heapster event部分的内部代码结构:…
摘要:本文从单机真机运营的历史讲起,逐步介绍虚拟化.容器化.Docker.Kubernetes.ServiceMesh的发展历程.并重点介绍了容器化阶段之后,各项重点技术的安装.使用.运维知识.可以说一文讲清楚服务器端运维的热点技术. 序 文章的名字起的有点纠结,实际上这是一篇真正从基础开始讲解,并试图串联起来现有一些流行技术的入门文章. 目前的企业级运营市场,很有点早几年前端工程师所面临的那样的窘境.一方面大量令人兴奋的新技术新方案层出不穷:另外一方面运维人员也往往陷入了选择困局,艰于决策也疲…
1. 概览 ZooKeeper是一个供其它分布式应用程序使用的软件, 它为其它分布式应用程序提供所谓的协调服务. 所谓的协调服务, 是指ZooKeeper的如下能力 naming 命名 configuration management 配置管理 synchronization 同步 group service 分组服务 上面四个功能可能现在不太好说清, 但大致上目前你需要明白ZooKeeper就是为其它分布式应用程序提供一些基础功能的程序就好了. 我们以其中的配置管理为例. 假设你在写一个可横向…
非常全面的运维指南整理http://zjzone.cc/index.php/2017/07/31/openstack-yun-wei-wen-dang-zheng-li/…
云计算概念一旦产生便一发不可收拾,成为移动互联网时代最为火热的行业之一.国内各大互联网公司例如阿里.腾讯.百度.网易等纷纷推出自己的云计算产品,3月10日,腾讯云0.01元投标时间更是让云计算在普罗大众中火热了一把! 随着云计算的产生,运维工程师也迎来了职业的升级.传统的运维工程师散布在各个企业,在可见的将来,运维工程师将会越来越集中于云计算平台.当然,各企业因为对服务器端内容需要维护,也会有运维工程师的需求. 随着云计算被捧上神坛,相应的人才待遇水涨船高.据拉勾统计,云计算相关岗位数量相比前一…