现象:利用google云搭建VM服务,在搭建实例组有一个"自动调节"功能,可以自动添加/删除MV,当自动添加VM时可能新添加的VM就是一个新的VM,你部署的代码或者环境都没了。现在解决该问题。

     1、新建模板VM:作为基础VM模板,然后进虚拟机进行配置(环境配置和代码部署)。https://console.cloud.google.com/compute/instances

  2、完成后,用IP进行访问,测试你的服务是否能正常访问。如果正常,停止该虚拟机。然后创建映像:来源磁盘选择刚刚新建的VM磁盘。

  3、 利用映像创建实例模板:启动磁盘选择刚刚新建的映像

  3、创建实例组或者实例:根据刚刚新建的实例模板创建VM。实例组开启自动调节,但满足需求时,会自动添加或者删除VM,只保留需要的VM个数。

4、创建负载均衡:主菜单中(网络服务--负载均衡)中创建负载均衡,后端配置中在实例组一项选择刚刚新建的实例组。

5、负载均衡的公共IP就是最终的访问IP,DNS解析绑定到该IP即可。

   总结:当访问并发加大时,超过设置的调节限制,系统会自动添加新的VM。当我们根据上面的步骤设置后,新建的VM就会根据映像自动创建新的VM,这种情况下新VM就是完整的,部署的代码和其他服务都正常。否则新MV会根据第一次创建模板VM的启动磁盘为准,新建出来的VM就是新的,没有我们部署的代码和服务。

  

  附:代码更新:如果我们的代码有更新,需要重新部署到服务器,可以用以下方式。

  6、重新启动模板VM(第1步创建的模板VM,我们创建映像时关掉的VM)。启动后通过SSH进入VM进行代码部署,然后通过IP进行访问,测试新代码的部署是否生效。

  7、通过测试后关闭该VM。然后去映像中删除上次建的映像(第2不创建的映像)。注意,记录下该映像的名称。

  8、根据第2步的方式创建映像,注意新映像名称必须跟上一步删除的映像名称必须一样,不然实例组新建VM是无法找到映像。新的映像启动磁盘用第6步部署了新代码的VM磁盘。

  9、完成后,更新实例。在实例组中选择实例进行"重新启动/替换"。替换完成后,新部署的代码或者服务在每个VM都生效。

       

Google Compute Engine VM自动调节的更多相关文章

  1. 修改谷歌云google cloud engine VM root账户的密码和允许远程ssh登录

      Figured it out. The VM's in cloud engine don't come with a root password setup by default so you'l ...

  2. 使用Compute Engine工具连接Linux VM

    Links: Connecting to Linux Instances 内容: 要连接Linux VM实例,必须要有一个SSH(Secure Shell)秘钥.无论何时连接一个LinuxVM实例(通 ...

  3. PaaS平台– Google App Engine的开源实现AppScale环境搭建

    搭建好开发环境介绍: 硬件平台:HP Z800 工作站  内存:24GB      硬盘:1TB 虚拟化环境:XenServer 6.2.0 VM1:Ubuntu 12.04 amd64 server ...

  4. [GCP] Goolge compute Engine

    Which of the following is a PAAS option for hosting web apps on GCP? App Engine standard or flexible ...

  5. Google App Engine, Python2.7的UnicodeDecodeError bug

    在跟Web Development,要在Google App Engine上写作业,出师不利,遇到以下bug: 2014-05-06 16:14:17 Running command: "[ ...

  6. [Ubuntu] Linux下使用google app engine,无法打开https网站的解决方法

    为什么这里写的是 google app engine?原因我就不解释了.步骤如下: 1)安装证书导入工具:$ sudo apt-get install libnss3-tools 2)导入CA.crt ...

  7. 介绍Google App Engine

    Google App Engine是一个网络应用托管服务(web application hosting service).所谓网络应用(By web application),我们的意思的可以通过网 ...

  8. Google App Engine Deployment 相关问题

    1.GAE instance上传成功之后可以正常运行的情况下.在Google账户中“关联的应用和网站”,撤销Google App Engine appcfg对Google账户的访问权限. 再次上传时, ...

  9. 基于google earth engine 云计算平台的全国水体变化研究

    第一个博客密码忘记了,今天才来开通第二个博客,时间已经过去两年了,三年的硕士生涯,真的是感慨良多,最有收获的一段时光,莫过于在实验室一个人敲着代码了,研三来得到中科院深圳先进院,在这里开始了新的研究生 ...

随机推荐

  1. IDEA中使用spring官方模板+@Controller

    视图层处理http请求用@Controller时,要配合模板的使用,模板类似javaweb中的jsp,但是模板的引擎用的是 thymeleaf ,但是并不推荐. 现在的开发模式都是前后端分离,做后端只 ...

  2. 《java提高数据导入效率优化思路》

    写在前边的实现需求: 1.总共10万个电话号码: 2.电话号码中有重复和错误: 3.查找出正确的号码(不重复): 一.优化前的实现方式: 1.先用正则过滤一遍10万条数据,找出错误的: 2.用List ...

  3. jquery的html()、text()、val()的区别和用法

    1.html() html()[无参]的使用方法是获取某元素内部的HTML代码,包括各种标签: 例:句1:<p>不知道大家高考的理综试卷里有没有关于科学家及其成就的选择题</p> ...

  4. android错误整理

    1.Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientat ...

  5. seattle language school & on-line degree

    http://www.kaplaninternational.com/ https://asuonline.asu.edu/online-degree-programs/ https://asuonl ...

  6. JavaScript Date对象方法详细总结

    Date 对象方法 方法 描述 Date() 返回当日的日期和时间. getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31). getDay() 从 Date 对象返回一周中的某 ...

  7. 859. Buddy Strings (wrong 4 times so many cases to test and consider) if else**

    Given two strings A and B of lowercase letters, return true if and only if we can swap two letters i ...

  8. [转载]互联网 免费的WebService接口

    股票行情数据 WEB 服务(支持香港.深圳.上海基金.债券和股票:支持多股票同时查询) Endpoint: http://webservice.webxml.com.cn/WebServices/St ...

  9. Android(java)学习笔记63:Clock App 编写报错01

    1. 首先我们二话不说直接先看报错内容如下: 07-12 08:25:03.572: E/dalvikvm(3602): native fork pid:0 done. 07-12 08:25:03. ...

  10. 富文本 文字图片点击,(TextView)

    textview上的富文本支持 文字,图片的点击事件 - (void)protocolIsSelect:(BOOL)select { NSMutableAttributedString *attrib ...