azure-docs icon indicating copy to clipboard operation
azure-docs copied to clipboard

How updates are handled

Open diegodct opened this issue 3 years ago • 3 comments

Could you clarify how updates works ? Is it just by adding a new Application Definition version higher than previous one ? Wil it push the update to all VMs that already contains previous version installed ?

Thank you.

[Enter feedback here]


Document Details

Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

diegodct avatar Dec 16 '21 14:12 diegodct

@diegodct Our SME will review this issue and get back soon.

SatishBoddu-MSFT avatar Dec 16 '21 20:12 SatishBoddu-MSFT

Hi @SatishBoddu-MSFT / @Karishma-Tiwari-MSFT,

It's been quite a while already and this hasn't been addressed yet. How do we push updates? I have been trying from the Portal and from the CLI and I cannot get a VM to install a newer version of an application.

I have version 0.1.5, I use the az vm application set to install version 0.2.0, and it does nothing at all. It just tells me that 0.1.5 is installed. Trying to do it from the Portal just ends up with a duplicate 0.1.5 app.

CamiloTerevinto avatar Aug 16 '22 11:08 CamiloTerevinto

Hello @CamiloTerevinto Thanks for the patience on this issue, we are looking into this.

SatishBoddu-MSFT avatar Aug 16 '22 13:08 SatishBoddu-MSFT

Hello @Karishma-Tiwari-MSFT Could you please confirm if we can address this issue? Please let me know if you need more info on this.

SatishBoddu-MSFT avatar Sep 07 '22 16:09 SatishBoddu-MSFT

@diegodct As per my understanding, the update command you provide for the VMSS during deployment will be used to update all the VMs in that VMSS. If you do not provide an update command, then current version will be removed and the newer version will be installed.

@ericd-mst-github / @cynthn Can you please help confirm on the customer questions above? Is there a documentation they can use that explains the VM application update process in detail (using CLI, Portal, including the update commands in the deployment, how the versioning is defined). Thanks for your help.

Karishma-Tiwari-MSFT avatar Sep 07 '22 19:09 Karishma-Tiwari-MSFT

@Karishma-Tiwari-MSFT I am confirming with engineering on the customer questions above and will update the documentation.

We have recently modified the wording the update process on a high level here. Once I get more confirmation on the updating details, I will update this section in our overview.

ericd-mst-github avatar Sep 07 '22 19:09 ericd-mst-github

Hey @Karishma-Tiwari-MSFT / @ericd-mst-github, thanks for jumping in.

I think you're missing the point of my comment, however. My question is how do we push the updates? How do we make them happen? The portal and the CLI both ignore my attempts to update. It doesn't use the command I set under Update Command, because it doesn't even start performing an update.

CamiloTerevinto avatar Sep 07 '22 19:09 CamiloTerevinto

Hi @CamiloTerevinto, I have received a response from engineering in regard to updating VM applications.

You will have to update the application profile of the VMs with the new version. In the future, we'll support this as well through policy and auto-update but for now this needs to be done through a new goal state.

Thank you for your feedback and please let us know if further clarification is needed.

ericd-mst-github avatar Sep 08 '22 17:09 ericd-mst-github

Hi @ericd-mst-github,

Thanks for that! It would be great if you could comment a bit more on what will be required on my end to get this working. I'm trying to build an Azure DevOps Pipeline to update a VM Application in a VMSS.

CamiloTerevinto avatar Sep 09 '22 07:09 CamiloTerevinto

No worries! I checked with our support team on recent and similar inquiries since the VM Apps went GA.

So essentially, you'll need to setup/install the new app version or run the deployment of the new app version on any VM or VMSS instance and it should update if that exists on the current iteration, or it will remove the old version and install the new one.

This is simply deploying the application again as if you were deploying the first time. The difference is that if it is already there it should use the update command that you provided on the first install of the app. If that update command doesn't exist, it will remove the old version and install the new version using the remove/install commands.

ericd-mst-github avatar Sep 09 '22 14:09 ericd-mst-github

Thanks @ericd-mst-github! Any idea when this will be released? This still doesn't work as of right now.

For example: I have version 0.1.0, I went ahead and added 0.1.1 and I end up with this:

image

I look at the VM and version 0.1.1 is not even downloaded to the VM.

CamiloTerevinto avatar Sep 13 '22 11:09 CamiloTerevinto

No worries. I will check with our engineering on the timeline.

If I read the screenshot correctly, did the added version 0.1.1 appear as '0.1.0' as well? I seem to see it listed twice as both 0.1.0.

ericd-mst-github avatar Sep 13 '22 12:09 ericd-mst-github

Yes, that's exactly it :) I end up with 2 "0.1.0" versions. Although the Resource Manager completely ignores the second "installation", it's just a glitch in the Azure Portal (removing one of them removes both)

CamiloTerevinto avatar Sep 13 '22 12:09 CamiloTerevinto

Gotcha. I'll check with engineering on this odd duplicate behavior as well and will keep you posted.

Thank you for your patience!

