【运维知识进阶篇】集群架构体系及虚拟机准备工作

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【运维知识进阶篇】集群架构体系及虚拟机准备工作

写在开头

       我计划发表四个篇章的博文,难度由浅入深,分别是基础篇的Linux系统,进阶篇的web架构,高级篇的shell编程、代码上线,大神篇的数据库、Docker、k8s。思考许久,还是决定直接开始进阶篇的博文,离开了近两周很是抱歉,因为现实需要处理一些事情,这次回归,干脆就开启新的篇章,先前介绍的运维知识基础篇的内容,好像就差一个网络了,等有空的时候再做补充,我们直接开始集群架构的学习。

转变思维      

  进阶篇的学习不同于基础篇,先前的学习,知识点比较零散,我们只有反复练习,才能把它弄熟练。但是今后我们要学的东西,是一个框架,需要先学框架体系,再学习里面的内容。另外进阶篇的知识理解要大于操作,如果你跳槽,框架体系都是一样的,个别业务不一样,简单业务熟悉了也能上手。

架构体系

在服务器上部署网站服务,需要有数据库,NFS存储,运维人员。

公司一开始部署时,不知道流量大小,先部署一台,这样优势是成本低,劣势是用户多,服务器抗压能力弱,如果一台服务器出现某些问题导致无法访问,我们就称它是单点故障。

一台服务器的硬件会受到限制,cpu,内存,磁盘,数量不会太多,所以我们就需要用多台服务器去装业务。比如传统行业的官网、访问量少的网站,不是特别重要的网站,一台服务器就OK,挂了我们再恢复,顶多是一段时间无法访问。

像一些存在交易性质的网站,无时无刻不再交易,所以不能挂掉。需要用多台服务器去抗流量,抗并发。

LNMP框架:Linux操作系统,Nginx,MySQL数据库,PHP代码

也可以是:Linux,Nginx,MySQL,Python

LNMP框架:Linux,Nginx,MySQL,Tomcat(java)

LAMP框架:Linux,Apache,MySQL,PHP,Python

用户访问流程:

1.用户通过网络访问到达防火墙,这里centos6是Iptable,centos7是Firewalld,也有WAF防火墙,用于阻挡web层面的攻击。

2.再通过负载均衡,把流量分布到服务器中,这里的软件有Nginx,Haproxy,LVS,硬件有F5。

3.服务器中服务有Nginx、Tomcat、Apache、PHP(web服务器用于连接数据库的服务)

4.此时看请求是什么,请求热点的数据用Redis缓存服务器,如果是请求动态数据,就去找数据库,如果是请求静态数据,就找文件存储服务器(NFS、NAS、OSS),文件储存服务器也有缓存,叫CDN,不在自己的web服务器上去拿数据。

5.这些运行过程都可以通过ELK服务(日志展示平台)展示出来。还会用到zabbix监控,出现问题及时发现。可以用Ansible批量化管理。这些服务可能会部署到以下地方。

1、Vmware虚拟机(教学使用)

2、公有云(阿里云、腾讯云、亚马逊云平台)

3、私有云平台,自己公司购买服务器组成虚拟化平台Openstack

4、硬件/托管到idc机房,基于硬件的Docker Kubeneters

代码上线相关,开发写完代码扔到代码管理平台gitlab或者github,再用Jenkins进行拉取代码质量检测,检测有没有bug或漏洞,检测完之后通知相关人员,没有问题后,运维再用Jenkins先部署到一台服务器测试(人工、工具检测,指标反馈)

虚拟机准备

我们先创建一个模板机,正常创建虚拟机即可,不会创建看下面文章。

如何在VMware上创建Linux系统(CentOS7.9)

创建好后我们连接Xshell进行虚拟机优化,不会连接看下面文章。

如何用Xshell连接VMware虚拟机及排查问题

优化linux系统流程

1、修改默认YUM仓库和扩展epel仓库

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

添加扩展仓库:

yum -y install wget

wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo

2、安装常用命令

yum -y install net-tools lrzsz wget tree vim unzip bash-completion bash-completion-extra ntpdate

3、增加一块内网网卡,并将网卡命名为eth1

 

vim /etc/sysconfig/network-scripts/ifcfg-eth0,优化网卡文件,删除多余部分

详细可见此文章:优化网卡配置文件

cp ifcfg-eth0 ifcfg-eth1 #复制成eth1网卡文件

vim ifcfg-eth1 #修改成如下状态

4、优化服务器

systemctl disable firewalld

systemctl stop firewalld

5、关闭selinux

6、调整进程最大打开文件数量

