自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(113)
  • 资源 (1)
  • 收藏
  • 关注

原创 运维面经知识点总结--网络部分(1)

DNSdns简介 dns是Domain Name System的缩写,中文名称为域名系统。其存在是为了方便用户在访问互联网时不需要去记忆复杂的ip数字串,只需要使用容易记忆的域名来访问相关的的内容。在这个过程中,dns起到了将域名转换为对应的ip地址的作用。表现形式为ip与域名相互映射的一个分布式数据库,该服务运行在UDP协议之上,使用的端口号为53.dns解析的过程 如图所示,网...

2018-03-27 22:52:09 1096

转载 一篇很不错的hadoop环境搭建博客

http://blog.csdn.net/hliq5399/article/details/78193113

2018-03-10 22:38:27 317

原创 DH密钥交换算法

迪菲-赫尔曼密钥交换(Diffie–Hellman key exchange,简称“D–H”) 是一种安全协议。 它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道建立起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。(1)、算法描述离散对数的概念: 原根:如果a是素数p的一个原根,那么数值: amodp,a^2 modp,…,a^(...

2018-02-21 20:42:35 858

原创 使用tomcat、keepalived、nginx搭建高可用架构

简单介绍tomcat是一轻量级的应用服务器,可以运行java程序。 Nginx是一个高性能的HTTP反向代理服务器。 keepalive用来搭建高可用,来避免服务的单点故障架构的简单描述 用户通过域名请求到DNS服务器上,解析以后返回对应的IP地址,而这个IP地址是一个LVS,是使用keepalived映射的虚拟IP,映射到相应的Nginx的服务器上。通过使用keepalived来使nginx

2017-12-29 19:54:02 488

转载 HTTP请求中POST与GET的区别

本文转载自http://blog.csdn.net/yipiankongbai/article/details/24025633 一、原理区别 一般我们在浏览器输入一个网址访问网站都是GET请求;再FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式。 HTTP定义了与服务器交互的不同方法,其中最基本的四种:GET,POST,PUT,DELET

2017-11-29 22:45:02 555

原创 python django框架的模型的创建

最近在读djangobook,这也算是写的一篇笔记吧,模型这块的内容链接在这。http://djangobook.py3k.cn/2.0/chapter05/为了方便对数据库进行操作,django中有模型(models)这个概念 也就是djangoMTV模型中M这一部分,关于数据的存取.数据库的配置首先我们需要安装好数据库驱动,可以使用mysqlclient或者MySQl-python。 可以使

2017-11-24 17:34:30 500

转载 python egg的构建

本文转自 http://blog.csdn.net/turkeyzhou/article/details/8876658 经常接触Python的同学可能会注意到,当需要安装第三方python包时,可能会用到easy_install命令。easy_install是由PEAK(Python Enterprise Application Kit)开发的setuptools包里带的一个命令,它用来安装e

2017-11-17 10:38:11 455

原创 python中的*args与**kwgs的含义与作用

在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用。*args是非关键字参数,用于元组,**kw是关键字参数 例如下面的代码def foo(*args,**kwargs): print 'args is',args print 'kwargs is',kwargsfoo(1,2)foo(k=1,w=2,a=3,r=4

2017-11-16 21:08:47 6668 1

原创 saltstack的SSH使用--Roster的配置使用

openssh作为大多数UNIX平台常用的工具,用于对远程主机进行访问和操作,意思就是安全的shell,在传统的salt中,由minion主动去连接master,master不需要保存minion 网络和主机配置,但是在基于SSH的连接时,master必须通过SSH去连接访问minion,所以就有了roster这个文件来保存主机信息Roster的编写Roster文件默认的情况下位于/etc/salt

2017-10-27 12:48:31 2658

原创 saltstack的sls文件树与sls文件编写

在使用salt配置一些主机的时候会经常的用到SLS文件树,这个目录我们可以在master上的/etc/salt/master文件中进行修改,默认的路径如下file_roots: base: - /srv/salt/通常是在/srv/salt之下,然后也有应用与Pillar系统的文件树,大体的结构相同.之前提到过saltstack的脚本是使用YAML格式来渲染的,YAML是python

2017-10-16 18:44:49 2634

原创 python SSH模块 paramiko的学习和使用

paramiko 遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接,可以实现远程文件的上传,下载或通过ssh远程执行命令。 官方文档:http://docs.paramiko.org/安装使用pip安装即可,以下的都是在python2.7下操作的核心的SSH协议类从官方文档中翻译而来Channel类class paramiko.channel.Channel(chanid)一个安全的

2017-10-15 15:41:45 4857

转载 指令的对齐解释

什么是对齐,以及为什么要对齐: 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。

2017-10-10 19:55:14 2217

原创 slatstack中的远程执行命令的方法

之前的博客有介绍过salt的配置和搭建方法,如果需要在master端对minion进行一定的操作需要使用远程执行命令。salt的底层架构就是起源于远程执行命令的想法,以下进行命令的介绍salt命令的target如果需要使用salt命令需要先指定好target 用于指定的参数有如下'*' 用于指定所有可以使用的Minion-E或者--pcre 用于使用perl语言兼容的正

2017-09-28 18:21:27 523

原创 python的迭代器理解

在python中可以使用列表生成式,来生成指定关系的列表元素,同样的在python中有生成器,使用’()’来取代列表生成式中的’[]’,或者在函数中使用yeild的,就可以调用next方法来输出下一个序列的元素,当然这几个方法元素个数都是有限的。在python中可以使用迭代器来不断地获取下一个元素。在python中像列表这种可以使用for循环遍历其中元素的对象叫做可迭代对象(iterable)。

2017-09-20 17:11:47 360

原创 负载均衡算法总结

在生产环境中用于负载均衡的主要有HAproxy、LVS还有nginx,它们用于负载均衡的算法各不相同。LVS的常用负载均衡算法轮叫:通过调度算法按照请求的顺序分配到集群的realserver上,并不考虑服务器当前的负载,只是单纯的按照请求的的次序,顺序轮流分配.加权轮叫:加权轮叫,也是使用轮叫的方式来按照请求的次序轮流给给分配服务器,不同的是,可以调节服务器的权重值,这样性能较高的服务器就可以得

2017-09-14 16:38:28 427

原创 puppet的文件应用

使用Puppet我们可以通过编写一些简单的脚本来对server和agent的文件进行操作与通信 比如说我们需要在agent上创建一个指定内容的文本文件,我们年可以使用puppet如下操作 在server端先开启puppet服务systemctl start puppetmaster然后在server端上编写脚本,脚本名为site.pp在/etc/puppet/manifests/下,文件编写如下

2017-09-11 16:37:20 434

原创 python web框架django入门

Django的安装1.可以使用python的pip工具直接安装(得先安装好setuptools)pip install setuptoolspip install django2.通过源码安装 源码包下载地址:https://www.djangoproject.com/download/ 然后解压源码包tar xzvf Django-X.Y.tar.gz # 解压下载包cd Djang

2017-09-09 17:29:00 433

原创 自动化运维管理平台puppet安装

puppet的安装服务端: 首先我们需要下载好puppetlabs的安装包,并且解压wget https://yum.puppetlabs.com/el/7/products/x86_64/puppetlabs-release-7-10.noarch.rpmrpm -ivh puppetlabs-release-7-10.noarch.rpm安装好依赖性软件yum install mysql m

2017-09-04 21:12:08 420

原创 ansible的playbook模式的简介

playbook与之前介绍过的ansible自带的命令行中加-m的那些模块有所不同,playbook使用YAML编写的脚本,比之前的更加灵活功能更加强大。playbook的模式简介在ansible官方网站提供了一个配置httpd的一个yaml脚本案例,如下#选择的主机组,比如写在/etc/ansible/hosts下的组- hosts: webserver#定义的一些参数 vars:

2017-09-01 21:14:42 387

原创 自动化运维管理工具ansible的配置与使用

ansible是一种服务器集中管理软件,默认使用ssh进行客户端的管理。ansible同样也是基于python编写的,有两个关键的模块paramiko和PyYAML组成。官方网址为http://www.ansibleworks.com。ansible的安装首先配置好eple源cd /usr/local/srcwget http://dl.fedoraproject.org/pub/epel/7/x

2017-08-30 23:01:25 896 1

原创 轻量级自动化运维工具fabric使用与安装

Fabirc是基于python实现的SSH命令行工具,简化了SSH的应用程序的部署与系统管理服务。Fabric的安装首先需要配置好python的pip工具 使用wget命令下载好,然后解压 wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb

2017-08-28 22:15:24 1285

原创 docker的网络管理

Docker在启动时会创建一个虚拟网桥docker0,默认地址为172.17.42.1/16, 容器启动后都会 被桥接到 docker0 上,并自动分配到一个 IP 地址。 docker网络管理 修改 docker 的默认网络配置: # systemctl stop dockerip link set dev docker0 downip addr del 172.17.42.1/24 dev

2017-08-12 23:22:29 474 2

原创 docker中容器的四种网络模式详解

在docker中有四种网络模式,bridge 桥接模式、host 模式、container 模式和 none 模式 启动容器时可以使用 –net 参数指定,默认是桥接模式。 docker网络的初始化过程 Bridge桥接方式实现的步骤如下 (1) Docker Daemon 利用 veth pair 技术,在宿主机上创建两个虚拟网络接口设备,假设为 veth0 和 veth1。而 veth p

2017-08-12 23:02:02 2737

原创 docker的数据卷管理方法

数据卷的概述数据卷是一个可以供一个或多个容器使用的特殊目录。 可以达到以下目的: 1. 绕过“拷贝写”系统,以达到本地磁盘IO的性能,(比如运行一个容器,在容器中对数据卷修改内容,会直接改变宿主机上的数据卷中的内容,所以是本地磁盘IO的性能,而不是先在容器中写一份,最后还要将容器中的修改的内容拷贝出来进行同步。) 2. 绕过“拷贝写”系统,有些文件不需要在docker commit打包进

2017-08-12 22:47:16 285

原创 docker容器与镜像管理方法

容器管理创建与查看docker run -it --name vm1 ubuntu bash #创建容器,容器名称为vm1docker ps -a #查看容器的状态docker attach vm1 #连接到vm1这个容器上docker logs vm1 #查看

2017-08-12 22:35:34 502

转载 Docker的镜像和容器的区别

一、Docker镜像要理解Docker镜像和docker容器之间的区别,确实不容易。假设Linux内核是第0层,那么无论怎么运行Docker,它都是运行于内核层之上的。这个Docker镜像,是一个只读的镜像,位于第1层,它不能被修改或不能保存状态。一个Docker镜像可以构建于另一个Docker镜像之上,这种层叠关系可以是多层的。第1层的镜像层我们称之为基础镜像(Base Image),其他层的镜像

2017-08-12 21:52:19 245

原创 rhel 下docker的安装配置与使用

docker的简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。docker的安装 首先我们需要配置好docker的yum源,保证自己的主机可以上网。vim /etc/yum.repos.d/docker.repo配置如下:[docke

2017-08-11 14:22:53 951

原创 python面向对象编程(2):特殊方法

repr()和str()方法:对于一个对象,python中提供了以上两种字符串的表示,它们的作用和repr()、str()、string.format()大体一致。如果需要把一个类的实例变成str对象,就需要实现特殊方法str() -字符串的format()函数也可以使用这些方法,当我们使用{!r}或者{!s}格式时,我们实际上分别调用了repr()或者str()方法。class studen

2017-08-09 23:19:04 228

原创 自动化运维平台saltstack的使用与搭建

saltstacks简介saltstack是一个功能强大的自动化运维软件。 有三种模式 1)本地模式(local),不需要启动进程,只要配置文件就可以写出来 2)master minion 模式 3)代理模式(syndic) 4)ssh模式我们本次主要使用的是master minion模式 master –> minion 模式: master默认—->监听本地所有网络接口 长连接

