跳转至

Chrisjing的Paas运维之旅

入门篇-简单介绍

PaaS平台即服务

把服务器平台作为一种服务提供的商业模式。而云计算时代相应的服务器平台或者开发环境作为服务进行提供就成为了PaaS。所谓PaaS实际上是指将软件研发的平台作为一种服务,以SaaS的模式提交给用户。因此,PaaS也是SaaS模式的一种应用。

​ 第二层就是所谓的PaaS,某些时候也叫做中间件。你公司所有的开发都可以在这一层进行,节省了时间和资源。   PaaS公司在网上提供各种开发和分发应用的解决方案,比如虚拟服务器和操作系统。这节省了你在硬件上的费用,也让分散的工作室之间的合作变得更加容易。网页应用管理,应用设计,应用虚拟主机,存储,安全以及应用开发协作工具等。   一些大的PaaS提供者有Google App Engine,Microsoft Azure,Force.com,Heroku,Engine Yard。最近兴起的公司有AppFog, MendixStanding Cloud

Iaas和Paas之间的比较

PaaS的主要作用是将一个开发和运行平台作为服务提供给用户,而IaaS的主要作用是提供虚拟机或者其他资源作为服务提供给用户。接下来,将在七个方面对PaaS和IaaS进行比较:

1) 开发环境:PaaS基本都会给开发者提供一整套包括IDE在内的开发和测试环境,而IaaS方面用户主要还是沿用之前比较熟悉那套开发环境,但是因为之前那套开发环境在和云的整合方面比较欠缺,所以使用起来不是很方便。 2) 支持的应用:因为IaaS主要是提供虚拟机,而且普通的虚拟机能支持多种操作系统,所以IaaS支持的应用的范围是非常广泛的。但如果要让一个应用能跑在某个PaaS平台不是一件轻松的事,因为不仅需要确保这个应用是基于这个平台所支持的语言,而且也要确保这个应用只能调用这个平台所支持的API,如果这个应用调用了平台所不支持的API,那么就需要对这个应用进行修改。

3) 开放标准:虽然很多IaaS平台都存在一定的私有功能,但是由于OVF等协议的存在,使得IaaS在跨平台和避免被供应商锁定这两面是稳步前进的。而PaaS平台的情况则不容乐观,因为不论是Google的App Engine,还是Salesforce的Force.com都存在一定的私有API。  4) 可伸缩性:PaaS平台会自动调整资源来帮助运行于其上的应用更好地应对突发流量。而IaaS平台则需要开发人员手动对资源进行调整才能应对。  5) 整合率和经济性: PaaS平台整合率是非常高,比如PaaS的代表Google App Engine能在一台服务器上承载成千上万的应用,而普通的IaaS平台的整合率最多也不会超过100,而且普遍在10左右,使得IaaS的经济性不如PaaS。  6) 计费和监管:因为PaaS平台在计费和监管这两方面不仅达到了IaaS平台所能企及的操作系统层面,比如,CPU和内存的使用量等,而且还能做到应用层面,比如,应用的反应时间(Response Time)或者应用所消耗的事务多少等,这将提高计费和管理的精确性。  7) 学习难度:因为在IaaS上面开发和管理应用和现有的方式比较接近,而PaaS上面开发则有可能需要学一门新的语言或者新的框架,所以IaaS学习难度更低

PaaS IaaS
开发环境 完善 普通
支持的应用 有限 广
通用性 欠缺 稍好
可伸缩性 自动伸缩 手动伸缩
整合率和经济性 高整合率,更经济 低整合率
计费和监管 精细 简单
学习难度 略难

表1. PaaS和IaaS之间的比较

未来的PK

在当今云计算环境当中,IaaS是非常主流的,无论是Amazon EC2还是Linode或者Joyent等,都占有一席之地,但是随着Google的App Engine,Salesforce的Force.com还是微软的Windows Azure等PaaS平台的推出,使得PaaS也开始崭露头角。谈到这两者的未来,特别是这两者之间的竞争关系,我个人认为,短期而言,因为IaaS模式在支持的应用和学习难度这两方面的优势,使得IaaS将会在短期之内会成为开发者的首选,但是从长期而言,因为PaaS模式的高整合率所带来经济型使得如果PaaS能解决诸如通用性和支持的应用等方面的挑战,它将会替代IaaS成为开发者的“新宠”。

产品截图

img

资料获取

链接: Chrisjing的paas运维之旅提取码: 29ep

容器服务-docker

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 LinuxWindows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口

容器服务-理论知识