ericd-mst-github avatar Sep 13 '22 13:09 ericd-mst-github

Hi @CamiloTerevinto

Engineering responded thinking this may be a portal bug. Can you see if you can submit a support case? We are looking to have engineering take a look in the backend.

Once you have created a case, please let me know the case number and I can escalate further.

ericd-mst-github avatar Sep 13 '22 16:09 ericd-mst-github

Hey @ericd-mst-github,

Doing this through the Azure CLI results in absolutely nothing happening (it returns version "0.1.0" as if I had asked for that to be installed), so it cannot just be a Portal thing. I'll ask my IT team to create a support ticket tomorrow :)

CamiloTerevinto avatar Sep 13 '22 18:09 CamiloTerevinto

Hi @ericd-mst-github,

I'm still waiting for my IT department to create a ticket. How do you want me to send it over to you when I have it? Also, more information for you: This doesn't work even for VMSS. Look at the example below please.

Let's say I have an app:

$app = az sig gallery-application version show --application-name ** --gallery-name ** --resource-group ** -n 0.1.9 | ConvertFrom-Json

$app.id

The above clearly ends in applications/**/versions/0.1.9. Now, I update a VMSS to use the app above like this:

az vmss application set -g ** --name ** --app-version-ids $app.id --treat-deployment-as-failure true

Notice how $app.id is the same as above please. When I run that, I see that the VM in the VMSS gets "updated" (the VMSS goes into rolling update mode) and, after waiting for a few minutes, I get this back:

    "applicationProfile": {
      "galleryApplications": [
        {
          "configurationReference": null,
          "enableAutomaticUpgrade": false,
          "manuallyManaged": false,
          "order": null,
          "packageReferenceId": "/subscriptions/**/resourceGroups/**/providers/Microsoft.Compute/galleries/**/applications/**/versions/0.1.8",
          "tags": null,
          "treatFailureAsDeploymentFailure": true
        }
      ]
    },

Version 0.1.8 is what was already installed before running the update command. If I look at the VM, I see that nothing happened. Version 0.1.9 was not downloaded, but also absolutely nothing happened with version 0.1.8 - the files remain the same, the logs remain the same.

I hope this makes it easier to hunt down the problem, as uninstalling and re-installing the app is quite slow and really defeats the purpose of this feature 👎

CamiloTerevinto avatar Sep 16 '22 09:09 CamiloTerevinto

Hi, thank you for the additional information. I have sent this to engineering and also let them know that the CLI method of updating does not appear to be working as well, along with the recent VMSS mention.

ericd-mst-github avatar Sep 16 '22 13:09 ericd-mst-github

@CamiloTerevinto, engineering has responded and noted that this is definitely an issue they'd like to take a look in your environment. Once we have the case number confirmed, we will escalate and get to the bottom of this.

ericd-mst-github avatar Sep 16 '22 16:09 ericd-mst-github

Hi @ericd-mst-github, sorry for the delay, here's the case number: 2209160040003137

CamiloTerevinto avatar Sep 20 '22 08:09 CamiloTerevinto

No worries and thanks! I'll get this escalated and will keep you posted.

We have had some other customers report the same behaviors noted in your findings and engineering is currently looking into this.

ericd-mst-github avatar Sep 20 '22 12:09 ericd-mst-github

@CamiloTerevinto Were you able to get a resolution on this case?

Karishma-Tiwari-MSFT avatar Oct 13 '22 01:10 Karishma-Tiwari-MSFT

Hey @Karishma-Tiwari-MSFT, I have not heard anything so far from the ticket that was created for this

CamiloTerevinto avatar Oct 13 '22 08:10 CamiloTerevinto

Hi @CamiloTerevinto, I apologize for the day. can you try another update for your VM App? I checked with engineering and there should have been a fix already implemented.

ericd-mst-github avatar Oct 18 '22 19:10 ericd-mst-github

Hey @ericd-mst-github - sorry I'm on holidays and I won't be able to test this for a couple more weeks. Feel free to close this if it's resolved and I'll comment if I see any problems :)

CamiloTerevinto avatar Oct 21 '22 18:10 CamiloTerevinto

No worries, thanks for letting us know and I'll go ahead and close. Enjoy your holidays!

#please-close

ericd-mst-github avatar Oct 21 '22 18:10 ericd-mst-github

Hey @ericd-mst-github / @Karishma-Tiwari-MSFT:

Sorry for the delay in getting back to you. I only now had time to update the CD pipeline and the az vmss application set now actually replaces the previous version with the new one. I've checked the VM and I see the new version being downloaded and the new version gets installed in ~2 minutes. I wonder why the rolling update takes like ~2-3 more minutes before it's marked as completed (single VM in a VMSS), but this is far faster than the previous process (5 minutes versus 14!).

Thanks and thanks to the team too :)

CamiloTerevinto avatar Nov 11 '22 10:11 CamiloTerevinto

No problem, and glad to hear your speedy success! Have a great rest of your week :)

ericd-mst-github avatar Nov 11 '22 15:11 ericd-mst-github