shell

🍁 Centos运维常用工具
授权协议 Readme
开发语言 SHELL
所属分类 应用工具、 终端/远程登录
软件类型 开源软件
地区 不详
投 递 者 慕容越泽
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Centos运维常用工具

前言

本工具集包含有系统内核参数优化,ssh证书登录,网卡聚合,mongodb/mysql数据库安装,网络监控以及J2EE开发常用工具安装。以上工具集均为centos中常用的配置与工具,经过本人上一份工作,运维20多台分布式服务器,安装过50次以上linux的实践经验,收集整理出这套常用的服务器管理配置,在我后续的工作中发挥了巨大的价值,提升了N倍工作效率。当然这个过程中,离不开向专业的运维工程师请教,向度娘和谷哥咨询,后续也会不断的更新和改善这套工程集,使得工具包含的更加齐全和便捷。本工具集适用需要经常部署WEB环境的伙伴使用。

申明:本人原本想成为一名Java工程师,却成为了一名前端工程师(h5/angularJs/css3),最后其实做的是全栈的工作。所以分享的内容不一定非常专业有深度,但是乐意将自己所经历过的东西与大家分享,希望可以给大家带来帮助,如有错误欢迎批评指正。

另外:以上核心参数优化,比较适合WEB应用和数据库服务器的配置,其它用途的服务器建议先了解参数的含义,修改参数后再使用,因为不同的服务也许有更合适的参数。

下载代码后,给文件加可执行权限:chmod -R +x shell/

1. 功能列表

--执行auto.sh--

2. 功能列表说明

2.1 【System Environment】系统环境

  • Initialization System environment 系统内核参数优化,提升运行效率。
  • Configure SSH_Auth 配置SSH证书登录,authorized_keys是公钥,client_rsa是私钥,需要自己生成替换例子中的两个文件。
  • Configure Network-bonding 配置网卡聚合,需要把network/network-bonding.sh中聚合的IP改成自己的IP。

2.2 【Common Databases】常用数据库

  • Install MongoDB_2.6 安装Mongodb2.6版本 (后续会将集群配置及优化脚本补上)
  • Install MongoDB_3.0 安装Mongodb3.0版本 (后续会将集群配置及优化脚本补上)
  • Install MySQL 安装Mysql 5.1.3版本

2.3 【Network Monitoring】网络监控

  • Find Current Network-flow 显示当前服务器网卡流量状态
  • Install Url_Listening 这是一个比较奇葩的功能,一般用于解决限于水深火热之中的问题;用于监听一个URL,当返回的内容中,包含某个关键内容时,可执行指定的操作。

2.4 【Common Tools】常用工具

  • Install Nginx1.6 安装Nginx1.6版本
  • Install Jdk1.7 安装JDK1.7版本,也可以修改app/java/install_JDK.sh中wget源的地址,改成自己需要安装的任意JDK版本
  • Install Maven3.3.9 安装Maven3.3.9版本
  • Install SVN1.8 安装Subverion1.8版本,如果想装其作为SVN服务端,可执行service httpd restart
  • Install Tomcat7 安装Tomcat 7版本
  • Install Tomcat8 安装Tomcat 8版本
  • Install Jenkins2.18 安装Jenkins2.18版本
  • Install Git1.7.1 安装Git1.7.1版本
  • Install Memcached1.4.4 安装Memcached1.4.4版本
  • Install Redis 安装Redis2.8.7版本
  • NFS-Server 安装NFS服务器
  • NFS-Client 安装NFS终端

3. 操作说明

