@[TOC](SRE笔记 2022.8.12
磁盘知识补充
尺寸
- 2.5寸 ,3.5寸
物理结构
- 机械硬盘:马达,磁头,盘片。
- 固态硬盘:主板芯片、缓存芯片、闪存芯片。
接口类型
SATA:家用机械盘。
SAS:服务器专用接口,1.5W转速度比SATA更快,价格更高。
m.2:速度快,达到G/s
PCI-E:速度极快的硬盘,高端服务器或玩家的配备。
速度性能
- PCI-E:1GB/s~3GB/s,最高32Gbps
- m.2:1GB/s~3GB/s,最高6-32Gbps
- SSD: 300M/s~600M/s(据我所知三星最快,速度远超于此)
- SAS接口(Serial Attached SCSI,串行连接SCSI):300M/s~300M/s,最高6Gbps
- SATA接口(Serial AT Attachment即串行ATA接口):90MB/s~200MB/s
硬盘协议
企业案例-提升用户体验网站解决方案
- 遇到高并发,大数据量写数据的极端情况时(如抢红包,秒杀),需把数据先写到内存中,积累一定量后,再定时或者定量的写入硬盘,减轻硬盘压力和I/O,最终还是会把数据加载到内存中再对外提供访问,
优劣性
- 优点:写数据到内存时,性能高,速度快。
- 缺点: 可能会丢失一部分在内存中还没来得及写入磁盘的数据
解决数据丢失的方法
- 在服务器主板上安装蓄电池,在断电后宕机前瞬间把内存数据回写到磁盘。
- 使用UPS。
- 选双路电机房,使用双电源,分别接不通路的电,以及服务器放到不通的机柜,不通的地区。
中小企业案例
- 对于并发访问不多,数据量也不大的网站,若是读多写少的业务,会把数据先写入到磁盘,然后通过程序把写到磁盘的数据读入内存,再对外通过读内存提供访问服务,绝大多数的企业业务逻辑中读请求多余写请求。
IDC机房
- 为企业提供存放服务器的空间和提供大量带宽,带宽分为单线带宽和多线(BGP)带宽。
- 运营商 教育 铁通 广电 联通 电信 移动
- 单线与多线的区别即多运营商和单运营商的问题,不通线路之间通信很慢。
- 企业多数都会买BGP机房。
- 做CDN服务的企业或CDN服务器常用单线机房。
IDC服务器上架流程
- 购买服务器
- 上架服务器
1 服务器送至托管的IDC机房,有专人负责,只需远程连接
2 本地安装,做好Raid,做好系统,上架,初始化,测试,配置服务,压力测试。 - 和IDC约定上架日期
工具准备
- 光盘、U盘、移动光驱等。
- 无人值守安装服务
配置服务器细节
做Raid,装系统,配网络、配置防火墙
初始化、测试SSH连接,确保透过跳板机能正常连接。
windows vs linux
Linux
windows
区别
- Linux通常在企业后端服务器环境中使用
- windows生态完善,Linux个人版生态不完善
- 未来至少 10年,Linux将是服务端最火、应用最广的操作系统。
- 是开源的系统软件,自有修改,传播
- Unix系统兼容 安全稳定,功能强大,可扩展性强
- 无商业化制约
- 适合Intel等X86 cpu系列架构
- 社区开发和使用者活跃
学习环境推荐软件
- 常用的虚拟机软件及建议
Linux运维
- 维护Linux系统以及系统之上的相关软件服务器、程序代码(Java、Php、Python)和企业核心数据正常运行,使得企业能够优质、高效、快速的为企业客户提供服务,在这个运转过程中,涉及到系统、网络、数据量、存储、开发、安全、监控、架构等综合的技术于一身。
互联网IT技术行业各岗位分层
- 硬件运维:硬件维护,如服务器、交换机、路由器、存储、负载均衡等设备。
- 网络运维: 网络设备维护:交换机、路由器以及办公局域网。
- 系统运维:基础设施的维护,侧重于系统和应用服务,也会涉及硬件网络。
- 应用运维(SRE,DEVOPS): 企业业务研发,测试环境,线上环境等的维护和故障处理。
- 监控运维:整个业务系统所有服务器集群的业务的监控和报警
- 数据库运维:负责数据存储方案设计、 数据库表设计、索引设计和SQL优化
- 安全运维:安全扫描,渗透测试,安全工具,安全事件应急处理等
- 运维开发:开发运维工具和平台,以及自动化、平台化、智能化运维。
岗位职责
- 挑选IDC机房及带宽、购买物理服务器。
- 购买云主机服务及 CDN 服务相关。
- 搭建部署压力测试和正式的业务系统运行环境(例如:网站运行环境)。
- 负责日常项目或业务代码上线、故障排除、代码回滚等。
- 对企业数据进行备份及故障恢复、处理网站运行中的各种故障(例如:硬件故障、软
件故障、服务故障、数据损坏及丢失等)。 I - 对网站的运行状态及故障进行监控、提前解决网站运行的潜在安全问题。
- 开发自动化程序或运维平台,自动化、高效运维。
- 根据访问量增加,提前规划和升级网站集群架构,根据公司需求增加业务应用。
- 程序发布流程和规范,制定运维工作制度和规范。
- 配合开发人员部署及调试产品研发需要的测试环境、代码发布等工作需求。
- 公司如果较小还会兼职网管、技术支持等职责。
发展路线(5年内)
- k8s与微服务
- DBA
- 网络安全
- Python自动化(Devops工程师)
- 系统架构师
- 未来的运维是全栈运维,SRE工程师,Devops工程师。
Linux起源
Unix
- 1969年在AT&T的贝尔实验室诞生 ,20世纪70年代逐步盛行,期间产生重要分支,1977年诞生BSD(Berkeley Software Distribution)系统,从BSD系统开始各大厂商根据自身公司的硬件结构,并以BSD系统为基础进行Unix系统的研发。从而产生很多版本。如SUN公司的Solaris,IBM公司的AIX,HP公司的HP UNIX等,图示如下。
Unix优点
- 技术成熟可靠性高
只要硬件不会,Unix很难会出问题,(最长的11年没有重启) - 极强的可伸缩性
Uinix支持的CPU处理器体系架构非常多,mac os基于Unix开发。包括Intel/AMD及HP-PA,MIPSM,POWERPC,uLTRASparc,Alpha等Risc芯片,已经SMP,MPP等技术。
(原因在于早期各大厂商都基于Unix=进行适合自己的硬件开发,支持的CPU架构多) - 强大的网络功能
internet互联最重要的协议TCP/IP就是在Unix上开发和发展来的,还支持NFS,DCE,IPX/SPX,SLIP,PPP等 - 强大的数据库支持能力
Oracle、DB2、Sybase、Informix等大型数据库,小型数据库也支持。 - 强大的开发功能
正是Unix促使了C语言的诞生,并相互促进发展,互联网早起的重大意义软件或技术都出现在Unix上,TCP/IP,www,Java,XML等
(Python火是因为开发出了openstack) - 上述五大有点Linux都具备
UNIX操作系统革命
- 70年代末,当时无人对x86架构CPU感兴趣,UNIX又面临被AT&T回收版权的重大问题,要求禁止对学生群体提供Unix系统源代码,因为产生了业界恐慌和商业纠纷。这就直接或间接的导致了新的类Unix系统的诞生以及自有软件运动的建立和发展。
- 1984年Richard Stallman发起开发自由软件运动,并成立自由软件基金会(free software foundation,FSF )和GNU(GNU IS NOT UNIX)项目。(该项目未成功)
- 80年代初期,同样是Unix系统版权和源代码限制问题,大学教授Andrew Tanenbaum(谭邦宁),开始着手编写用于教学的Unix系统,尽可能的与原有的Unix系统兼容,并且可运行于x86平台,这个系统较Minix,并不能满足商业需求。
Linux诞生
- 芬兰和赫尔辛基大学 Linus Torvalds,他找到了谭邦宁教授,陆续阅读了Minix的源代码,从此逐步开始- - Linux雏形的设计和研发。
- Linux内核:www.kernel.org
- 1999年Linux简体中文版发型,很烂,几乎不用。
- https://centos.org
- centos7是主流,4年支持;centos8不确定性,替换Centos的如Ubuntu。
Linux关键人物
- Richard Stallman
- 谭邦宁
- linus
自由软件基金会FSF
- GNU项目产生的主要软件包括:Emacs编辑软件,gcc编译器,bash命令解释程序和编程语言。
GPL(General Public License)
- 著名的开源允许协议
- 核心:保证任何人有共享和修改自由软件的自由,任何人有权取得、修改和重新发布自由软件的源代码 权利,但都必须同时给出具体更改的源代码。
Linux系统组成
Linux的应用领域
服务器领域
- 主要是服务器领域
嵌入式Linux
- 比较难,发展途径少
个人桌面
- 个人办公的Linux即Ubantu
Linux发行版
- Linux 发行商包括 Slackware、RedhatDebian、Fedora、SUSE、CentOS、Ubuntu、红旗、麒麟(国家推行)等。
- Red Hat:Red Hat Linux9.0 的内核为24.20。在版本 9.0后,Red Hat 不冉遵循 GPL协议,成为收费产品(但仍开源),发展的新版不依次为Red Hat 3x、Red Hat 4.xRed Hat5.x、Red Hat 6.x、Red Hat 7x、Red Hat 8.x。
- Fedora:为Red Hat的一个分支,仍遵循 GPL 协议,可以认为是Red Hat 预发布版(体验版)。
- CentOS(Community Enterprise Operating System):RedHat的另一个重要分支,以RedHat所发布的源代码重建符合GPL 许可协议的Linux系统,即将Red HatLinux源代码的商标LOGO 以及非自由软件部分去除后再编译而成的版本,目前 CentOS 已被 Red Hat 公司收购,但仍开源免费。
Linux介绍及学习环境搭建
什么是操作系统
- 最核心的基础系统软件
- 管理和控制计算机或服务器的硬件和软件资源
- 常见的操作系统有 windows linux(安卓、移动加服务器) DOS unix(IOS)。
操作系统图解 (三维度)
- 系统调用:各类接口
- 理解原理,可以通过图解加深快速理解。