当前位置: 首页 > news >正文

前端自己写代码建网站要花多少钱凤凰手机网官网

前端自己写代码建网站要花多少钱,凤凰手机网官网,登录背景图片素材,江门恒达互联网网站建设戳蓝字“CSDN云计算”关注我们哦#xff01;编者按#xff1a;1月18日#xff0c;网易云首席解决方案架构师刘超在微信群带来了主题为“企业应用快速跨向容器时代的正确姿势”的线上讲座#xff0c;顺接上个月“云计算的前世今生”#xff0c;为大家进一步详细解读了容器的… 戳蓝字“CSDN云计算”关注我们哦编者按1月18日网易云首席解决方案架构师刘超在微信群带来了主题为“企业应用快速跨向容器时代的正确姿势”的线上讲座顺接上个月“云计算的前世今生”为大家进一步详细解读了容器的诞生、容器的管理、以及容器如何对应用打包等问题。 刘超︱网易云首席解决方案架构师云计算的发展脉络云计算整个发展过程用一句话来形容就是“分久必合合久必分”。容器的诞生云计算解决了基础资源层的弹性伸缩却没有解决 PaaS层应用随基础资源层弹性伸缩而带来的批量、快速部署问题。于是容器应运而生。容器是 ContainerContainer另一个意思是集装箱其实容器的思想就是要变成软件交付的集装箱。集装箱的特点一是打包二是标准。在没有集装箱的时代假设将货物从 A运到 B中间要经过三个码头、换三次船。每次都要将货物卸下船来摆的七零八落然后搬上船重新整齐摆好。因此在没有集装箱的时候每次换船船员们都要在岸上待几天才能走。有了集装箱以后所有的货物都打包在一起了并且集装箱的尺寸全部一致所以每次换船的时候一个箱子整体搬过去就行了小时级别就能完成船员再也不用上岸长时间耽搁了。 这是集装箱“打包”、“标准”两大特点在生活中的应用。下面用一个简单的案例来看看容器在开发部署中的实际应用。假设有一个简单的 Java网站需要上线代码的运行环境如下看一个简单的 Java网站就有这么多零零散散的东西这就像很多零碎的货物如果不打包就需要在开发、测试、生产的每个环境上重新查看以保证环境的一致有时甚至要将这些环境重新搭建一遍就像每次将货物卸载、重装一样麻烦。中间稍有差池比如开发环境用了 JDK 1.8而线上是 JDK 1.7比如开发环境用了 root用户线上需要使用 hadoop用户都可能导致程序的运行失败。那么容器如何对应用打包呢还是要学习集装箱首先要有个封闭的环境将货物封装起来让货物之间互不干扰互相隔离这样装货卸货才方便。好在 ubuntu中的 lxc技术早就能做到这一点。封闭的环境主要使用了两种技术一种是看起来是隔离的技术称为 namespace也即每个 namespace中的应用看到的是不同的 IP地址、用户空间、程号等。另一种是用起来是隔离的技术称为 cgroup也即明明整台机器有很多的 CPU、内存而一个应用只能用其中的一部分。 有了这两项技术集装箱的铁盒子我们是焊好了接下来就是决定往里面放什么。最简单粗暴的方法就是将上面列表中所有的都放到集装箱里面。但是这样太大了因为即使你安装一个干干静静的 ubuntu操作系统什么都不装就很大了。把操作系统装进容器相当于把船也放到了集装箱里面传统的虚拟机镜像就是这样的动辄几十G。答案当然是 NO所以第一项操作系统不能装进容器。 撇下第一项操作系统剩下的所有的加起来也就几百 M就轻便多了。因此一台服务器上的容器是共享操作系统内核的容器在不同机器之间的迁移不带内核这也是很多人声称容器是轻量级的虚拟机的原因。轻不白轻自然隔离性就差了一个容器让操作系统崩溃了其他容器也就跟着崩溃了这相当于一个集装箱把船压漏水了所有的集装箱一起沉。 另一个需要撇下的就是随着应用的运行而产生并保存在本地的数据。这些数据多以文件的形式存在例如数据库文件、文本文件。这些文件会随着应用的运行越来越大如果这些数据也放在容器里面会让容器变得很大影响容器在不同环境的迁移。而且这些数据在开发、测试、线上环境之间的迁移是没有意义的生产环境不可能用测试环境的文件所以往往这些数据也是保存在容器外面的存储设备上。这也是为什么人们称容器是无状态的。 至此集装箱焊好了货物也装进去了接下来的问题就是如何将这个集装箱标准化从而在哪艘船上都能运输。这里的标准一个是镜像一个是容器的运行环境。 所谓的镜像就是将你焊好集装箱的那一刻将集装箱的状态保存下来就像孙悟空说“定”集装箱里面就定在了那一刻然后将这一刻的状态保存成一系列文件。这些文件的格式是标准的谁看到这些文件都能还原当时定住的那个时刻。将镜像还原成运行时的过程就是读取镜像文件还原那个时刻的过程就是容器运行的过程。除了大名鼎鼎的 Docker还有其他的容器例如 AppC、Mesos Container都能运行容器镜像。所以说容器不等于 Docker。 总而言之容器是轻量级的、隔离差的、适用于无状态的可以基于镜像标准实现跨主机、跨环境的随意迁移。有了容器使得 PaaS层对于用户自身应用的自动部署变得快速而优雅。容器快就快在两方面第一虚拟机启动的时候要先启动操作系统容器不用启动操作系统因为是共享内核的第二虚拟机启动后使用脚本安装应用容器不用安装应用因为已经打包在镜像里面了。所以最终虚拟机的启动是分钟级别而容器的启动是秒级。容器咋这么神奇其实一点都不神奇第一是偷懒少干活了第二是提前把活干好了。 因为容器启动快人们往往不会创建一个个小的虚拟机来部署应用因为这样太浪费时间了而是创建一个大的虚拟机然后在大的虚拟机里面再划分容器而不同的用户不共享大的虚拟机可以实现操作系统内核的隔离。这又是一次合久必分的过程。由 IaaS层的虚拟机池划分为更细粒度的容器池。容器管理平台有了容器的管理平台又是一次分久必合的过程。 容器的粒度更加细管理起来更难管甚至是手动操作难以应对的。假设你有 100台物理机其实规模不是太大用 Excel人工管理是没问题的但是一台上面开 10台虚拟机虚拟机的个数就是 1000台人工管理已经很困难了但是一台虚拟机里面开 10个容器就是 10000个容器你是不是已经彻底放弃人工运维的想法了。 所以容器层面的管理平台是一个新的挑战关键字就是自动化○自发现容器与容器之间的相互配置还能像虚拟机一样记住 IP地址然后互相配置吗这么多容器一旦一台虚拟机挂了重启IP改变你怎么记得住应该改哪些配置列表长度至少万行级别的啊。所以容器之间的配置通过名称来的无论容器跑到哪台机器上名称不变就能访问到。○自修复容器挂了或是进程宕机了能像虚拟机那样登陆上去查看一下进程状态如果不正常可以重启一下么那你要登陆万台 docker了。所以容器的进程挂了容器就自动挂掉了然后自动重启。○弹性自伸缩  Auto Scaling当容器的性能不足的时候需要手动伸缩、手动部署么当然也要自动来。当前火热的容器管理平台有三大流派一个是 Kubernetes我们称为段誉型。段誉 (Kubernetes)的父亲 (Borg)武功高强出身皇族 (Google)管理过偌大的一个大理国 (Borg是 Google数据中心的容器管理平台)。作为大理段式后裔段誉的武功基因良好 (Kubernetes的理念设计比较完善)周围的高手云集习武环境也好 (Kubernetes生态活跃热度高)虽然刚刚出道的段誉武功不及其父亲但是只要跟着周围的高手不断切磋武功即可飞速提升。一个是 Mesos我们称为乔峰型。乔峰 (Mesos)的主要功夫降龙十八掌 (Mesos的调度功能)独步武林为其他帮派所无。而且乔峰也管理过人数众多的丐帮 (Mesos管理过 Tweeter的容器集群)。后来乔峰从丐帮出来在江湖中特例独行 (Mesos的创始人成立了公司 Mesosphere)。乔峰的优势在于乔峰的降龙十八掌 (Mesos)就是在丐帮中使用的降龙十八掌相比于段誉初学其父的武功来说要成熟很多。但是缺点是降龙十八掌只掌握在少数的几个丐帮帮主手中 (Mesos社区还是以 Mesosphere为主导)其他丐帮兄弟只能远远崇拜乔峰而无法相互切磋(社区热度不足)。一个是 Swarm我们称为慕容型。慕容家族 (Swarm是 Docker家族的集群管理软件)的个人功夫是非常棒的 (Docker可以说称为容器的事实标准)但是看到段誉和乔峰能够管理的组织规模越来越大有一统江湖的趋势着实眼红了于是开始想创建自己的慕容鲜卑帝国(推出 Swarm容器集群管理软件)。但是个人功夫好并不代表着组织能力强 (Swarm的集群管理能力)好在慕容家族可以借鉴段誉和乔峰的组织管理经验学习各家公司以彼之道还施彼身使得慕容公子的组织能力 (Swarm借鉴了很多前面的集群管理思想)也在逐渐的成熟中。 三大容器门派到底鹿死谁手谁又能一统江湖尚未可知。网易之所以选型 Kubernetes作为自己的容器管理平台是因为基于 Borg 成熟的经验打造的 Kubernetes为容器编排管理提供了完整的开源方案并且社区活跃生态完善积累了大量分布式、服务化系统架构的最佳实践。容器初体验想不想尝试一下最先进的容器管理平台呢我们先了解一下 Docker的生命周期。如图所示。图中中间的就是最核心的两个部分一个是镜像 Images一个是容器 Containers。镜像运行起来就是容器。容器运行的过程中基于原始镜像做了改变比如安装了程序添加了文件也可以提交回去 (commit)成为镜像。如果大家安装过系统镜像有点像 GHOST镜像从 GHOST镜像安装一个系统运行起来就相当于容器容器里面自带应用就像 GHOST镜像安装的系统里面不是裸的操作系统里面可能安装了微信QQ视频播放软件等。安装好的系统使用过程中又安装了其他软件或者下载了文件还可以将这个系统重新 GHOST成一个镜像当其他人通过这个镜像再安装系统的时候则其他的软件也就自带了。 普通的 GHOST镜像就是一个文件但是管理不方便。比如如果有十个 GHOST镜像的话你可能已经记不清楚哪个镜像里面安装了哪个版本的软件了。所以容器镜像有 tag的概念就是一个标签比如 dev-1.0dev-1.1production-1.1等凡是能够帮助你区分不同镜像的都可以。 为了镜像的统一管理有一个镜像库的东西可以通过 push将本地的镜像放到统一的镜像库中保存可以通过 pull将镜像库中的镜像拉到本地来。 从镜像运行一个容器可使用下面的命令如果初步使用 Docker记下下面这一个命令就可以了。这行命令会启动一个里面安装了 mysql的容器。其中 docker run就是运行一个容器--name就是给这个容器起个名字-v 就是挂数据盘将外面的一个目录 /my/own/datadir挂载到容器里面的一个目录 /var/lib/mysql作为数据盘外面的目录是在容器所运行的主机上的也可以是远程的一个云盘-e 是设置容器运行环境的环境变量环境变量是最常使用的设置参数的方式例如这里设置 mysql的密码。mysql:tag就是镜像的名字和标签。 docker stop可以停止这个容器start可以再启动这个容器restart可以重启这个容器。在容器内部做了改变例如安装了新的软件产生了新的文件则调用 docker commit变成新的镜像。 镜像生产过程除了可以通过启动一个 docker手动修改然后调用 docker commit形成新镜像之外还可以通过书写 Dockerfile通过 docker build来编译这个 Dockerfile形成新的镜像。为什么要这样做呢前面的方式太不自动化了需要手工干预而且还经常会忘了手工都做了什么。用 Dockerfile可以很好地解决这个问题。 Dockerfile 的一个简单的例子如下这其实是一个镜像的生产说明书Docker build 的过程就是根据这个生产说明书来生产镜像FROM基础镜像先下载这个基础镜像然后从这个镜像启动一个容器并且登陆到容器里面RUN 运行一个命令在容器里面运行这个命令COPY/ADD 将一些文件添加到容器里面最终给容器设置启动命令  ENTRYPOINT这个命令不在镜像生成过程中执行而是在容器运行的时候作为主程序执行将所有的修改 commit成镜像。 这里需要说明一下的就是主程序是 Docker里面的一个重要的概念虽然镜像里面可以安装很多的程序但是必须有一个主程序主程序和容器的生命周期完全一致主程序在则容器在主程序亡则容器亡。就像图中展示的一样容器是一个资源限制的框但是这个框没有底全靠主进程撑着主进程挂了衣服架子倒了衣服也就垮了。 了解了如何运行一个独立的容器接下来介绍如何使用容器管理平台。容器管理平台初体验容器管理平台会对容器做更高的抽象容器不再是单打独斗而且组成集团军共同战斗。 多个容器组成一个 Pod这几个容器亲如兄弟干的也是相关性很强的活能够通过 localhost访问彼此真是兄弟齐心力可断金。有的任务一帮兄弟还扛不住就需要多个 Pod合力完成这个由 ReplicationController进行控制可以将一个 Pod复制 N个副本同时承载任务众人拾柴火焰高。 N个 Pod如果对外散兵作战一是无法合力二是给人很乱的感觉因而需要有一个老大作为代言人将大家团结起来一致对外这就是 Service。老大对外提供统一的虚拟 IP和端口并将这个 IP和服务名关联起来访问服务名则自动映射为虚拟 IP。老大的意思就是如果外面要访问我这个团队喊一声名字就可以例如”雷锋班帮敬老院打扫卫生”你不用管雷锋班的哪个人去打扫卫生每个人打扫哪一部分班长会统一分配。 最上层通过 namespace分隔完全隔离的环境例如生产环境测试环境开发环境等。就像军队分华北野战军东北野战军一样。野战军立正出发部署一个 Tomcat的 Java应用。实战案例有个 blog的 war可以从这里下载http://demo.nos-eastchina1.126.net/springblog.war还需要一个 jar从这里下载http://demo.nos-eastchina1.126.net/spring-instrument-tomcat-4.2.2.RELEASE.jar1.    将编译结果上传到对象存储登陆网易蜂巢点击对象存储创建桶。上传 springblog.war到这个桶里面。对于 spring还需要 spring-instrument-tomcat-4.2.2.RELEASE.jar 放到这个桶里面。2.      写一个 Dockerfile由于这是基于 Tomcat的所以我们使用 hub.c.163.com/library/tomcat:8.0-jre7 作为基础镜像。这个镜像可以在镜像仓库里面搜到。  通过 ADD命令将对象存储中的 warjar放入容器镜像中并且修改权限。注意 URL地址不是本例子中的地址而是您自己的地址可以在对象存储界面上通过复制地址得到这个地址。将 catalina.sh run作为 ENTRYPOINT。3.     构建一个镜像在镜像仓库里面创建镜像仓库起个名字点击镜像仓库点击构建镜像在本地选择写好的 Dockerfile开始构建。构建成功则显示如下4.    创建 tomcat服务在服务管理中点击创建服务。填写名称 testtomcat选择无状态镜像选择前面构建的镜像。选择默认的规格端口映射为 8080映射为 8080。点击立即创建。等待创建成功。5.    创建负载均衡器在负载均衡页面点击创建负载均衡取名 testtomcat。点击创建监听。取名 testtomcat监听端口 8080映射为 testtomcat服务的 8080.点击立即创建。6.    访问页面使用负载均衡的 IP地址加上 8080端口访问 tomcat。使用 user/user登陆创建一个博客。 福利扫描添加小编微信备注“姓名公司职位”加入【云计算学习交流群】和志同道合的朋友们共同打卡学习2、公众号后台回复工具获取开源云监控工具详细资料推荐阅读一部刷爆朋友圈的5G短片看完才知道5G多暖多重要小团队的微服务之路女神节该送程序媛什么礼物保命指南来了| 程序员有话说Android 告急两会第一天, 大佬们关于区块链的探讨, 你要了解的都在这了云评测 | 开发者最有用的开源云监控工具有哪些呢? 这7款神器总有一款适合你喜欢就点击“好看”吧
http://www.sadfv.cn/news/355571/

