一,期中架构考核概述

1.1 架构图

1.2 架构图公司背景概述

  • 公司是一个新兴的人脸识别高新创业公司,公司名称xxxx
  • 老总是博士生导师,还有一个副总是研究生导师
  • 副总同时是研发总监,负责所有的研发人员管理
  • 产品研发一共有4个小组,总共27人左右,每个小组有一个产品研发经理(在读博士生),成员绝大多数都是在读硕士生,偶尔也会外聘有经验的研发人员。
  • 运维这里本来只有我和一个网管两个人,但最近随着业务需要,又刚刚新招了一个负责线上展示环境的大数据运维(主要是hadoop,zookeeper等)。我则主要负责公司产品线的生产环境运维。
  • 在这个架构图中,我负责所有的搭建、维护、监控、备份、脚本编写还有权限管理。数据库我只负责部署和备份,其他方面由开发总监负责。
  • 公司一共有四条产品线,三个PHP的一个JAVA的。在权限管理上,我是通过sudo来管理权限的,在我的规划中,不论运维还是开发,都不会给root权限;只有产品经理或者研发总监我才有可能给相应服务器级别的权限;针对运维总监(也就是我们的副总)才会给root权限。
  • 我们的普通用户是根据项目来的,我们公司有四条产品线,我为每一个项目建立一个普通用户,因此不论nginx还是tomcat都是跑在普通用户下的。
  • 就算日后要扩充一些公共服务,我也可以让它跑在普通用户下。总的来说是这样的,我对运维的理解是,运维做运维的事情,开发做开发的事情。运维负责网络系统,只要系统没有故障,只要网络没有故障,只要系统资源还够用,那么我们运维的职责就到位了。
  • 我的运维理念是项目负责制,也就是说每个项目的责任人是开发,我们运维大概占30%-40%的责任。我们的开发占60%的责任。当进程上线的时候,这个服务是由普通用户跑的。它的每个站点目录都是普通用户的权限,也就是700的权限普通用户,这个是最安全的。无论是项目的启动,停止,以及代码上线,日志收集,日志分析都是通过我们进程跑的普通用户实现的。我们在管理这个项目的时候,我们可以把开发的用户加到这个项目组里面,这样负责相应项目的开发人员就有对应项目的所有权限。

1.3 项目经验相关简述参考

(1)实现nginx反向代理分业务

  • 公司的4个业务以前在云上,我来之后,公司希望将业务迁回本地。但只申请了一个域名,因此需要将公司的多个业务合并到一个域名下。

(2)实现LNMP的分离式部署及调优
(3)利用rsync+inotify实现NFS的读写分离
(4)实现MySQL数据库主从复制多实例
(5)利用rsync实现全网备份(NFS时时同步备份+全网备份+数据库全备)
(6)部署jumpserver跳板机及Linux服务器安全加固
(7)Zabbix实现全网服务器监控(SNMP,IPMI,JMX,agent主被动,Web监测)
(8)利用keepalived实现nginx反向代理高可用和NFS存储高可用
(9)为防止root权限泛滥,利用sudo管理普通用户(nginx+tomcat利用普通用户启动)

1.4 考核范围及要求

所有没到24岁(不包含24)的学生必须参加,24-27岁的学生建议参加,28岁及以上学生直接参加期末架构的考核。
同学们利用本架构作为参考,筹备撰写个人简历。项目经验不能少于5个。
在进行期中架构的找工作试炼当中,没有特殊情况,不能耽误上课。
期中架构考核以offer达8000者作为合格标准。24岁以下同学达8K可自行选择是否直接入职(建议直接入职),后续授课内容,可发视频。24岁到27岁的同学offer达10K者可自行选择是否直接入职。

1.5 服务器硬件规划

  • 可参考IDC机房解密章节进行硬件规划,服务器可用戴尔R730等型号,服务器内部组成,比如双CPU,24个内存插槽,8个3.5寸热插拔硬盘槽等,需要提前准备清晰。
  • 各个服务的raid规划,也要提前做参考。

