现象:利用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. npm 包下载很慢的解决办法

    原因: 国内访问外网都很慢,甚至不能访问!安装Node时自带的npm地址默认是:http://registry.npmjs.org  三种方法: 1.通过config命令 npm config set ...

  2. fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤)(转)

    fiddler filters 使用(fiddler只显示指定请求,fiddler不显示指定请求,即filter请求过滤) Fiddler 有一个filters可以很好的帮助我们只显示我们关系的请求或 ...

  3. 工作流常使用API

    记录实际开发中常使用到的API CreateProcess 在工作流开始之前,创建一个新的工作流 Wf_engine.CreateProcess (itemtype in varchar2,    - ...

  4. Azure进阶攻略 | 数据库上云:零停机、自动化

    小明最近挺忙,刚刚在外地找了个新工作,正在忙着搬家.多年积攒的家当很多,根本不能潇洒地「说走就走」,于是他联系了搬家公司.专业的就是不一样,不费什么事,就把所有东西打包.运输.拆包到位了.抵达新城市的 ...

  5. Spring Cloud入门程序——注册服务提供者

    1.创建Spring Starter project 2.引入依赖 点击finish 3.创建启动类 package com.hello; import org.springframework.boo ...

  6. Python基础学习之语句和语法

    语句和语法 python语句中有一些基本规则和特殊字符: 井号键“#”表示之后的字符为python注释: 三引号(‘‘‘ ’’’)可以多行注释 换行“\n”是标准的行分隔符(通常一个语句一行): 反斜 ...

  7. Python 类的高级属性(可选)

    1.slots实例:限制类的实例有合法的属性集,只有__slots__属性列表中的属性才可能成为实例属性. 对象的实例通常没有一个属性字典,可以在__slots__列表中包含一个属性字典__dict_ ...

  8. cocos2d-x推断sprite点击

    我们经常须要推断用户的点击操作是否落于某个sprite之上,进而让这个sprite做出响应. 可是假设我们通过继承CCSprite类来实现自己的Sprite类的时候,产生的视图尺寸会充满屏幕.多个Sp ...

  9. 2017.9.24 基于HTML+JavaScript+CSS的开发案例&&JavaScript+CSS+DIV实现表格变色

    1.JavaScript+CSS+DIV实现下拉菜单 1.1 层标签<div> 基本语法: <div id="层编号" style="position: ...

  10. spring boot1.5.6 测试类

    package com.qutaoyao.demo.web; import com.qutaoyao.demo.web.controller.HelloController;import org.ju ...