标准化运维

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介:

一、服务器安装标准(基于VM-EXSI进行服务器资源管理):

1、web服务器:

        安装标准: 系统:centos6.6,为了环境纯净必须选择 basic server 安装

        分区:/boot-200M、swap-6G、其余均给 / 目录

        文件系统:ext4

2、DB、cache服务器(mysql):

        安装标准: 系统:centos6.6,为了环境纯净必须选择 basic server 安装

        分区:/boot-200M、swap-6G、其余均给 / 目录

        文件系统:XFS

       (内网测试环境基于exsi虚拟机,做好快照,且不考虑raid)

 

二、服务器具体部署流程:

1、建立服务器帐号,避免直接使用root权限。

        研发帐号:

        统一增加研发应用帐号linux用户 appuser:appuser 主目录在/home/appuser

        sudo su - ; su - appuser 切换到appuser用户,修改crontab(crontab -e)

        数据库帐号:

        增加数据库帐号linux用户 mysql:mysql 主目录 /home/mysql

        允许:sudo su -切换到root权限,启动mysql权限(cp xxx /etc/init.d/mysqld; chmod -R 700 /etc/init.d/mysqld; chkconfig --add mysqld;

        chkconfig mysqld on; service mysqld start)

        sudo su - ; su - mysql 切换到mysql用户,修改crontab(crontab -e)

        (内网可以允许不禁用直接登录root,但是相关进程不能用root启动,避免之后标准化部署脚本从内网到外面产生权限问题

            所有web项目都以appuser启动,db用mysql账户启动)

2、关闭selinux、关闭iptables

        > /etc/sysconfig/selinux

        setenforce 0

        echo 'SELINUX=disabled' >> /etc/sysconfig/selinux

        echo 'SELINUXTYPE=targeted' >> /etc/sysconfig/selinux

3、统一创建计划任务目录、包放置目录。

        mkdir -p /data/cron (统一计划任务放置点)
        mkdir -p /data/source (统一文件包放置点)

4、统一yum扩展源地址包,初始化部署服务器时先全部update

        yum -y install wget

        wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

        rpm -ivh epel-release-6-8.noarch.rpm

        rm -rf epel-release-6-8.noarch.rpm

        yum -y update

5、服务器时间同步

        CTfile=/tmp/crontab.${USER}

        CTstr="*/30 * * * * /usr/sbin/ntpdate cn.pool.ntp.org > /dev/null 2>&1"

        /usr/bin/crontab -l > ${CTfile}

        echo "" >> ${CTfile}

        echo "${CTstr}" >> ${CTfile}

        /usr/bin/crontab ${CTfile}

        rm -rf ${CTfile}

6、优化IO调试器
        for sd in `cd /dev/ && ls sd?`

        do

        echo "" >> /etc/rc.local

        echo "echo \"deadline\" > /sys/block/${sd}/queue/scheduler" >> /etc/rc.local

        done

7、为历史命令加上时间

        sed -i '/HISTTIMEFORMAT/d' /etc/profile

        echo 'HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "' >> /etc/profile

 

 三、服务器统一路径管理

        DB数据库服务器(如DB):

        /data/3306下目录所有者mysql:mysql(如果多实例,目录按端口创建,/data/{port},如/data/3307, /data/3308)

        /etc/my.cnf 文件所有者mysql:mysql

        web容器服务器(如tomcat):

        启动关闭脚本:/data/deploy-script下目录所有者appuser:appuser

       日志路径: /data/httplogs下目录所有者appuser:appuser

        所有相关资源:/data/tomcat下目录所有者appuser:appuser

        tomcat-pid:/data/ tomcat-run-pid下目录所有者appuser:appuser

        tomcat启动关闭主目录:/data/ webapps下目录所有者appuser:appuser

        cache服务器(如redis):

        /data/redis/下目录所有者appuser:appuser

       (注:所有运维批量化部署脚本届时都有我整理后提供,结合以上路径形成统一标准,结合自动化部署提高效率,减少人为操作失误。)

 

四、内网、测试环境项目持续集成与发布流程

        变更管理:利用svn+jenkins+shell的方式进行项目管理控制,与运维一键发布。

        变更流程:开发环境-qa环境-预发布环境-线上生产环境

        所有过程由SVN实行版本控制,统一代码管理,做到多版本分支及合并,并实时备份,准备回滚。

        利用jenkins结合svn对各个环境自动高效准确持续的软件版本发布/测试项目

        监控外部调用执行的工作,准确定位构建中的错误信息,快速准确变更部署

        大致发布流程:

  •         开发环境发布 - 研发介入

  •         Qa环境发布 - 研发、测试组介入

  •         预发布环境 - 运维进行发布后测试组回归测试

  •         正式环境 - 运维进行发布