paas-容器服务01-docker理论知识-什么是Docker
paas-容器服务02-docker理论知识-Docker的三大核心概念
paas-容器服务03-docker理论知识-Docker的工作模式
paas-容器服务04-docker理论知识-Docker八种应用场景
paas-容器服务05-docker理论知识-docker与openstack对比
paas-容器服务06-docker理论知识-Docker改变了什么
paas-容器服务07-docker理论知识-Docker 容器十诫

容器服务-安装部署

paas-容器服务08-docker安装部署-容器环境初始化
paas-容器服务09-docker安装部署-快速部署容器环境
paas-容器服务10-docker安装部署-配置内核转发

容器服务-镜像管理

paas-容器服务11-docker镜像管理-配置镜像加速器
paas-容器服务12-docker镜像管理-搜索下载镜像
paas-容器服务13-docker镜像管理-导出镜像
paas-容器服务14-docker镜像管理-删除镜像
paas-容器服务15-docker镜像管理-导入镜像

容器服务-容器管理

paas-容器服务16-docker容器管理-简单启动容器
paas-容器服务17-docker容器管理-创建容器
paas-容器服务18-docker容器管理-容器常用管理
paas-容器服务19-docker容器管理-nsenter命令
paas-容器服务20-docker容器管理-容器自启动
paas-容器服务21-docker容器管理-将容器转换为镜像
paas-容器服务22-docker容器管理-特权模式运行容器

容器服务-网络管理

paas-容器服务23-docker网络管理-容器的网络模式介绍
paas-容器服务24-docker网络管理-容器的网络互联
paas-容器服务25-docker网络管理-容器的网络别名
paas-容器服务26-docker网络管理-none模式
paas-容器服务27-docker网络管理-container模式
paas-容器服务28-docker网络管理-host模式
paas-容器服务29-docker网络管理-bridge模式

容器服务-存储管理

paas-容器服务30-docker存储管理-容器的数据卷简介
paas-容器服务31-docker存储管理-构建数据卷
paas-容器服务32-docker存储管理-数据卷容器
paas-容器服务33-docker存储管理-数据卷的备份和还原

容器服务-资源配额

paas-容器服务34-docker资源配额-控制容器CPU配额
paas-容器服务35-docker资源配额-控制容器内存配额
paas-容器服务36-docker资源配额-控制容器磁盘IO配额
paas-容器服务37-docker资源配额-容器自动释放资源

容器服务-私有仓库

paas-容器服务38-docker私有仓库-harbor仓库简单介绍
paas-容器服务39-docker私有仓库-harbor仓库快速部署
paas-容器服务40-docker私有仓库-登录harbor仓库
paas-容器服务41-docker私有仓库-上传镜像到harbor仓库
paas-容器服务42-docker私有仓库-从harbor仓库拉取镜像
paas-容器服务43-docker私有仓库-harbor仓库镜像复制

容器服务-镜像构建

paas-容器服务44-docker镜像构建-Dockerfile-简单介绍
paas-容器服务45-docker镜像构建-Dockerfile-简单构建
paas-容器服务46-docker镜像构建-Dockerfile-FROM
paas-容器服务47-docker镜像构建-Dockerfile-MAINTAINER
paas-容器服务48-docker镜像构建-Dockerfile-RUN
paas-容器服务49-docker镜像构建-Dockerfile-COPY
paas-容器服务50-docker镜像构建-Dockerfile-ADD
paas-容器服务51-docker镜像构建-Dockerfile-CMD
paas-容器服务52-docker镜像构建-Dockerfile-EXPOSE
paas-容器服务53-docker镜像构建-Dockerfile-ENTRYPOINT
paas-容器服务54-docker镜像构建-Dockerfile-USER
paas-容器服务55-docker镜像构建-Dockerfile-ENV
paas-容器服务56-docker镜像构建-Dockerfile-ARG
paas-容器服务57-docker镜像构建-Dockerfile-VOLUME
paas-容器服务58-docker镜像构建-Dockerfile-WORKDIR
paas-容器服务59-docker镜像构建-Dockerfile-LABEL
paas-容器服务60-docker镜像构建-Dockerfile-HEALTHCHECK
paas-容器服务61-docker镜像构建-Dockerfile-ONBUILD
paas-容器服务62-docker镜像构建-Dockerfile-构建基础centos镜像容器
paas-容器服务63-docker镜像构建-Dockerfile-构建基础centos-ssh镜像容器
paas-容器服务64-docker镜像构建-Dockerfile-基于基础容器构建nginx容器
paas-容器服务65-docker镜像构建-Dockerfile-基于基础容器构建tomcat容器

容器服务-编排工具

