-
什么是云计算?
云计算是通过虚拟化技术去实现的,它是一种按量付费的模式!
云计算提供资源的网络,使用者可以随时获取“云”上的资源,按需求量使用,只要按使用量付费就可以。 -
为什么要用云计算?
小公司:自己买服务器,还需要专业的运维去维护,成本过高。可以按照规格要求买云服务器,按量付费,不需要自己维护服务器。
大公司:举行大型活动时需要部署大量集群(例如618、双11),但是过了活动时间又用不到那么多资源,于是可以把闲置的资源整合出租给小公司。 -
云计算(IAAS)有哪些功能?
kvm:1000宿主机(agent),虚拟出2w虚拟机。
这些虚拟机的详细情况:硬件资源,ip情况统计。
虚拟机管理平台:每台虚拟机的管理,都用数据库来统计,使用计费功能。 -
云计算的服务类型:
IAAS (Infrastructure as a Service 基础设施即服务):指把IT基础设施作为一种服务通过网络对外提供,即对外提供云主机,开源的主要通过openstack实现。
PAAS(Platform as a Service 平台即服务):将服务器平台或者开发环境(java、php、python、c等)作为服务进行提供,开发者只需要关注自己的业务逻辑,不需要关注底层。一般通过docker实现。
SAAS(Software as a Service 软件即服务):即通过网络提供软件服务,软件的开发、管理、部署都交给第三方,不需要关心技术问题,可以拿来即用。SaaS平台供应商将应用软件统一部署在自己的服务器上,客户可以根据工作实际需求,通过互联网向厂商定购所需的应用软件服务,并通过互联网获得Saas平台供应商提供的服务。
-
SOA架构:
(1)单机时代:
lamp:linux httpd + mysql + php
(2)集群时代:
linux:nginx 代理服务器、负载均衡 *2
linux:http + php *5(session共享)
linux:MFS,GFS,ceph(分布式文件系统) *5
linux:redis *2
linux:mysql *2 (优化:分库分表)
数据库是瓶颈
(3)SOA时代—按业务拆分:
秒杀业务:
linux:nginx 代理服务器、负载均衡 *2
linux:http + php *5(session共享)
linux:MFS,GFS,ceph(分布式文件系统) *5
linux:redis *2
linux:mysql *2
优惠业务:
linux:nginx 代理服务器、负载均衡 *2
linux:http + php *5(session共享)
linux:MFS,GFS,ceph(分布式文件系统) *5
linux:redis *2
linux:mysql *2
…
每种业务都可以单独拆分部署。
SOA带来的问题:
不同业务间统一认证:认证中心(例如:keystone)。
不同业务的事务一致性:通过消息队列实现。 -
openstack (soa架构):
云平台(keystone认证服务,glance镜像服务,nova计算服务,neutron网络服务,cinder存储服务,horizon web界面)
每个服务:数据库,消息队列,memcached缓存,时间同步。
keystone
概念
keystone(openstack identity service)在openstack框架中负责身份验证、服务规则和服务令牌的功能, 它实现了openstack的Identity API。
其他服务通过keystone来注册其服务的Endpoint(服务访问的URL),任何服务之间的相互调用,需要经过keystone的身份验证来获得目标服务的Endpoint来找到目标服务。
openstak服务的安装步骤
- 在mysql数据库创库授权
- 在keystone创建用户,并关联角色
- 在keystone注册API
- yum安装服务软件包
- 修改服务配置文件
- 同步数据库
- 启动服务