相关文章:

  • 动易网站栏目珠宝行业做网站的好处
  • 火狐 开发者 网站手机网站开发怎么样
  • 美工素材网站有哪些网站开发后端
  • 响应式网站需要的技术dedecms怎么制作网站
  • 东莞单位网站建设网站为契机建设校园数字化
  • 生鲜电商网站建设策划书app开发费用价目表
  • 看公狍和女人做爰网站国外dns服务器地址
  • 建筑行业招聘网站推荐小程序模板和定制的区别
  • 云南网站建设锐网现在用什么软件做网站
  • 永定门网站建设东莞免费的制作网页
  • 网站建设ghtml登录页面设计代码
  • 免费企业建站网站模板名称
  • 网站的空间与域名如何制作网站导航栏
  • 织梦模板建站速购单微信小程序怎么做
  • 网站建设的固定资产包括哪些学网页设计先学什么
  • 视频网站自己做服务器广告推广免费发布
  • aspcms 网站标签调用淄博人才网官网首页
  • 做简单的网站链接厦门网站推广优化哪家好
  • 网站推广公司排名微营销案例
  • 做企业画册网站有嘉兴响应式网站
  • 温州网站搭建php网站开发招聘
  • 泸州网站制作如何做好网站搜索引擎优化
  • 上海金融网站制作网站制作公司好长治网站制作
  • 什么软件能创建网站乐清网站制作公司有哪些
  • 沧州做网站多少钱青岛关键词优化seo
  • 一般网站设计多少钱济南网站怎么做seo
  • 长沙好的网站建设公司哪家好免费商务网
  • 做企业网站需要自己有公司吗东莞seo整站优化
  • 佛山网站优化服务在广州注册公司流程和费用
  • 网站繁体和中文这么做中国企业招聘网