参考博文:http://www.cnblogs.com/Javame/p/6018312.html





     本文转自1321385590 51CTO博客,原文链接:http://blog.51cto.com/linux10000/1914213,如需转载请自行联系原作者



相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
运维 监控 安全
构建高效运维体系:从监控到自动化的全方位实践
本文深入探讨了构建高效运维体系的关键要素,从监控、日志管理、自动化工具、容器化与微服务架构、持续集成与持续部署(CI/CD)、虚拟化与云计算以及安全与合规等方面进行了全面阐述。通过引入先进的技术和方法,结合实际案例和项目经验,为读者提供了一套完整的运维解决方案,旨在帮助企业提升运维效率,降低运营成本,确保业务稳定运行。
|
3月前
|
机器学习/深度学习 敏捷开发 运维
构建高效运维体系
本文旨在探讨如何通过技术创新和管理优化,构建一个高效、稳定且可持续发展的运维体系。我们将从自动化工具的应用、监控告警机制的完善、持续集成与持续部署(CI/CD)的实践、以及团队协作与沟通的强化等多个维度,深入剖析运维体系的构建过程。同时,文章将结合实际案例,分析运维过程中可能遇到的挑战及应对策略,为运维人员提供实用的指导和建议。
|
3月前
|
运维 监控 测试技术
构建高效运维体系:从监控到自动化的实践之路
【10月更文挑战第9天】 在当今信息技术飞速发展的时代,运维作为保障系统稳定性与效率的关键角色,正面临前所未有的挑战。本文将探讨如何通过构建一个高效的运维体系来应对这些挑战,包括监控系统的搭建、自动化工具的应用以及故障应急处理机制的制定。我们将结合具体案例,分析这些措施如何帮助提升系统的可靠性和运维团队的工作效率。
73 1
|
4月前
|
敏捷开发 运维 Prometheus
构建高效运维体系:从基础架构到自动化管理
本文探讨了如何通过优化基础架构、引入自动化工具和流程,以及加强团队协作,构建高效的运维体系。通过案例分析和实践建议,帮助运维人员实现系统的稳定性、可靠性和可维护性。
124 21
|
2月前
|
存储 运维 监控
运维技术深度解析:构建高效、稳定的运维体系
【10月更文挑战第22天】运维技术深度解析:构建高效、稳定的运维体系
430 0
|
4月前
|
机器学习/深度学习 运维 监控
构建高效运维体系##
运维是信息技术领域中至关重要的一环,它不仅保障了系统的稳定运行,更为业务的持续发展提供了坚实的基础。本文将探讨如何通过科学的方法和先进的技术,构建一个高效的运维体系。我们将从运维的基本概念入手,逐步深入到实践中的具体操作,并提出一些创新性的思路,以期为读者提供有益的参考和启示。希望通过这篇文章,能够引发大家对运维工作更深层次的思考,并在实践中不断探索和优化,最终实现运维工作的高效、智能化和自动化。 ##
64 0
|
7月前
|
机器学习/深度学习 存储 人工智能
智能化运维:未来的IT服务管理
【6月更文挑战第14天】本文将探讨智能化运维的概念、优势以及在IT服务管理中的应用。随着人工智能和机器学习技术的发展,智能化运维已经成为了IT服务管理的新趋势。通过引入智能化运维,企业可以提高效率、降低成本并提升服务质量。
|
7月前
|
人工智能 运维 监控
智能化运维:未来的IT管理之路
【6月更文挑战第3天】在信息技术飞速发展的今天,传统的运维方式已经无法满足企业对于效率和稳定性的需求。本文将探讨智能化运维的概念、优势以及实施智能化运维的策略,旨在为读者提供一个关于未来IT管理的全新视角。
96 3
|
7月前
|
运维 Prometheus 监控
现代IT运维的自动化趋势与实践
在当今数字化转型的浪潮中,IT运维正经历着一场深刻的变革。本文探讨了现代IT运维中的自动化趋势,详细阐述了自动化技术在运维中的应用,通过具体案例展示了自动化工具如何提高效率、降低成本,并确保系统的稳定性和安全性。
|
运维 Linux 网络安全
【运维知识基础篇】Linux用户管理
【运维知识基础篇】Linux用户管理
222 0