2017-08-09 21:52:16 2611

原创 关系型数据库nosql redis初学

redis安装过程解压压缩包tar zxf redis-3.0.2.tar.gz然后进入解压目录中make && make install #确保安装了gcc然后进入utils目录cd utils/./install_server.sh #执行安装脚本默认端口6379 内核参数overcommit_memoryredis-cli #命令行工具主从配置 在另一台主机上安装redis 然后进入配

2017-08-09 21:34:29 292

原创 mha配置高可用mysql

mha配置mysql高可用 本次实验的环境为rhel7monitor 172.25.254.40master 172.25.254.41slave 172.25.254.42slave2 172.25.254.43mha的节点部署过程 每个节点的操作: 下载好eple配置yum来源 下载这个压缩包 epel-release-6-8.noarch.rpm 然后rpm -ivh

2017-08-05 16:40:44 356

原创 mysql半同步复制机制

在mysql主从复制中,有一下几种复制的方法异步复制(Asynchronous replication) Mysql中默认的方式就是异步的,master在受到客户提交的请求后,马上返回结果,而slave中是否同步并处理是不会考虑的,所以这样的话,虽然效率高但是数据的完整性得不到保障,如果master down了,需要从slave中选举出一个master,如果master中提交的修改没有传到slav

2017-08-03 22:37:14 325