paas-容器服务66-docker编排工具-docker-compose简单介绍
paas-容器服务67-docker编排工具-docker-compose-nginx
paas-容器服务68-docker编排工具-docker-compose-haproxy
paas-容器服务69-docker编排工具-docker-compose-wordpress
paas-容器服务70-docker编排工具-docker-compose-discuz
paas-容器服务71-docker编排工具-docker-compose-ldap
paas-容器服务72-docker编排工具-docker-compose-gerrit
paas-容器服务73-docker编排工具-docker-compose-gitlab
paas-容器服务74-docker编排工具-docker-compose-svn
paas-容器服务75-docker编排工具-docker-compose-jenkins
paas-容器服务76-docker编排工具-docker-compose-nexus
paas-容器服务77-docker编排工具-docker-compose-sonarqube
paas-容器服务78-docker编排工具-docker-compose-zentao
paas-容器服务79-docker编排工具-docker-compose-redmine

容器管理-kubernentes

**Kubernetes**是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单高效,Kubernetes提供了应用部署、规划、更新、维护的一种机制。 在Kubenetes中,所有的容器均在**Pod**中运行,一个Pod可以承载一个或者多个相关的容器。同一个Pod中的容器会部署在同一个物理机器上并且能够共享资源。一个Pod也可以包含0个或者多个磁盘卷组(volumes),这些卷组将会以目录的形式提供给一个容器,或者被所有Pod中的容器共享。

http://k8s.unixhot.com/

容器管理-理论知识

https://kubernetes.io/zh/

paas-容器管理-理论知识01-官网简介
paas-容器管理-理论知识02-Kubernetes是什么
paas-容器管理-理论知识03-Kubernetes能做什么
paas-容器管理-理论知识04-Kubernetes不是什么
paas-容器管理-理论知识05-k8s控制节点组件
paas-容器管理-理论知识06-k8s工作节点组件

容器管理-自动部署

saltstack自动化kubebin部署-(测试玩玩即可-一般难度,适合新手快速入门 Release-v1.10.3)-test

paas-容器管理-saltstack自动化kubebin部署k8s-安装部署01-简单介绍
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署02-服务器初始化
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署03-快速部署
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署04-测试集群环境
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署05-CoreDNS部署
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署06-Dashboard部署
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署07-Heapster部署
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署08-Ingress部署
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署09-快速扩容node节点
paas-容器管理-saltstack自动化kubebin部署k8s-安装部署10-测试扩容node结果

saltstack自动化kubeadm部署-(测试玩玩即可-一般难度,适合新手快速入门 Release-v1.19.6)-test

paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署01-简单介绍
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署02-服务器初始化
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署03-快速部署基础环境01
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署04-快速部署基础环境02
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署05-初始化master节点
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署06-初始化flannel网络
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署07-初始化node节点
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署08-测试集群环境
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署09-CoreDNS部署
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署10-快速扩容node节点
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署11-测试扩容node结果
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署12-安装dashboard插件
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署13-安装ingress插件
paas-容器管理-saltstack自动化kubeadm部署k8s-安装部署14-安装helm3工具

shell自动化kubeadm部署-(测试玩玩即可-超级简单,适合新手极速入门 Release-v1.20.11)-test

paas-容器管理-shell自动化kubeadm部署k8s-安装部署01-简单介绍
paas-容器管理-shell自动化kubeadm部署k8s-安装部署02-服务器初始化
paas-容器管理-shell自动化kubeadm部署k8s-安装部署03-快速部署master节点
paas-容器管理-shell自动化kubeadm部署k8s-安装部署04-快速部署node节点
paas-容器管理-shell自动化kubeadm部署k8s-安装部署05-测试集群环境
paas-容器管理-shell自动化kubeadm部署k8s-安装部署06-CoreDNS部署
paas-容器管理-shell自动化kubeadm部署k8s-安装部署07-快速扩容node节点
paas-容器管理-shell自动化kubeadm部署k8s-安装部署08-测试扩容node节点
paas-容器管理-shell自动化kubeadm部署k8s-安装部署09-快速扩容master节点
paas-容器管理-shell自动化kubeadm部署k8s-安装部署10-安装dashboard插件
paas-容器管理-shell自动化kubeadm部署k8s-安装部署11-安装ingress插件
paas-容器管理-shell自动化kubeadm部署k8s-安装部署12-安装helm3工具

容器管理-手动部署

kubeadm手动部署k8s多master集群-(可用于公司生产环境,适合新手快速入门 Release-v1.20.6)