输入相应的序号即可执行操作。

  • 题目: 编程实现shell排序算法。尝试采用不同的增量序列,测试shell排序的时间开销。 输入可以为正序、逆序或随机序列。 初始化正序数组: int record[MAXSIZE]; memset(record, 0, MAXSIZE * sizeof(int)); for (int i = 0; i < MAXSIZE; i++) {          record[i] = i; } 初始化

  • Shell 加法 1. 两数字相加 #!/usr/bin/env bash echo -n 'Enter the First Number: ' read -r a echo -n 'Enter the Second Number: ' read -r b echo "$a + $b = $((a+b))" 执行: $ bash addition.sh Enter the First Numb

  • #!/bin/bash dir="/root/test_dir" if [ ! -d "$dir" ];then mkdir $dir echo "创建文件夹成功" else echo "文件夹已经存在" fi  

  • Shell 和其它编程语言不同,Shell 不能直接进行算数运算,必须使用数学计算命令 要想让数学计算发挥作用,必须使用数学计算命令,Shell 中常用的数学计算命令如下表所示。 运算操作符/运算命令 说明 (( )) 用于整数运算,效率很高,推荐使用。 let 用于整数运算,和 (()) 类似。 [$] 用于整数运算,不如 (()) 灵活。 expr 可用于整数运算,也可以处理字符串。比较麻烦,

  • Shell 减法 tags: 数学 1. 数字相减 subtraction.sh #!/usr/bin/env bash printf "Enter the First Number: " read -r a printf "Enter the Second Number: " read -r b echo "$a - $b = $((a - b))" 执行: $ bash subtractio

  • 【shell 中 if 和 else 用法详解】 原文链接:https://www.cnblogs.com/matthewma/p/6995479.html shell的if语法和C语言等高级语言非常相似, 注意:shell的if语句对空格方面的要求比较严格(其实shell对所有语法的空格使用都比较严格), 如果在需要空格的地方没有打上空格,都会报错。 如if [ $1x == "ip"x ];t

  • 摘录自博客链接地址:http://c.biancheng.net/view/706.html 1. Shell是什么? 答:shell本意是指壳,在计算机术语中,shell是指用户操作接口的意思。操作系统运行起来后都会给用户提供一个操作接口,这个操作接口就叫shell。 用户可以通过shell来调用操作系统内部的复杂实现。 Shell 是一个应用程序,它连接了用户和 Linux 内核,让用户能够更

  • 1、通配符 在 Bash 中,如果需要模糊匹配文件名或目录名,就要用到通配符。下面为常用的通配符。 通配符 说明 * 匹配0或任意个字符 ? 匹配一个任意字符 [-] 匹配中括号的字符。例如[a-b],匹配小写字母,只会匹配集合中的一个 [^] 匹配除了中括号的一个字符。例如[^0-9],匹配除了数字的字符,只会匹配集合中的一个 {ab,ba} 匹配其中一个字符串。例如匹配ab或ba 2、容易混淆

  • Linux 的字符串截取很有用。有八种方法。 假设有变量: var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符。 代码如下: echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.aaa.com/123.htm 2. ##

  • echo:用于字符串的输出 用法: echo [选项] string 选项: -n: 不换行输出 -e: 处理特殊字符 若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出: \a:发出警告声 \b:删除前一个字符 \c:最后不加上换行符号 \f: 换行但光标仍旧停留在原来的位置 \n:换行且光标移至行首 \r:光标移至行首,但不换行 \t:插入tab \v 与\f 相同 示例: >

 相关资料
  • Bootstrapping:  Kickstart、Cobbler、rpmbuild/xen、kvm、lxc、 Openstack、 Cloudstack、Opennebula、Eucalyplus、RHEV 配置类工具:  Capistrano、Chef、puppet、func、salstack、Ansible、 rundeck、CFengine、Rudder 自动化构建和测试:  Ant、Ma

  • Linux中有很多非常实用的工具或命令,灵活运用这些工具,可以帮助我们在Shell编程中化繁为简,如虎添翼。可能一个工具或命令就能让原本负责的问题快速解决,本章节我们来一起丰富我们的工具库,日常可以多积累总结,帮助我们更好的编写Shell。 1. sort 简介:顾名思义,就是用来排序的工具,在我们日常工作中对于重复列的多行输出,如果想要对内容按照特定规则排序,此时就用到了sort工具。 原理:s

  • 运维工具用于帮助用户自动化运维虚拟机等资源,如定时开关机和通过编排部署虚拟机和容器实例等。 定时任务 定时任务即在指定的时间点对关联资源进行指定动作。 编排 通过Helm编排一键部署虚拟机实例和容器实例。

  • Linux基础 Linux FHS : Filesystem Hierarchy Standard Linux 基本操作命令 Linux 内置编辑器: vi nano Linux 系统 Centos Debian Ubuntu 脚本 Shell Python Perl 运维命令 运维命令图片引用自 Brendan Gregg 《Linux Performance Analysis and Tool

  • 一、解放生产力 以下脚本需要放入一个可执行文件中,实现双击就可以运行! 1.1、快速提交代码 # Mac 上可以去掉脚本的第一行标志:「#!/bin/bash」 # 加上这个,颜色码会失效 # 1、cd 到当前目录 currentDir=$(cd "$(dirname "$0")"; pwd) cd ${currentDir} # 2、获取当前的分支 currentBranch=$(git s

  • redis-cli shutdown sentinel方法一样,只是需要执行sentinel的连接端口 注意:正确关闭服务器方式是redis-cli shutdown 或者 kill,都会graceful shutdown,保证写RDB文件以及将AOF文件fsync到磁盘,不会丢失数据。 如果是粗暴的Ctrl+C,或者kill -9 就可能丢失。如果有配置save,还希望在shutdown时进行R

  • 3.1.1 启动redis $ redis-server redis.conf 常见选项: ./redis-server (run the server with default conf) ./redis-server /etc/redis/6379.conf ./redis-server —port 7777 ./redis-server —port 7777 —slaveof 127.0.0

  • 自我介绍 你用过那些Linux指令?Top指令中的load average字段的含义?进程队列? cpu负载是什么?cpu负载计算的是进程状态中的哪几种状态? 进程的状态有几种?用户态到内核态是怎么进行切换的? 进程和线程的区别? 为什么需要三次握手、四次挥手? TCP和UDP的区别? 实习经历、开发语言为什么从c++转到go、讲了在实习过程中负责的功能模块 你是怎么理解运维工程师的?为什么要考虑