原创 数据库中间件mycat实现数据库读写分离

MYCAT实现读写分离 MYCAT是国内公司开发的 款数据库中间件 在主从复制的基础上,我们可以使 MYcat来实现读写分离,提高数据库的效率 实现环境为rhel7 两台主机已经配置好 主从复制 读写分离的机制大体如下 首先我们需要挑选一个mycat主机 先关闭防火墙 systemctl stop firewalld 配置好java环境 yum install java -y

2017-08-02 21:49:58 546

原创 Mysql配置数据库主从复制

mysql实现主从复制的过程 使用的环境为rhel7 主服务器ip 为172.25.254.41 从服务器ip 为172.25.254.42 首先配置好yum源,然后安装好mariadb-server,设置好root密码等等 进入/etc下配置好my.cnf文件 在master端配置如下[mysqld]datadir=/var/lib/mysqlsocket=/var/lib/mys

2017-08-02 14:57:32 284

原创 cent os 7安装配置zabbix监控服务

本次试验的环境使用的是cent os 7 Zabbix安装与使用 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix由zabbix server与可选组件zabbix agent两部门组成。 zabbix的主要特点: - 安装与配置简单,学习成本低 - 支持多语言(包括中文)

2017-07-30 09:27:50 1423

原创 ipvsadm功能的扩展配置方法

