记录云计算中心日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。
 
0
触发器相关概念及语法触发器概述什么是触发器  触发器是一种特殊的存储过程,和存储过程和存储函数一样是一个pl/sql程序块,触发器是不能接受参数,不能显示调用,只是随着事件触发隐式运行的存储过程程序块。触发器的应用场景复杂的安全性检查数据确认实现审计功能完成数据的备份和同步触发器概念和第一个触发器概念  数据库触发器是一个与表相关联的,存储的PL/SQL程序,每当一个特定的数据库操作语句(insert ,update,delete)在指定的表上发出时,Oracle自动地执行触发器中定义得语句序列。第一个触发器-- 第一个触发器:每当成功插入新员工后,自动打印“成功插入新员工” -- 触发器单词:trigger create trigger saynewem -- 创建触发器名称 after insert -- 在插入操作以后 on emp -- 针对emp的表 declare -- 操作体 begin dbms_output.put_line('成功插入新员工'); -- 触发器操作的内容 end; 触发器的应用场景复杂的安全性的场景(涉及到权限的问题);数据的确认(涉及数据是否合理问题);数据的审计(涉及到数据的增、删、改的操作记录);数据的备份和同步(备份和同步重要);触发器的语法create[or replace] trigger 触发器名 {before|after} {dele...
 
0

Keepalived 实现高可用

发表者:admin分类:应用服务2017-12-05 11:21:29 阅读[2070]
项目实战3—Keepalived 实现高可用目录实验一:实现keepalived主从方式高可用基于LVS-DR模式的应用实战:1、环境准备:2、在lvs-server-master 主上3、在lvs-server-backup 从上4、在real server 上5、测试实验二:实现keepalived双主方式高可用基于LVS-DR模式的应用实战:1、实验环境,基本同上2、在lvs-server1 上,基本同上,就是加了一个实例段3、在lvs-server2 上,基本同1,就是把实例的主从调换一下4、在real server 上5、测试实验三:实现keepalived主从方式高可用基于LVS-NAT模式的应用实战:1、环境准备2、在lvs-server-master 主上4、在real server 上5、测试实验四:实现keeaplived 故障通知机制1、编写好脚本2、在keepalived 的配置文件调用脚本实验五:实现keepaplived自定义脚本检测功能方案一:检测是否存在down文件,来实现主从的调整方案二:检测nginx服务是否开启,来实现调整主从 实现基于Keepalived高可用集群网站架构  环境:随着业务的发展,网站的访问量越来越大,网站访问量已经从原来的1000QPS,变为3000QPS,目前业务已经通过集群LVS架构可做到随时拓展,后端节点已经通过集群技术保障了可用性,但对于前端负载均衡器来说,是个比较大的安...
高并发场景 LVS 安装及高可用实现1.1 负载均衡介绍1.1.1 负载均衡的妙用 负载均衡(Load Balance)集群提供了一种廉价、有效、透明的方法,来扩展网络设备和服务器的负载、带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。ü 单台计算机无法承受大规模的并发访问或数据流量了,此时需要搭建负载均衡集群把流量分摊到多台节点设备上分别处理,即减少用户等待响应的时间又提升了用户体验;ü 7*24小时的服务保证,任意一个或多个有限后端节点设备宕机,不能影响整个业务的运行。1.1.2 为什么要用lvsn 工作在网络模型的7层,可以针对http应用做一些分流的策略,比如针对域名、目录结构,Nginx单凭这点可利用的场合就远多于LVS了。n 最新版本的Nginx也支持4层TCP负载,曾经这是LVS比Nginx好的地方。n Nginx对网络稳定性的依赖非常小,理论上能ping通就就能进行负载功能,这个也是它的优势之一,相反LVS对网络稳定性依赖比较大。n Nginx安装和配置比较简单,测试起来比较方便,它基本能把错误用日志打印出来。LVS的配置、测试就要花比较长的时间了,LVS对网络依赖比较大。那为什么要用lvs呢?ü 简单一句话,当并发超过...
 
0

zabbix客户端自动注册

发表者:admin分类:监控安全2017-12-05 10:25:47 阅读[2152]
1. 概述zabbix自动发现配置,大概内容是zabbix server去扫描一个网段,把在线的主机添加到Host列表中。我们本篇内容与上篇相反,这次是Active agent主动联系zabbix server,最后由zabbix server将这些agent加到host里。对于需要部署特别多服务器的人来说,这功能相当给力。所有服务器批量装好zabbix agent,server配置好trigger,所有的服务器都配置好了,非常快速。2. 配置2.1配置文件修改指定server ip# cat /usr/local/zabbix-2.2.2/etc/zabbix_agentd.conf | grep -E ^ServerActive ServerActive=66.175.222.23212# cat /usr/local/zabbix-2.2.2/etc/zabbix_agentd.conf | grep -E ^ServerActive ServerActive=66.175.222.232修改Hostname# cat /usr/local/zabbix-2.2.1/etc/zabbix_agentd.conf | grep -E ^Hostname                           Hostname=auto-reg-for-ttlsa-0112# cat /usr/local/zabbix-2.2.1/etc/zabbix_agentd.conf | grep -E ^Hostname           &nb...
 
0
进程和线程关系及区别 1.定义进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.2.关系一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行.相对进程而言,线程是一个更加接近于执行体的概念,它可以与同进程中的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。3.区别进程和线程的主要差别在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些。但对于一些要求...
 
0
在linux下不同硬件或者系统版本不同识别到的块设备的名称各不相同,可能是sda、xda等等,因此通过zabbix监控磁盘普通的模板显得死板不不够灵活。通过zabbix的自动发现功能,通过脚本获取系统块设备的名称,然后保存到变量中,在通过zabbix客户端的自定义监控选项将监控的键值传给服务端。参考http://www.ttlsa.com/zabbix/zabbix-lld-monitor-disk-io-stats/ 该文档部署,但需要修改zabbix服务端的模板文件,测试发生使用该文档提供的 zbx_parse_iostat_values.sh获得的键值在zabbix服务端呈现图像时有问题,因此使用除了需要修改zabbix客户端的配置文件中的自定义键值的获取方式外,还需要修改服务端模板文件创建自动发现脚本从网络上下载,vim /etc/zabbix/scripts/discover_disk.pl#!/usr/bin/<a href="http://www.ttlsa.com/perl/" title="perl"target="_blank">perl</a># give disk dmname, returns Proxmox VM namesub get_vmname_by_id  {  $vmname=`cat /etc/qemu-server/$_[0].conf | grep name | cut -d \: -f 2`;  $vmname =~ s/^\s+//; #remove leading spaces  $vmname =~ s/\s+$//; #remove tr...
CentOS 7 利用qemu模拟ARM vexpress A9开发板本文仅仅记录Qemu装载Linux kernel和busybox根文件系统的过程。后续将会深入了解仿真的其他内容。先上成果图:1. 安装QEMUQEMU是一套由Fabrice Bellard所编写的以GPL许可证分发源码的模拟处理器,在GNU/Linux平台上使用广泛。Bochs,PearPC等与其类似,但不具备其许多特性,比如高速度及跨平台的特性,通过KQMEU这个开源的加速器,QEMU能模拟至接近真实电脑的速度。之前已有记录CentOS 7编译安装qemu的方法:http://www.92cto.com/blog/2000.html我的版本是2.10.02. 编译内核解压下载的kernel文件,进入解压后的文件夹,运行下面的指令编译。生成vexpress开发板子的config文件:make CROSS_COMPILE=arm-none-linux-gnueabi- ARCH=arm vexpress_defconfig编译:make CROSS_COMPILE=arm-linux-gnueabi- ARCH=arm执行启动脚本 #! /bin/bash qemu-system-arm \ -M vexpress-a9 \ -m 512M \ -kernel /home/walt740/kernel/linux-4.13.5/arch/arm/boot/zImage \ ...
QEMU编译安装支持ARM架构QEMU是一个支持跨平台虚拟化的虚拟机,有user mode和system mode两种配置方式。其中qemu在system mode配置下模拟出整个计算机,可以在qemu之上运行一个操作系统。QEMU的system mode与常见的VMware和Virtualbox等虚拟机比较相似,但是QEMU的优势是可以跨指令集。例如,VMware和Virtualbox之类的工具通常只能在x86计算机上虚拟出一个x86计算机,而QEMU支持在x86上虚拟出一个ARM计算机。qemu在user mode配置下,可以运行跟当前平台指令集不同的平台可执行程序。例如可以用qemu在x86上运行ARM的可执行程序,但是两个平台必须是同一种操作系统,比如Linux。QEMU还支持很多其他的平台,详细列表参见这里。QEMU中有两个重要的名词host和target(guest),其中host表示qemu程序本身运行的平台,target(guest)表示qemu虚拟出的计算机平台(system mode)或支持的可执行程序的运行平台(user mode)。下面描述一下编译和使用host为x86,target(guest)为ARM的步骤1. 下载QEMU源码wget http://wiki.qemu-project.org/download/qemu-1.4.0.tar.bz22. 解压、configuretar xvf qemu-1.4.0.tar.bz2 cd qemu-1.4.0 ./configure --target-list=arm-softmmu,arm-linux-user -...
经常有网站管理员因为各种原因和操作,导致网站数据误删,而且又没有做网站备份,结果不知所措,甚至给网站运营和盈利带来负面影响。所以本文我们将和大家一起分享学习下如何通过Mysql的二机制日志(binlog)来恢复数据。系统环境:操作系统:CentOS 6.5 X64  (虚拟机);WEB服务:PHP+Mysql+apache;网站:为方便,直接在本地用蝉知系统搭建一个DEMO站点;操作步骤:1.开启binlog功能及基本操作;2.往站点添加数据;3.刷新binlog日志;4.删除数据;5.binlog日志内容解析;6.恢复指定数据;1.开启binlog功能及基本操作要使用Mysql的binlog日志功能,首先要在Mysql的配置文件中开启该功能,操作很简单。找到Mysql的配置文件,在文件中添加一行”log_bin = mysql-bin”即可。其实在我安装的各种Mysql环境中,该功能通常都是默认开启的。开启binlog功能后,在mysql的数据库目录下就会有诸如mysql-bin.000001、mysql-bin.000002等文件,这就是mysql的二进制日志文件。每当mysql启动或手动刷新日志后都会新建一个二进制日志文件。首先我们mysql命令行中,用”show master logs”命令查看已有的binlog文件。2.往站点添加数据在网站后台文章模块里,我添加了几条测试数据。3.刷新b...
 
0

运维利器万能的 strace

发表者:admin分类:系统运维2017-12-04 12:42:41 阅读[628]
运维利器万能的 strace strace是什么?按照strace官网的描述, strace是一个可用于诊断、调试和教学的Linux用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。strace底层使用内核的ptrace特性来实现其功能。在运维的日常工作中,故障处理和问题诊断是个主要的内容,也是必备的技能。strace作为一种动态跟踪工具,能够帮助运维高效地定位进程和服务故障。它像是一个侦探,通过系统调用的蛛丝马迹,告诉你异常的真相。strace能做什么?运维工程师都是实践派的人,我们还是先来个例子吧。我们从别的机器copy了个叫做some_server的软件包过来,开发说直接启动就行,啥都不用改。可是尝试启动时却报错,根本起不来!启动命令:./some_server ../conf/some_server.conf1./some_server ../conf/some_server.conf输出:FATAL: InitLogFile failed iRet: -1!Init error: -165512FATAL: InitLogFile failed iRet: -1!Init error: -1655为什么起不来呢?从日志看,似乎是初始化日志文件失败,真相到底怎样呢?我们用strace来看看。strace -tt -f  ./some_server ../conf/some_server.conf1strace -tt -f  ./some_server ../con...
    总共198页,当前第7页 | 页数:
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17