运维相关知识

nginx
1.IP实现灰度发布
2.黑名单
3.限流配置;1白名单不限留;2.配置每秒访问次数;
4.relaod,restart

nginx reload的原理:
1.nginx启动时一般会启动1个或者多个进程,master管理进程,worker工作进程,当请求资源是选择一个空闲的worker更新,然后等到其他的worker用户访问停止了再更新,类推
2.nginx采用的多进程(单线程)和多路IO复用模型,worker进程数设置为CPU的个数

nginx分布式集群方式:
1.一公网nginx通过upstream功能,轮询/ip/url多方式分发到内网多台nginx,但公网nginx宕机,内网全部不能访问
2.nginx实现主从备份方案:keepalived+nginx实现双机热备
1-准备两台nginx服务器,同时每台机器安装keepalived,对外暴露虚拟IP(实际不存在,要与实际机器的IP段一样,可以多加几个虚拟IP)
2-通过keepalived实现高可用,两台nginx,一台master,一台backup,master宕机,自动切换到backup
3-再upstream到内网多台服务器

1.prometheus+grafana监控docker和k8s
2.kibana ELK日志监控
3.jenkins持续集成工具

zipkin+elk做链路跟踪和日志系统
1.zipkin是需要客户端和服务端启动
2.springboot增加各中间件的引入
3.在zikpin的服务端配置ELK的服务
4.链路跟踪CAT、Zipkin和SkyWalking的优缺点:
https://www.jianshu.com/p/9bb660190884?ivk_sa=1024320u

Jmeter压力测试:
TPS:每秒的事务处理数,用在系统测试上
QPS:每秒处理的请求数,用在接口测试
RT: 处理一次请求需要的平均响应时间
并发量:QPS*RT
假设服务并发度为1500,RT为150ms,那么该服务的QPS 为10000 = 1500(并发数) / 0.15 (RT) ,假如通过压测一台机器的QPS为500,那么该服务需要20台这样的机器。

k8s原理:
https://blog.youkuaiyun.com/qq_40378034/article/details/104884825
1.1个master-node节点和多个node节点(工作节点);每个node节点有多个pod;每个pod都有个根容器pause,还包含1个或者多个紧密相关的用户业务容器,每个业务容器共享pause的ip
每个节点都包含一个核心组件(kubelet和kube-proxy)
2.master-node节点组件:
apiserver:提供http rest接口服务进程,也是集群的入口
manager:所有资源对象的自动化控制中心
scheduler:复制调度pod,通过watch接口监听新建pod副本信息
etcd:资源对象以及状态和数据存在这里
3.node节点组件:
kubelet负责pod对应的容器创建启动,与master密切协作;
proxy实现服务通信与负载均衡 ;
docker引擎负责docker容器的管理
4.pod:多个dockers容器部署多个业务,且业务相关
两种类型:普通pod和静态pod
静态pod没有存在master-node的etcd中,而是存在pod对应的node下,并且只能在此node上启动运行
普通pod一旦被创建,将交给master存入etcd,并调度到具体的node上绑定,随后由对应的node进行实例化成一组相关的docker容器并启动
若某个pod里的某个容器停止,K8s会自动检测问题并重启pod(重启pod下的所有业务容器)
若pod所在的node节点宕机,就会将这个node上的所有pod重新调度到其他的node节点上
5.k8s扩缩容:手动和自动
1-手动:通过kubectl scale命令进行Pod副本数量的设置
2-自动:根据某个性能指标或者自定义业务指标,并指定pod副本数量范围,系统自动在这个范围内根据指标进行变化调整
HPA控制器:根据pod的CPU使用率来进行扩缩容
6.高可用:利用Etcd对K8s的master节点做HA部署,etcd是一个高可用强一致性的分布式存储服务
https://blog.youkuaiyun.com/qq_38664479/article/details/120560854
1.集群master-node节点与etcd节点共存,etcd也运行在控制平面节点上
2.使用外部etcd节点,etcd节点与master-node在不同的节点上运行