echo '* - nofile 65535' >> /etc/security/limits.conf

7、reboot重启虚拟机

优化过后我们可以通过检查防火墙状态或者查看命令是否可以用等方式测试下是否优化好。

没有问题后,我们关机,做个快照,进行克隆。

克隆虚拟机流程

以准备Rsync备份服务器为例:

我们使用链接克隆,要保证模板机一直可以用,否则克隆机也用不了了。

克隆好后,我们把克隆机打开,修改IP地址、修改主机名称、重启、创建新的xshell会话、做快照(可以开着做,不用挂起)

1. [root@formwork ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
2. TYPE=Ethernet
3. BOOTPROTO=none
4. NAME=eth0
5. DEVICE=eth0
6.   BOOT=yes
7. IPADDR=10.0.0.41
8. PREFIX=24
9. GATEWAY=10.0.0.2
10. DNS1=223.5.5.5
11. ~                                                   
12. ~                                                   
13. ~                                                   
14. ~                                                   
15. ~                                                   
16. ~                                                   
17. <pts/ifcfg-eth0" 9L, 121C written 
18. [root@formwork ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
19. TYPE=Ethernet
20. BOOTPROTO=none
21. NAME=eth0
22. DEVICE=eth0
23. ONBOOT=yes
24. IPADDR=172.16.1.41
25. PREFIX=24
26. ~                                                   
27. ~                                                   
28. ~                                                   
29. ~                                                   
30. ~                                                   
31. ~                                                   
32. ~                                                   
33. ~                                                   
34. <ipts/ifcfg-eth1" 7L, 91C written 
35. [root@formwork ~]#

hostnamectl set-hostname backup


我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

目录
相关文章
|
11天前
|
人工智能 云计算 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日~10日在江苏张家港召开的CCF ChinaNet(即中国网络大会)上,众多院士、教授和业界技术领袖齐聚一堂,畅谈网络未来的发展方向,聚焦智算集群网络的创新变革。
阿里云引领智算集群网络架构的新一轮变革
|
12天前
|
负载均衡 Dubbo 算法
集群容错架构设计
集群容错架构设计
23 1
集群容错架构设计
|
10天前
|
人工智能 运维 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日至10日,CCF ChinaNet(中国网络大会)在江苏张家港召开,众多院士、教授和技术领袖共聚一堂,探讨网络未来发展方向。阿里云研发副总裁蔡德忠发表主题演讲,展望智算技术发展趋势,提出智算网络架构变革的新思路,发布高通量以太网协议和ENode+超节点系统规划,引起广泛关注。阿里云HPN7.0引领智算以太网生态蓬勃发展,成为业界标杆。未来,X10规模的智算集群将面临新的挑战,Ethernet将成为主流方案,推动Scale up与Scale out的融合架构,提升整体系统性能。
|
8天前
|
存储 缓存 NoSQL
【赵渝强老师】Memcached集群的架构
Memcached 是一个高性能的分布式内存对象缓存系统,通过在内存中维护一个巨大的 Hash 表来存储各种格式的数据,如图像、视频、文件及数据库检索结果等。它主要用于减轻数据库压力,提高网站系统的性能。Memcached 不支持数据持久化,因此仅作为缓存技术使用。其数据分布式存储由客户端应用程序实现,而非服务端。
【赵渝强老师】Memcached集群的架构
|
16天前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
51 1
|
1月前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
57 3
|
8天前
|
调度 Docker 容器
【赵渝强老师】Docker Swarm集群的体系架构
Docker Swarm自1.12.0版本起集成至Docker引擎,无需单独安装。它内置服务发现功能,支持跨多服务器或宿主机创建容器,形成集群提供服务。相比之下,Docker Compose仅限于单个宿主机。Docker Swarm采用主从架构,Swarm Manager负责管理和调度集群中的容器资源,用户通过其接口发送指令,Swarm Node根据指令创建容器运行应用。
|
9天前
|
机器学习/深度学习 运维 监控
智能运维在现代IT架构中的转型之路####
【10月更文挑战第29天】 本文旨在探讨智能运维(AIOps)如何成为现代IT架构不可或缺的一部分,通过分析其核心价值、关键技术及实践案例,揭示AIOps在提升系统稳定性、优化资源配置及加速故障响应中的关键作用。不同于传统运维模式的被动响应,智能运维强调预测性维护与自动化处理,为企业数字化转型提供强有力的技术支撑。 ####
36 0
|
1月前
|
负载均衡 安全 调度
Docker Swarm集群架构
【10月更文挑战第8天】
57 1
|
1月前
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
52 4