首先我们需要下载新的内核版本与Lvs-fullnat 我下载的是如下两个文件 kernel-2.6.32-220.23.1.el6.src.rpm Lvs-fullnat-synproxy.tar.gz内核的更新过程cd rpmbuild/yum install -y rpm-build配置好yum源后,安装rpm-build工具解开源码后,生成二进制的patch文件cd rpmbuild/

2017-07-28 23:15:49 520

原创 keepalived搭建高可用负载均衡服务

配置过程如下,假设有两台主机作为集群的节点,在两台主机上如下安装好keepalived如果系统中有心跳服务需要先将其关闭,/etc/init.d/heartbeat stopchkconfig heartbeat off然后下载好keepalived的压缩包(操作中使用的是keepalived-1.3.5.tar.gz),然后进行压缩解压缩 tar zxf keepalived-1.3.5.

2017-07-28 23:00:19 315

原创 Heartbeat服务搭建高可用集群

heartbeat服务的配置1.下载安装心跳软件 (必须得先配置好yum源) heartbeat-3.0.4-2.el6.x86_64.rpm heartbeat-devel-3.0.4-2.el6.x86_64.rpm heartbeat-libs-3.0.4-2.el6.x86_64.rpm yum install -y heartbeat-*2.修改heartb

2017-07-26 16:52:40 1722

原创 LVS工作原理的简单理解

在LVS中有四种常用的模式 以下结合图片说说我的理解DR模式(直接路由) DR模式处理客户端的请求时,虚拟服务器与真实的服务器子在一个内网上,然后处理,VS/DR调度器只处理客户到服务器端的连接,响应数据可以直接从独立的网络路由返回给客户。这可以极大地提高LVS集群系统的伸缩性。 虚拟服务器与实际服务器都有一块网卡连在同一物理网段上,服务器网络设备(或者设备别名)不作ARP响应,或者能将报文重定

2017-07-26 10:26:15 401

转载 GRUB下对linux系统的引导

在grub下来引导linux;其步骤如下;a 进入grub的命令模式。b 先熟悉一下grub 的一些命令 grub>helpc 熟悉一下cat命令d root指令来指定/boot所在的分区e kernel指令来指定linux的内核,及所在的分区f 用initrd命令来指定initrd文件g boot引导系统cat命令的用法cat指令是用来查看文件内容的,有时我们不知道Linux的/b

2017-07-24 20:46:10 807

puppet安装包及一些依赖性

puppet安装包和一些依赖性 没了

2017-09-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除