paas-容器管理-kubeadm手动部署k8s多master集群-安装部署01-简单介绍
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署02-服务器初始化
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署03-集群环境准备
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署04-安装nginx代理
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署05-安装keepalived高可用
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署06-部署master节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署07-添加master节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署08-部署node节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署09-部署calico网络插件
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署10-测试集群网络环境
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署11-集群部署nginx服务
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署12-部署扩容node节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署13-验证扩容node节点是否可用
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署14-缩容node节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署15-恢复node节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署16-验证恢复的node节点是否可用
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署17-部署扩容master节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署18-缩容master节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署19-恢复master节点
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署20-配置nginx健康检查
paas-容器管理-kubeadm手动部署k8s多master集群-安装部署21-验证集群高可用

kubeadm手动部署k8s单master集群-(可用于公司测试环境,适合新手快速入门 Release-v1.20.6)

paas-容器管理-kubeadm手动部署k8s单master集群-安装部署01-简单介绍
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署02-服务器初始化
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署03-集群环境准备
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署04-部署master节点
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署05-部署node节点
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署06-部署calico网络插件
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署07-测试集群网络环境
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署08-集群部署nginx服务
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署09-部署扩容node节点
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署10-验证扩容node节点是否可用
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署11-缩容node节点
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署12-恢复node节点
paas-容器管理-kubeadm手动部署k8s单master集群-安装部署13-验证恢复的node节点是否可用

容器管理-集群初始化

kubeadm手动初始化k8s多master集群-(可用于公司生产环境,适合新手快速入门 Release-v1.20.6)

paas-容器管理-多master集群初始化01-安装coredns插件
paas-容器管理-多master集群初始化02-安装dashboard插件
paas-容器管理-多master集群初始化03-使用token登录dashboard
paas-容器管理-多master集群初始化04-使用dashboard创建pod
paas-容器管理-多master集群初始化05-安装metrice-server服务
paas-容器管理-多master集群初始化06-使用Kubectl-top命令
paas-容器管理-多master集群初始化07-修改schedule绑定的端口
paas-容器管理-多master集群初始化08-延长集群证书到期时间

kubeadm手动初始化k8s单master集群-(可用于公司测试环境,适合新手快速入门 Release-v1.20.6)

paas-容器管理-单master集群初始化01-安装coredns插件
paas-容器管理-单master集群初始化02-安装dashboard插件
paas-容器管理-单master集群初始化03-使用token登录dashboard
paas-容器管理-单master集群初始化04-使用kubeconfig登录dashboard
paas-容器管理-单master集群初始化05-使用dashboard创建pod
paas-容器管理-单master集群初始化06-安装metrice-server服务
paas-容器管理-单master集群初始化07-使用Kubectl-top命令
paas-容器管理-单master集群初始化08-修改schedule绑定的端口
paas-容器管理-单master集群初始化09-延长集群证书到期时间

容器管理-日常运维

paas-容器管理-日常运维01-修改node节点的主机名称
paas-容器管理-日常运维02-修改node节点的角色名称
paas-容器管理-日常运维03-node节点下线维修
paas-容器管理-日常运维04-node节点故障疏散
paas-容器管理-日常运维05-node节点限制pod

容器管理-镜像仓库

paas-容器管理-镜像仓库01-简单介绍
paas-容器管理-镜像仓库02-本地镜像上传到镜像仓库
paas-容器管理-镜像仓库03-配置k8s集群内部镜像仓库
paas-容器管理-镜像仓库04-验证k8s集群使用内部镜像仓库

容器管理-POD入门

paas-容器管理-POD管理01-简单介绍
paas-容器管理-POD管理02-pod创建流程
paas-容器管理-POD管理03-资源清单创建Pod
paas-容器管理-POD管理04-从命令行创建pod
paas-容器管理-POD管理05-简单管理使用pod
paas-容器管理-POD管理06-自主式创建pod
paas-容器管理-POD管理07-控制器创建pod
paas-容器管理-POD管理08-导出yaml清单文件

容器管理-命名空间

paas-容器管理-命名空间01-简单介绍
paas-容器管理-命名空间02-创建命名空间
paas-容器管理-命名空间03-切换命名空间
paas-容器管理-命名空间04-命名空间限额

容器管理-POD进阶

paas-容器管理-POD进阶01-node节点选择器 paas-容器管理-POD进阶02-node节点硬亲和性 paas-容器管理-POD进阶03-node节点软亲和性 paas-容器管理-POD进阶04-pod亲和性 paas-容器管理-POD进阶05-pod反亲和性 paas-容器管理-POD进阶01-

容器管理-POD扩展

容器管理-k8s控制器

容器管理-k8s应用

容器管理-k8s安全

容器管理-k8s监控

容器管理-k8s日志