Linux运维就业技术指导(八):期中架构考核的更多相关文章

  1. Linux运维就业技术指导(九)期末架构考核

    一,毕业架构设计考核筹备 1.1,架构图模板示例 1.1.1 架构图(一)概述 本架构是4层lvs负载均衡给后方7层nginx反向代理: 业务进行了动静分离: 数据库前端有memcached缓存组,降 ...

  2. [ Linux运维学习 ] 路径及实战项目合集

    我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构.提升部署效率.优化资源利用率,确保服务可以7*24H不间断地为用户提供服务. ...

  3. Linux运维基础命令笔试题--看看你会多少?

    老男孩教育linux运维就业班第一周课后学习效果能力上机大考察 (每题10分共130分,过100即可,请给出详细步骤) 1.创建目录/data/oldboy ,并且在该目录下创建文件oldboy.tx ...

  4. 亲爱的,我是一条Linux运维技术学习路径呀。

    根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是 ...

  5. Linux运维工程师入门须掌握的10个技术点

    本人是linux运维工程师,对这方面有点心得,现在我说说要掌握哪方面的工具吧 说到工具,在行外可以说是技能,在行内我们一般称为工具,就是运维必须要掌握的工具. 我就大概列出这几方面,这样入门就基本没问 ...

  6. Linux运维入门到高级全套常用要点

    Linux运维入门到高级全套常用要点 目 录 1. Linux 入门篇................................................................. ...

  7. Linux运维之道(大量经典案例、问题分析,运维案头书,红帽推荐)

    Linux运维之道(大量经典案例.问题分析,运维案头书,红帽推荐) 丁明一 编   ISBN 978-7-121-21877-4 2014年1月出版 定价:69.00元 448页 16开 编辑推荐 1 ...

  8. 转:linux运维工程师

    运维中关键技术点解剖:1 大量高并发网站的设计方案:2 高可靠.高可伸缩性网络架构设计:3 网站安全问题,如何避免被黑?4 南北互联问题,动态CDN解决方案:5 海量数据存储架构 一.什么是大型网站运 ...

  9. 面试 Linux 运维工作至少需要知道哪些知识?

    前言 我们已经发过不少 Linux 面试题,但是单独的面试题总感觉会过于零碎,没有体系化内容给人的帮助大. 知乎上有这样一个问题:一个新手面试 Linux 运维工作至少需要知道哪些知识?其中有一个答案 ...

随机推荐

  1. php 目录操作

    1.打开文件: opendir("文件名称"); 2.读取文件:readdir("文件名称"); <?php $dirname="phpMyAd ...

  2. AIX6.1用g++安装Poco-1.6.1-all

    项目终于到了把程序往小型机上部署的阶段了.不得不说AIX真是让人恶心,一个Poco编译弄了我1周时间.网上根本没有相关的资料. 1. AIX下安装gcc/g++:在ftp://ftp.software ...

  3. AngularJS---核心特性

    步入正题.学习Angular,首先得了解.熟知.掌握它的四大核心特性. 一.MVC模式 Model(模型):是应用程序中用于处理应用程序数据逻辑的部分,通常模型对象负责在数据库中存取数据. View( ...

  4. 手动安装Android Support Library(23.0.1)

    在搭建React-Native开发环境的时候,使用Android Sdk Manager无法找到Android Support Library这一项. 所以google了一下,找到了解决办法. 访问A ...

  5. Guid 几种格式化

    //32 位数字:00000000000000000000000000000000 Console.WriteLine(Guid.NewGuid().ToString("N")); ...

  6. bzoj2565 最长双回文子串

    Description 顺序和逆序读起来完全一样的串叫做回文串.比如acbca是回文串,而abc不是(abc的顺序为“abc”,逆序为“cba”,不相同).输入长度为n的串S,求S的最长双回文子串T, ...

  7. java web 程序---javabean代码,出现错误。奇怪,无法解释的运行问题

    深夜吧.这个点11点半了 写了一个简单的javabean实例,发现没有任何代码书写的错误,但是问题就是程序运行会有问题,然后换一个包,重写一个,问题没了? 请问问题出现在哪里了?巧合?还是操作有误?这 ...

  8. MyEclipse中复制web项目,部署之后访问报错

  9. Air test ios类使用

    1.iOS手机的滑动 相关代码 #python class IOS(Device): ... @property #获取屏幕的尺寸 def display_info(self): if not sel ...

  10. js 下关于json的销毁和添加

    var json={a:1,b:2} 现在给json添加个c,可以这样写 json.c=3或json["c"]=3 我删除一个属性 delete json.a alert(json ...