自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 收藏
  • 关注

原创 20181101 大作业

需求:1 设计你认为合理的架构,用visio把架构图画出来2 搭建lnmp、tomcat+jdk环境3 三个站点分别为:discuz论坛、dedecms企业网站以及zrlog博客4 由于机器有限,尽可能地把三个站点放到同一台服务器上,然后做负载均衡集群,要求所有站点域名解析到一个ip上,也就是说只有一个出口ip5 需要共享静态文件,比如discuz需要共享的目录是 data/attac...

2018-11-01 01:24:19 780

原创 2.docker通过模板创建镜像以及容器、仓库和数据管理

25.5 通过模板创建镜像1.既然是通过模板创建镜像,那么首先肯定得先下载一个模板,地址如下:http://openvz.org/Download/templates/precreated打开以上网址选择一个模板进行下载,我这里下载的是centos-6-x86-minimal.tar.gz (signature),可以复制下载链接到LInux上下载,也可以直接通过windows下载...

2018-11-30 21:26:34 306

原创 1.安装docker以及通过容器创建镜像

25.1 docker简介Docker是一个开放源代码软件项目,自2013年开始,近些年发展迅猛,它让应用程序布署在软件容器下的工作可以自动化进行,借此在Linux操作系统上,提供一个额外的软件抽象层,以及操作系统层虚拟化的自动管理机制。Docker利用Linux核心中的资源分脱机制,例如cgroups,以及Linux核心名字空间(name space),来创建独立的软件容器(containe...

2018-11-30 07:21:39 922

原创 playbook管理配置文件

 playbook管理配置文件上一篇文章中我们成功的通过playbook安装了nginx,而生产环境中大多时候是需要管理配置文件的,例如修改配置文件然后进行重启服务,修改配置文件时可能会出现误修改的情况,所以我们还需要准备一个回滚的操作。至于安装软件包只是在初始化环境的时候用一下。下面我们来写个管理nginx配置文件的playbook。1.创建相应的目录:[root@server...

2018-11-29 22:58:10 798

原创 使用playbook安装nginx

playbook实战-nginx安装(1)需求:虽然nginx可以直接使用yum安装,但是我想要的是使用源码包编译安装,并且需要自定义一些模块。而且我需要通过playbook下发到远程机器上。实现思路:先在一台机器上编译安装好nginx、打包,也就是把这台机器作为模板机,然后再用ansible playbook去进行下发到远程机器上。1.进入ansible配置文件目录,并创建一个ngi...

2018-11-29 22:31:59 1039

原创 简单使用ansible-playbook

 24.22 使用ansible playbookplaybook相当于可以把模块命令都写入到配置文件里面,这样就可以直接执行配置文件了,有点脚本的意思:[root@server ~]# vim /etc/ansible/test.yml---- hosts: testhost  remote_user: root  tasks:    - name: test_playb...

2018-11-29 08:34:35 485

原创 安装ansible以及简单使用

24.15 ansible介绍ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括:连接...

2018-11-28 19:38:43 683

原创 git-使用已有的私钥进行GitHub验证

2018-01-14 19:33:51之前在Linux中已经生成了ssh密钥对,并且也配置好了与GitHub仓库的连接,然后想在windows上也连接一下GitHub仓库,于是把生成好的私钥先存储到windows上的一个文件夹中,接着打开git bash:然后把私钥文件移动到git的ssh目录下:$ mv E:/git_ssh_key/id_rsa ~/.ssh$ ls ~/.ss...

2018-11-26 12:16:08 2636

原创 git 入门

单机上使用gitgit是分布式的仓库,我们不需要把代码上传或更新到某个特定的服务器上,所以它不需要依赖网络,我们可以在本地创建一个git仓库。yum install -y git  #安装命令:[root@localhost ~]# mkdir /data/gitroot  #创建git仓库:[root@localhost ~]# cd /data/gitroot[root@...

2018-11-26 10:01:42 268

原创 SVN

1 代码管理平台介绍现在的开发工作都是由团队合作来完成开发,通常都是团队中的每个人或者每几个人完成一个模块的开发,最后再将模块拼凑起来,形成一个完整的项目,这就涉及到了协同开发。在各个模块的开发过程中,肯定会因为出现BUG或者需求更改,而进行代码的修改甚至重构的,代码每修改一次就相当于迭代了一次版本,一个完整的项目中通常会有多个模块,如果每个模块的开发过程中都会修改或重构代码,那么如果没有一个...

2018-11-26 09:52:22 263

原创 自动化运维-004 saltstack配置认证 ???

saltstack的服务端和客户端通信需要建立一个安全通道,传输过程需要加密,所以得配置认证,也是通过密钥对来加密解密的,说白了就是配置个密钥认证。minion在第一次启动时会在/etc/salt/pki/minion/下生成minion.pem和minion.pub,其中.pub为公钥,我们需要把公钥传输给master。[root@client ~]# ls /etc/salt/pki/m...

2018-11-24 20:41:18 195

原创 自动化运维-003 启动saltstack服务

192.168.77.130 服务端192.168.106.129 server panyu002 192.168.77.128 客户端192.168.106.128 client panyu001[root@server ~]# vim /etc/salt/minion  #安装完成后需要先在服务端编辑配置文件:master: server  # 在文件中找到master,然后配置主机名...

2018-11-24 20:41:02 1211

原创 实战项目笔记

1.告警系统 panyu001  192.168.106.128  文章:https://mp.csdn.net/postedit/84334651 2.mycat 192.168.106.132           mycat3.panzc001 192.168.106.130     mysql主4.panzc002 192.168.106.131     mysql从5.mycat ...

2018-11-24 20:40:24 111

原创 自动化运维-002 saltstack安装

saltstack安装saltstack的官方介绍文档:https://docs.saltstack.com/en/latest/topics/index.htmlsaltstack可以使用salt-ssh远程执行,类似ansible,也可以使用c/s模式,下面我们将讲述该种模式的使用,因为salt-ssh很少用到,c/s模式是最常用的。客户机/服务器模式,资源有限我这里只准备了两台机器,一...

2018-11-24 20:39:33 142

原创 自动化运维-001 自动化运维介绍

自动化运维介绍随着信息时代的持续发展,IT运维已经成为IT服务内涵中重要的组成部分。面对越来越复杂的业务,面对越来越多样化的用户需求,不断扩展的IT应用需要越来越合理的模式来保障IT服务能灵活便捷、安全稳定地持续保障,这种模式中的保障因素就是IT运维(其他因素是更加优越的IT架构等)。从初期的几台服务器发展到庞大的数据中心,单靠人工已经无法满足在技术、业务、管理等方面的要求,那么标准化、自动化...

2018-11-23 21:44:06 1238 1

原创 shell-027 shell常见错误集锦

001.[root@pyzc-mycat test]# ./expect130.expectwrong # args: should be "set varName ?newValue?"    while executing"set host "192.168.106.130"  #在expect里定义变量是需要加set 这里定义host为第二台机器"    (file "./expect...

2018-11-23 21:43:46 4311 1

原创 shell-026 分发系统

1.分发系统介绍场景:随着业务越来越大,网站或者APP服务端所使用的编程语言为PHP,需要配置lamp或者lnmp环境,还需要把代码上传到服务器上去。但是平时业务功能不断增加,需要改代码,如果有几十台上百台机器,就需要一个分发系统,将每次更新的代码发布到新的机器上去。核心shell脚本:expect,可以实现传输文件,也可以远程执行命令思路:首先要准备一台模板机器,机器上的代码是最新代码(...

2018-11-23 09:52:36 145

原创 shell-025 告警系统

1.告警系统需求分析1. 需求:使用shell定制各种个性化告警工具,但需要统一化管理、规范化管理。2. 思路:指定一个脚本包,包含主程序、子程序、配置文件、邮件引擎、输出日志等。3. 主程序:作为整个脚本的入口,是整个系统的命脉。4. 配置文件:是一个控制中心,用它来开关各个子程序,指定各个相关联的日志文件。5. 子程序:这个才是真正的监控脚本,用来监控各个指标。6. 邮件引擎:...

2018-11-23 09:52:31 226

原创 shell-024 shell中的数组

1. 定义数组:[root@hao-01 ~]# a=(1 2 3 4 5) 2. 查看a数组的元素:[root@hao-01 ~]# echo ${a[*]} 3. 查看数组某个元素的值(数组从0开始值为1):[root@hao-01 ~]# echo ${a[1]} 4. 获取数组的元素 个数:[root@hao-01 ~]# echo ${#a[*]} 5. 如果下标不存在则会自动...

2018-11-23 09:47:35 120

原创 shell-023 shell中的函数

函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可。#!/bin/bash#脚本名字为fun1.shfunction inp(){   echo "The first par is $1"   echo "The second par is $2"   echo "The third par is $3"   echo ...

2018-11-23 07:59:53 210

原创 shell-022 三剑客grep sed awk

grep [-cinvABC] 'word' filename-c   行数-i   不区分大小写-n   显示行号-v   取反-r   遍历所有子目录-A   后面跟数字,过滤出符合要求的行以及下面n行-B   同上,过滤出符合要求的行以及上面n行-C   同上,同时过滤出符合要求的行以及上下各n行egrep=’egrep –color=auto’sed [-hnV...

2018-11-23 07:57:32 162

原创 shell-021 跳出、结束、退出循环-break、continue、exit

#!/bin/bash#执行过程sh -x break.sh:可以看到当i=3就跳出以下循环,直接运aaaaa结束for i in `seq 1 5`do   echo $i   if [ $i  -eq 3 ]   then      break   fi   echo $idoneecho aaaaa#!/bin/bash#执行sh  continue.sh ...

2018-11-23 07:57:12 1301

原创 shell-020 while循环

语法: while 条件; do 内容… ; done#!/bin/bash#执行sh -x while1.sh:每隔30秒检查系统负载,当负载达到10,发一份邮件 !while true   #可以写成  while :do    load=`w|head -1|awk -F 'load average: ' '{print $2}'|cut -d. -f1`    if [ $lo...

2018-11-23 07:57:00 127

原创 shell-019 for循环

#!/bin/bash# 计算1到100所有数字和sum=0for i in `seq 1 100`do   echo "$sum + $i"   sum=$[$sum+$i]   echo $sumdoneecho $sum#!/bin/bash#文件列表循环(常用)???cd /etc/for a in  ls /etc/do   if [ -d $a ]...

2018-11-23 07:56:48 114

原创 shell-018 case判断

格式:在case程序中,可以在条件中使用  | ,表示或的意思case 变量名  in                value1)                        ---第一个判断                        command                            ;;                value2)           ...

2018-11-22 10:08:48 424

原创 shell-017 if特殊用法

if [ -z "$a" ]  这个表示当变量a的值为空时会怎么样  zeroif [ -n "$a" ]  表示当变量a的值不为空 not zeroif grep -q '123' 1.txt; then  表示如果1.txt中含有'123'的行时会怎么样if [ ! -e file ]; then 表示文件不存在时会怎么样 取反if (($a<1)); then …等同于 if [ $a...

2018-11-22 10:08:31 146

原创 shell-016 文件目录属性判断

[ -f file ]判断是否是普通文件,且存在[ -d file ] 判断是否是目录,且存在[ -e file ] 判断文件或目录是否存在  exist[ -r file ] 判断文件是否可读[ -w file ] 判断文件是否可写[ -x file ] 判断文件是否可执行#!/bin/bash#判断/tmp/hao.txt是不是普通文件?是否存在?如果不存在,创建这个文件!...

2018-11-22 10:08:10 151

原创 shell-015 Shell脚本中的逻辑判断

格式1:if 条件 ; then 语句; fi1. 创建if1.sh测试脚本:[root@hao-01 ~]# vi if1.sha=5,如果a大于3,满足这个条件,显示ok  ,  添加内容:#!/bin/basha=5if [ $a -gt 3 ]then   echo okfi2. 执行if1.sh脚本:[root@hao-01 ~]# sh if1.sh格式2:i...

2018-11-22 10:07:52 377

原创 shell-014 Shell脚本中的变量

1. 当脚本中使用某个字符串较频繁并且字符串长度很长时就应该使用变量代替2. 使用条件语句时,常使用变量    if [ $a -gt 1 ]; then ... ; fi3. 引用某个命令的结果时,用变量替代   n=`wc -l 1.txt`    #反单引号,包含命令?4. 写和用户交互的脚本时,变量也是必不可少的  read -p "Input a number: " n; echo...

2018-11-22 10:07:29 134

原创 shell-013 date命令用法

查看当前时间 :[root@hao-01 ~]# date年:[root@hao-01 ~]#date +%Y   或   [root@hao-01 ~]#date +%y月:[root@hao-01 ~]#date +%m分钟:[root@hao-01 ~]#date +%M日期:[root@hao-01 ~]# date +%d月日年:[root@hao-01 ~]# dat...

2018-11-22 10:07:11 122

原创 shell-012 脚本结构和执行

1. 开头(首行)需要加 : #!/bin/bash2. 以#开头的行作为解释说明 :3. 脚本的名字以.sh结尾,用于区分这是一个shell脚本4. 执行.sh脚本方法有两种 :1) 先给.sh脚本添加x权限:[root@hao-01 ~]# chmod +x 1.sh.sh脚本的绝对路径回车:[root@hao-01 ~]# /root/1.sh2) bash(bash=s...

2018-11-22 10:06:55 280

原创 shell-011 shell特殊符号-总结

!$    表示上条命中中最后一个变量 ;     分号,一行中运行两个或两个以上的命令需在命令之间加 ”;”  ~    用户的家目录,如果是root则是 /root ,普通用户则是 /home/username &    命令放到后台执行,则需要加上这个符号,用于命令运行时间非常长的情况 >, >>, 2>, 2>>    > 以及&g...

2018-11-22 10:06:35 256

原创 shell-010 tee tr split命令

命令 : tee 后跟文件名,类似与重定向 “>”, 但是比重定向多了一个功能,在把文件写入后面所跟的文件中的同时,还显示在屏幕上。[root@localhost ~]# echo "aaaaaaaaaaaaaaaaaaaaaaaaaaa" |tee testb.txt   #tee 常用语管道符 “|” 后。aaaaaaaaaaaaaaaaaaaaaaaaaaa[root@l...

2018-11-22 10:06:02 152

原创 shell-009 sort wc uniq命令

[root@panyu001 test]# cat test.txti31fcs cc c dsssort : -n(数字排序) -r(反序)  -t(分隔符)[root@panyu001 test]# sort test.txt13 cc c dsscsfi[root@panyu001 test]# sort -n test.txt cc c dsscs...

2018-11-22 10:05:54 117

原创 shell-008 特殊符cut命令

1. 特殊符号:*      n个字符?     一个字符#     注释字符\      脱意符号,与' '类似|      管道符2. cut命令cut命令: -d(分隔符) -f(指定段号) -c(指定第几个字符)[root@panyu001 test]# cat /etc/passwd |head -2 |cut -d ":" -f 1,2,3,4  #指定以冒号为...

2018-11-21 21:54:09 178

原创 shell-007 系统环境变量和个人环境变量

/etc/profile #用户环境变量(全局),交互,登录才执行 系统层次 交互式login shell  登录Linux系统或使用su -命令时,Non-login shell 不会调用这个脚本,包含变量PATH:命令搜索路径;USER: 用户登录名;LOGNAME:值为$USER;HOSTNAME:主机名;MAIL:用户邮箱(ASCII码);HISTSIZE:历史记录的行数;INPUTRC:...

2018-11-21 21:33:49 232

原创 Notepad++ 安装 NppFTP 插件

https://github.com/bruderstein/nppPluginManager/releases/tag/v1.4.121.下载地址PluginManager2.通过PluginManager安装NppFTP 

2018-11-21 20:22:36 234

原创 ip连通性的测试

ping.pe通过位于世界各地的32台服务器,其中有数个是国内的服务器,来ping某个ip。至于作用,你懂的。 17ce.com除了ping还可get,服务器遍布各省,也有境外,最赞的是将速率以不同颜色展示在地图上。 ipinfo.io获取某ip的相关信息,提供多种API调用方式。 ...

2018-11-21 19:55:35 4192

原创 shell-006 shell变量

变量就是使用一个比较简单的字符串来代替某些具有特殊意义的设定以及数据。环境变量PATH,它是shell预设的一个变量,通常shell预设的变量都是大写的。PATH、HOME、PWD、LOGNAME、HOSTNAME[root@localhost ~]# env #系统环境变量,列出系统预设的全部系统变量[root@localhost ~]# set #系统变量和自定义变量[root@...

2018-11-21 16:03:15 181

原创 shell-005 管道符 | 和作业控制

管道符[root@localhost ~]# cat /etc/passwd |wc -l  #作用是将前面一个命令的输出作为后面一个命令的输入27[root@localhost ~]# cat /etc/passwd |grep "root"root:x:0:0:root:/root:/bin/bashoperator:x:11:0:operator:/root:/sbin/nol...

2018-11-21 15:55:02 200 1

空空如也

空空如也

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

TA关注的人

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