现象:利用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. [转]一次使用Eclipse Memory Analyzer分析Tomcat内存溢出

    一次使用Eclipse Memory Analyzer分析Tomcat内存溢出 前言 在平时开发.测试过程中.甚至是生产环境中,有时会遇到OutOfMemoryError,Java堆溢出了,这表明程序 ...

  2. 当你的域名是数字开头时如何命名java包路径

    例如:域名是1001y.net 理想的包路径是net.1001y,但由于java命名规范的问题,首字母不能为数字,这时我们只有两种选择: 1,net.$1001y 使用$符号作为首字母. 2,net. ...

  3. springboot项目搭建:结构和入门程序

    Spring Boot 推荐目录结构 代码层的结构 根目录:com.springboot 1.工程启动类(ApplicationServer.java)置于com.springboot.build包下 ...

  4. yii网站未来改进

    1.去掉debug模式 2.下载文件复选 3.文章发布.评论.赞.标签等系统

  5. .net 控制器调用外部链接传参方法

    public class RequestHelper { /// <summary> /// 发起post请求 /// </summary> /// <typeparam ...

  6. JavaScript 事件兼容性写法

    1.以下是JavaScript事件兼容性写法,使用者可以随意使用,兼容所有浏览器.包括IE6(亲测) <!DOCTYPE html> <html> <head> & ...

  7. innerHTML动态添加html代码和脚本兼容性问题处理方法

    给某个元素的innerHTML赋值,并使得值中的js代码有效(兼容多个浏览器) 症状:给某个元素的 innerHTML 设置值时,如果提供的 HTML 代码中包含js脚本,很多时候这些脚本无效,或者在 ...

  8. IOS 4个容易混淆的属性(textAligment contentVerticalAlignment contentHorizontalAlignment contentMode)

    四个容易混淆的属性:1. textAligment : 文字的水平方向的对齐方式1> 取值NSTextAlignmentLeft      = 0,    // 左对齐NSTextAlignme ...

  9. IOS中 copy ,strong ,weak ,assign使用区别

      .@property属性的用法 * weak(assign) :  代理\UI控件 * strong(retain) : 数组.模型)其他对象(除代理\UI控件\字符串以外的对象) * copy ...

  10. 火车进站输出路径(HDU1022)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1022 解题报告: 思路: 就是维护好这个栈,只要它不是空,并且头部和ans相同,就一直出栈,直到不满足 ...