nginx

Linux运维发展方向

雨燕双飞 提交于 2020-12-11 13:40:42
linux运维发展常见的就是下面两条路线: 第一条:运维应用-->系统架构-->运维开发-->系统开发 第二条:运维应用-->应用dba-->架构dba-->开发DBA 下面详细每个阶段的职位说明: 01. 运维应用级别 这个阶段就是玩别人的软件,例如:linux,nginx,mysql,php,nagios,大多数的linux运维工程师,网络工程师,系统工程师都是这个阶段。 这个阶段的工资平均4-10K。处在这个阶段的伙伴们要注意了。 这里属于金字塔的底端,工资是相对比较低的。 02. 系统架构级别 这个阶段就是用已知软件架构大规模集群方案以及实现各种技术方案; 这个就是所谓的系统架构师,如果是程序开发就是程序架构师; 这个阶段的工资平均10K-30K,属于运维应用上层,需要靠技术,沟通,思想三条线通力配合才能达到这个水平。 03. 运维开发级别 这个阶段就是利用已知语言,比如Python,java ,底层的C语言,开发基本的应用层工具,例如:web管理系统; 这个阶段的平均工资大概10-30K,如果具备前两个运维应用和系统架构的积淀,那么工资30-60K很轻松。 04. 系统开发级别 这个阶段就是修改开源的软件,或者开发新的服务软件(例如:也开发一个web软件,存储软件)与底层软件(例如:OS); 这个阶段的平均工资大概40-60K,如果具备前几个运维应用和系统架构的积淀

Linux环境安装Nginx步骤

不想你离开。 提交于 2020-12-11 12:58:04
centos7平台编译环境使用如下指令安装: 1. 安装make: yum -y install gcc automake autoconf libtool make 2. 安装g++: yum -y install gcc gcc -c++ 下面正式开始: 一、选定安装文件目录 可以选择任何目录,本文选择 cd /usr/local/src cd /usr/local/src 因为本机内网环境,无法连接外网,下载链接: ftp: // ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz 下载完成,rz上传至/usr/local/src 目录下进行编译安装。 tar -zxvf pcre- 8.39 . tar .gz cd pcre - 8.39 . / configure make make install 安装Nginx: 下载地址: http://nginx.org/download/nginx-1.6.2.tar.gz 同样rz上传至 / usr / local / src / 目录 tar -zxvf nginx- 1.6 . 2 . tar .gz # cd nginx - 1.6 . 2 . /configure --prefix=/usr/local/webserver/nginx -

10大高性能开发宝石,我要消灭一半程序员!

為{幸葍}努か 提交于 2020-12-11 12:53:46
这篇文章,我们循序渐进,从内存、磁盘I/O、网络I/O、CPU、缓存、架构、算法等多层次递进,串联起高性能开发十大必须掌握的核心技术。 - I/O优化:零拷贝技术 - I/O优化:多路复用技术 - 线程池技术 - 无锁编程技术 - 进程间通信技术 - RPC && 序列化技术 - 数据库索引技术 - 缓存技术 && 布隆过滤器 - 全文搜索技术 - 负载均衡技术 准备好了吗,坐稳了,发车! 首先,我们从最简单的模型开始。 老板告诉你,开发一个静态web服务器,把磁盘文件(网页、图片)通过网络发出去,怎么做? 你花了两天时间,撸了一个1.0版本: 主线程进入一个循环,等待连接 来一个连接就启动一个工作线程来处理 工作线程中,等待对方请求,然后从磁盘读文件、往套接口发送数据,完事儿 上线一天,老板发现太慢了,大一点的图片加载都有卡顿感。让你优化,这个时候,你需要: I/O优化:零拷贝技术 上面的工作线程,从磁盘读文件、再通过网络发送数据,数据从磁盘到网络,兜兜转转需要拷贝四次,其中CPU亲自搬运都需要两次。 零拷贝技术 ,解放CPU,文件数据直接从内核发送出去,无需再拷贝到应用程序缓冲区,白白浪费资源。 Linux API: ssize_t sendfile( int out_fd, int in_fd, off_t *offset, size_t count );

linux环境下Nginx的安装