前端项目vue工程:
1、安装nodejs,可以去官网下载,安装完成后在命令行输入node -v或npm -v,若正确显示版本,表示安装成功。
2、设置国内镜像(老外的网站有点慢),在cmd下执行:
npm install -g cnpm --registry=https://registry.npm.taobao.org
3、命令行进入项目根目录,安装项目所需的依赖:npm install
4、运行项目:npm run dev

三种常见的限流算法:
计数器:设置单位时间内的请求个数,最新的请求与第一个请求时间间隔再单位时间内选择等待,若是超过时间,那么重新计数
漏桶:直接放弃
令牌桶:漏桶取的速度是固定的,令牌桶放的速度是固定的
滑动窗口

CORS跨域资源共享原理及常用解决办法
https://www.jianshu.com/p/abf6bef52e7e
例如:我们的登陆页面有个验证码验证的功能是集成第三方的服务,比如请求验证码的地址是第三方地址跟我们本地的index不是一个域,浏览器的同源策略就会禁止这个请求的发起,报401
验证码服务器添加跨越几种方式:
1.单接口
@CrossOrigin(origins =[“url”])
2.全接口 -主要是拦截器
加过滤器corsFilter

https/http
https://www.cnblogs.com/wqhwe/p/5407468.html
http:无状态,连接简单,端口80,明文传输
https:需要证书,ssl加密,端口443
步骤:
1.https请求获取公钥;2随机产生对称密钥;3使用公钥对对称私钥加密;4发送加密后的对称私钥给服务器;5通过对称密钥加密的密文传输

### 运维基础概念与操作南 #### 什么是运维运维(Operations and Maintenance, O&M),是通过一系列技术和管理手段来保障信息系统、硬件设备和软件服务的正常运行。它涵盖了从基础设施搭建到日常维护的一系列流程,旨在提高系统的稳定性、可靠性和性能。 在现代企业的数字化转型过程中,IT运维管理体系的重要性日益凸显[^1]。这一体系不仅关注技术层面的操作,还涉及对企业整体业务的支持和服务优化。 --- #### 关键运维领域及其基础知识 ##### 1. **网络运维** 网络运维的核心目标是确保企业内部及外部网络的安全性、稳定性和高效性。以下是网络运维的一些基本知识点: - 基础监控:包括带宽利用率、延迟时间、丢包率等标的实时监测。 - 复杂配置:如路由协议调整、防火墙规则设定以及负载均衡器部署。 - 安全防护:定期更新补丁程序并实施入侵检测机制以防范潜在威胁。 具体而言,《网络运维工程师的工作南》提供了详尽的任务描述和技术导,帮助从业者掌握必要的工具集与方法论[^2]。 ```bash # 示例命令——查看当前服务器开放端口情况 netstat -tuln | grep LISTEN ``` --- ##### 2. **数据库运维 (DBA)** 数据库运维专注于保持数据库环境的最佳状态,使其满足高并发访问需求的同时还能快速恢复异常状况下的数据丢失风险。针对流行的MySQL平台来说,则需特别注意以下几点事项: - 数据库初始化安装; - 参数调优建议; - 主备复制架构设计思路; - 日志管理和备份计划制定原则等等... 《关于如何做好一份合格的Mysql DBA角色介绍文章》,则进一步阐述了有关该主题方面的专业知识点,并给出了实际案例分析供读者参考学习[^3]. ```sql -- 查看InnoDB缓冲池命中率 SHOW STATUS LIKE 'innodb_buffer_pool%'; ``` --- ##### 3. **Linux系统运维** 对于大多数互联网应用而言,基于Linux操作系统构建的服务端显得尤为重要。因此熟悉此领域的常见操作就成为了一名优秀运维人员必备的能力之一。例如,在某些特定场景下可能需要用到如下所示的功能特性说明文档里提到的内容:“`/proc/sys/net/ipv4/ip_forward` 是一个动态文件...”这句话解释了当我们将它的数值修改成‘1’之后就可以激活IPv4层面上的数据包转发功能从而实现简单的NAT网关效果[^4]。 ```bash # 启用IP转发功能 echo "1" > /proc/sys/net/ipv4/ip_forward ``` --- #### 总结 综上所述,无论是哪一类别的运维工作都离不开扎实的技术功底加上良好的沟通协调能力共同作用才能达到预期目的。希望上述资料能对你有所帮助! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值