Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure service fabric 应用程序/服务的手动回滚_Azure Service Fabric - Fatal编程技术网

Azure service fabric 应用程序/服务的手动回滚

Azure service fabric 应用程序/服务的手动回滚,azure-service-fabric,Azure Service Fabric,我有一个服务结构应用程序,它下面有一些服务。它们目前都是1.0.0版 我为2.0.0版的集群部署了一个更新。一切正常,部署成功。我注意到一个非常大,但在版本中。有没有办法手动回滚到1.0.0版?我唯一发现的是在升级过程中自动回滚。只需遵循相同的升级过程,但目标是1.0.0版本。“回滚”只是对旧版本的“升级”。只需遵循相同的升级过程,但以1.0.0版本为目标。“回滚”只是对旧版本的“升级”。马特的回答是正确的,但我会在这里详细介绍一下 关键在于了解应用程序部署过程中的不同步骤: Vis

我有一个服务结构应用程序,它下面有一些服务。它们目前都是1.0.0版


我为2.0.0版的集群部署了一个更新。一切正常,部署成功。我注意到一个非常大,但在版本中。有没有办法手动回滚到1.0.0版?我唯一发现的是在升级过程中自动回滚。

只需遵循相同的升级过程,但目标是1.0.0版本。“回滚”只是对旧版本的“升级”。

只需遵循相同的升级过程,但以1.0.0版本为目标。“回滚”只是对旧版本的“升级”。

马特的回答是正确的,但我会在这里详细介绍一下

关键在于了解应用程序部署过程中的不同步骤:

VisualStudio将这些操作汇总到单个“发布”和“升级”操作中,使其变得简单方便。但这些实际上是服务结构管理API中的单个命令(通过PowerShell、C#或HTTP)。让我们来看看这些步骤是什么:

复制: 这只需要将编译后的应用程序包复制到集群。没什么大不了的

寄存器: 这是你案件中重要的一步。Register基本上告诉集群它现在可以创建应用程序的实例。最重要的是,您可以注册同一应用程序的多个版本。此时,您的应用程序尚未运行

创建: 这是创建已注册应用程序的实例并开始运行的地方

在升级之前,让我们看看您的集群上有什么。第一次使用应用程序的1.0.0版(称为FooType)完成此部署过程时,您将只注册一种类型:

footype1.0.0

现在您可以升级了。您首先将带有新版本(2.0.0)的新应用程序包复制到集群中。然后,注册应用程序的新版本。现在已注册该类型的两个版本:

footype1.0.0

footype2.0.0

然后,当您运行升级命令时,Service Fabric会将您的1.0.0实例升级到2.0.0。如果需要在升级完成后回滚,只需使用相同的upgrade命令将应用程序实例从2.0.0“升级”回1.0.0即可。您可以这样做,因为1.0.0仍在集群中注册。请注意,版本号实际上对服务结构没有意义,只是它们是不同的字符串。如果需要,我可以使用“橙色”和“香蕉”作为我的版本字符串

所以这里的关键是,当您从VisualStudio进行“发布”以升级应用程序时,它会执行所有这些步骤:复制、注册和升级。在您的情况下,您实际上不想重新注册1.0.0,因为它已经在集群上注册了。您只需要再次发出升级命令


有关更详细的解释,请参见:

马特的回答是正确的,但我将在这里详细说明

关键在于了解应用程序部署过程中的不同步骤:

VisualStudio将这些操作汇总到单个“发布”和“升级”操作中,使其变得简单方便。但这些实际上是服务结构管理API中的单个命令(通过PowerShell、C#或HTTP)。让我们来看看这些步骤是什么:

复制: 这只需要将编译后的应用程序包复制到集群。没什么大不了的

寄存器: 这是你案件中重要的一步。Register基本上告诉集群它现在可以创建应用程序的实例。最重要的是,您可以注册同一应用程序的多个版本。此时,您的应用程序尚未运行

创建: 这是创建已注册应用程序的实例并开始运行的地方

在升级之前,让我们看看您的集群上有什么。第一次使用应用程序的1.0.0版(称为FooType)完成此部署过程时,您将只注册一种类型:

footype1.0.0

现在您可以升级了。您首先将带有新版本(2.0.0)的新应用程序包复制到集群中。然后,注册应用程序的新版本。现在已注册该类型的两个版本:

footype1.0.0

footype2.0.0

然后,当您运行升级命令时,Service Fabric会将您的1.0.0实例升级到2.0.0。如果需要在升级完成后回滚,只需使用相同的upgrade命令将应用程序实例从2.0.0“升级”回1.0.0即可。您可以这样做,因为1.0.0仍在集群中注册。请注意,版本号实际上对服务结构没有意义,只是它们是不同的字符串。如果需要,我可以使用“橙色”和“香蕉”作为我的版本字符串

所以这里的关键是,当您从VisualStudio进行“发布”以升级应用程序时,它会执行所有这些步骤:复制、注册和升级。在您的情况下,您实际上不想重新注册1.0.0,因为它已经在集群上注册了。您只需要再次发出升级命令


有关更详细的解释,请参阅:

失败,原因是“尝试升级应用程序,但尚未更新应用程序的版本。”