我怕爱的太早我们不能终老 提交于 2020-12-11 11:53:11
因为工作环境大多数都是windows server服务器,仅有的linux服务器同事们都在抢着用,所以特意买了一台阿里云服务器,感兴趣的小伙伴可以了解一下,一年只要293: https://promotion.aliyun.com/ntms/act/qwbk.html?userCode=tmy8r0z0 系统版本:CentOS7.4 64位 当我吭哧吭哧安装好nginx可以正常访问之后,手贱输入了yum install nginx然后发现居然可以这样下载安装!!!只是安装的版本是1.12.2,这样直接安装就不需要再额外去安装一些依赖了,网上找的文章可以直接下载到稳定版本的nginx,我还没尝试,可作参考: https://www.cnblogs.com/xxoome/p/7256214.html Nginx下载安装 下载: ①官网直接下载tar.gz的安装包(个人倾向选择当前稳定的版本) 地址:http://nginx.org/en/download.html ②使用 wget 命令下载(个人推荐这种方式,方便,按需修改链接中的版本号即可) 我的系统默认已经安装了wget,如果没有安装,执行 yum install wget 安装 wget -c https: // nginx.org/download/nginx-1.14.2.tar.gz [root

nginx在linux环境下安装

跟風遠走 提交于 2020-12-11 11:52:56
1、安装依赖包 yum install autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel 2、下载nginx cd /usr/local/nginx wget http://nginx.org/download/nginx-1.12.2.tar.gz 3、解压安装 tar -zxvf xxx.tar.gz mkdir /usr/local/nginx ./configure --prefix=/usr/local/nginx --with-stream (--with-stream 加入tcp模块) make make install 4、防火墙允许80端口通过 vi /etc/sysconfig/iptables 在 -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT -------------redhat -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -------------centos 下添加: -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

k8s系列---存储卷pv/pvc subPath。configMap/secert

孤街醉人 提交于 2020-12-11 10:37:18
因为pod是有生命周期的,pod一重启,里面的数据就没了。所以我们需要数据持久化存储。 在k8s中,存储卷不属于容器,而是属于pod。也就是说同一个pod中的容器可以共享一个存储卷。 存储卷可以是宿主机上的目录,也可以是挂载在宿主机上的外部设备。 存储卷类型 emptyDIR存储卷 :pod一重启,存储卷也删除,这叫emptyDir存储卷。一般用于当做临时空间或缓存关系 hostPath存储卷 :宿主机上目录作为存储卷,这种也不是真正意义实现了数据持久性。 SAN(iscsi)或NAS(nfs、cifs): 网络存储设备 分布式存储(ceph,glusterfs,cephfs,rbd) : 云存储(亚马逊的EBS,Azure Disk,阿里云): 这种一般k8s也在云上部署的。 关键数据一定要有异地备份,否则数据一删,多少个副本都没用。 [root@master ingress]# kubectl explain pods.spec.volumes    hostPath 功能:使用宿主机上目录作为存储卷,这种也不是真正意义实现了数据持久性。 [root@master ~]# kubectl explain pods.spec.volumes.hostPath.type KIND: Pod VERSION: v1 FIELD: type <string> DESCRIPTION:

k8s之存储卷及pvc

生来就可爱ヽ(ⅴ<●) 提交于 2020-12-11 07:48:33
1. 存储卷概述 因为pod是有生命周期的,pod一重启,里面的数据就没了,所以我们需要数据持久化存储,在k8s中,存储卷不属于容器,而是属于pod,也就是说同一个pod中的容器可以共享一个存储卷,存储卷可以是宿主机上的目录,也可以是挂载在宿主机上的外部设备. 存储卷类型: emptyDIR存储卷 :pod一重启,存储卷也删除,这叫emptyDir存储卷,一般用于当做临时空间或缓存关系; hostPath存储卷 :宿主机上目录作为存储卷,这种也不是真正意义实现了数据持久性; SAN(iscsi)或NAS(nfs、cifs):网络存储设备; 分布式存储:ceph,glusterfs,cephfs,rbd 云存储:亚马逊的EBS,Azure Disk,阿里云,关键数据一定要有异地备份 a.emptyDIR存储卷 vim podtest/pod-vol-demo.yaml apiVersion: v1 kind: Pod metadata: name: pod-demo namespace: default labels: app: myapp tier: frontend spec: containers: - name: myapp image: ikubernetes/myapp:v2 imagePullPolicy: IfNotPresent ports: - name:

k8s的存储卷

梦想的初衷 提交于 2020-12-11 07:47:40
存储卷查看:kubectl explain pods.spec.volumes 一、简单的存储方式 1)2个容器之间共享存储.。(删除则数据消失) apiVersion: v1 kind: Pod metadata: name: pod - demo namespace : default labels: app: myapp tier: frontend annotations: magedu.com /created-by: " clusten admin " spec: containers: - name: myapp image: ikubernetes / myapp:v1 ports: - name: http containerPort: 80 volumeMounts: - name: html mountPath: /data/web/html/ - name: busybox image: busybox:latest imagePullPolicy: IfNotPresent volumeMounts: - name: html mountPath: /data/ command: - " /bin/sh " - " -c " - " sleep 3600 " volumes: - name: html emptyDir: {} pod-vol-demo

微服务三大利器之限流

∥☆過路亽.° 提交于 2020-12-11 05:47:03
背景 随着微服务的流行,服务和服务之间的稳定性变得越来越重要。缓存、降级和限流是保护微服务系统运行稳定性的三大利器。 缓存:提升系统访问速度和增大系统能处理的容量 降级:当服务出问题或者影响到核心流程的性能则需要暂时屏蔽掉 限流:解决服务雪崩,级联服务发生阻塞时,及时熔断,防止请求堆积消耗占用系统的线程、IO等资源,造成其他级联服务所在服务器的崩溃 这里我们主要说一下限流,限流的目的应当是通过对并发访问/请求进行限速或者一个时间窗口内的的请求进行限速来保护系统,一旦达到限制速率就可以拒绝服务、等待、降级。 首先,我们需要去了解最基本的两种限流算法。 限流算法 漏桶算法 令牌桶算法 计算器算法 这里主要是提一下,详细了解限流算法请参考下面链接 https://www.cnblogs.com/hopeiscoming/p/12297528.html 限流框架 下面说一下现有流行的限流工具 guava Google的Guava工具包中就提供了一个限流工具类——RateLimiter。RateLimiter是基于“令牌通算法”来实现限流的。 hystrix hystrix主要是通过资源池以及信号量来限流,暂时能支持简单的限流 sentinel 限流比较主流的三种算法:漏桶,令牌桶,滑动窗口。而Sentinel采用的是最后一种,滑动窗口来实现限流的。当然sentinel不仅仅局限于限流

OpenStack Placement组件

荒凉一梦 提交于 2020-12-10 09:52:21
安装 在 Stein 发布之前,placement代码与计算 REST API 代码 (nova-api) 一起位于 Nova 中。确保本文档的发布版本与要部署的发布版本匹配。 Placement API 服务在 nova 存储库中的 14.0.0 Newton 版本中引入,并 placement repository 19.0.0 Stein 版本中的placement存储库。这是一个 REST API 堆栈和数据模型,用于跟踪资源提供程序的清单和使用情况,以及不同的资源类别。 例如 资源提供程序可以是计算节点、共享存储池或 IP 分配池。Placement 服务跟踪每个提供程序的库存和使用。 在计算节点上创建的实例可能是来自计算节点资源提供程序的 RAM 和 CPU、来自外部共享存储池资源提供程序的磁盘和来自外部 IP 池资源提供程序的 IP 地址等资源的使用者。 消耗的资源类型被跟踪为 classes 。该服务提供一组标准资源类(例如 , 和),并提供根据需要定义自定义资源类的能力。 DISK_GB MEMORY_MB VCPU 每个资源提供程序也可能具有一组描述资源提供程序质量方面的特征。Traits 描述资源提供程序的一个方面,该方面本身无法使用,但工作负荷可能希望指定。例如,可用磁盘可能是固态驱动器 (SSD)。 步骤概述 ¶ 本小节概述了流程,而不详细说明了使用的方法