<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 26/11/15 15:55, 少合冯 wrote:<br>
    </div>
    <blockquote
cite="mid:CAGV=wNNfKj35Qfo4ZSaKAev4P8YypZfTvVtOCPMx60Cevsb+kw@mail.gmail.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <div dir="ltr">
        <div>Hi all, </div>
        We want to support xbzrle compress for live migration.
        <div><br>
        </div>
        <div>Now there are 3 options,</div>
        <div>1. add the enable flag in nova.conf. </div>
        <div>    such as<span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> </span><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)">a
            dedicated 'live_migration_compression=on|off" parameter in </span>nova.conf.</div>
        <div>    And nova simply enable it.</div>
        <div>    seems not good.</div>
        <div>2.  add a parameters in live migration API.</div>
        <div><br>
        </div>
        <div>
          <div>A new array compress will be added as optional, the
            json-schema as below::</div>
          <div><br>
          </div>
          <div>  {</div>
          <div>    'type': 'object',</div>
          <div>    'properties': {</div>
          <div>      'os-migrateLive': {</div>
          <div>        'type': 'object',</div>
          <div>        'properties': {</div>
          <div>          'block_migration': parameter_types.boolean,</div>
          <div>          'disk_over_commit': parameter_types.boolean,</div>
          <div>          'compress': {</div>
          <div>            'type': 'array',</div>
          <div>            'items': ["xbzrle"],</div>
          <div>          },</div>
          <div>          'host': host</div>
          <div>        },</div>
          <div>        'additionalProperties': False,</div>
          <div>      },</div>
          <div>    },</div>
          <div>    'required': ['os-migrateLive'],</div>
          <div>    'additionalProperties': False,</div>
          <div>  }</div>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>3. <span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> </span><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)">dynamically
            choose when to activate</span><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> xbzrle
            compress for live migration.</span></div>
        <div><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> 
               This is the best. </span></div>
        <div><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> 
              </span><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> xbzrle</span><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> really
            wants to be used if the network is not able to keep up with
            the dirtying rate of the guest RAM.</span></div>
        <div><span
style="color:rgb(0,0,0);font-family:sans-serif;background-color:rgb(229,236,249)"> 
               But how do I check the coming migration fit this
            situation?</span></div>
        <div>
          <p
style="margin-top:0px;margin-bottom:0px;padding-top:0.5em;padding-bottom:0.5em;color:rgb(0,0,0);font-family:sans-serif"><span class="" style="white-space:pre;font-family:'Lucida Console','Lucida Sans Typewriter',Monaco,monospace"> </span></p>
        </div>
        <div><br>
        </div>
        <div>REF:</div>
        <div><a moz-do-not-send="true"
            href="https://review.openstack.org/#/c/248465/">https://review.openstack.org/#/c/248465/</a><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>BR</div>
        <div>Shaohe Feng</div>
      </div>
    </blockquote>
    <br>
    Feels to me that this is too implementation dependent to be exposed
    in API.  I've seen elsewhere<br>
    discussion about removing the block migrate and disk over commit
    parameters, the idea being it<br>
    would figure out the type of migration for itself and over commit is
    not needed anymore.<br>
    <br>
    Seems to me the prevailing view is that we should get live migration
    to figure out the best setting for<br>
    itself where possible.  There was discussion of being able have a
    default policy setting that will allow<br>
    the operator to define balance between speed of migration and impact
    on the instance.  This could be<br>
    a global default for the cloud with overriding defaults per
    aggregate, image, tenant and instance as<br>
    well as the ability to vary the setting during the migration
    operation.<br>
    <br>
    Seems to me that items like compression should be set in
    configuration files based on what works best<br>
    given the cloud operator's environment?<br>
    <pre class="moz-signature" cols="72">-- 
Paul Carlton
Software Engineer
Cloud Services 
Hewlett Packard
BUK03:T242
Longdown Avenue
Stoke Gifford
Bristol BS34 8QZ

Mobile:    +44 (0)7768 994283
Email:    <a class="moz-txt-link-freetext" href="mailto:paul.carlton2@hpe.com">mailto:paul.carlton2@hpe.com</a>
Hewlett-Packard Limited registered Office: Cain Road, Bracknell, Berks RG12 1HN Registered No: 690597 England. 
The contents of this message and any attachments to it are confidential and may be legally privileged. If you have received this message in error, you should delete it from your system immediately and advise the sender. To any recipient of this message within HP, unless otherwise stated you should consider this message and attachments as "HP CONFIDENTIAL".

</pre>
  </body>
</html>