gpt4 book ai didi

deployment - 自动将 .Net Web App 部署到 Azure & SQL Azure & Azure Blob

转载 作者:行者123 更新时间:2023-12-04 02:25:27 25 4
gpt4 key购买 nike

果 shell :

我想要一些帮助/信息/资源 r.e.为我的 Web 应用程序设置 Team Build、M​​sBuild、TFS 2010 自动部署到 Azure(包括所有 DB 位)。

理想情况下,我希望有一个可以从 VS2010 团队资源管理器 UI“队列新构建”中触发的过程,然后只关注它的进度,让我可以做其他事情。深入研究任何问题的日志记录的选项,并知道我的过程是健壮、完整且完全非手动的,即:

  • 备份我所有的实时数据 (SQL Azure
    和 Azure Blob)
  • 部署任何数据库架构更改(包含在我的数据库项目中)
  • 将任何数据更改部署到我的核心数据(例如配置数据等 - 我在我的部署后脚本中)
  • 做事明智(例如,使用压缩部署包以节省时间和带宽)
  • 掩盖我愚蠢的背面(例如无缝回滚失败的更改)
  • 在部署(失败或成功)期间保持应用程序 100% 运行,例如 session 保持不变,数据丢失的可能性最小
  • 保留每个阶段进程进度的详细日志以解决任何问题
  • 保持一切应该受到源代码控制的东西......源代码控制

  • 背景/梦想/目标:

    在我的上一份 FT 工作中,我们为托管的 Web 应用程序设置了一个非常棒的自动化部署设置,使用 CC.Net(管理流程)、CCTray 和 CC.NET Web UI 来监视和控制代码生成(CodeSmith + NetTiers 模板)用于数据访问和实体)、MSBuild、VS Databse 项目、一些 .bat 脚本和一些方便的实用程序,如 PsExec 等,以帮助解决一些零碎的问题。
    我没有设置它,但有一些管理它的经验,处理问题等。

    这是(98% 的时间)部署的愉快体验。您需要确保 TFS 是最新的,双击 CCtray,右键单击一个项目,然后单击“强制构建”,坐下来观看绿色 => 黄色 => 绿色。

    伟大的 !!

    现在的情况 :

    我运行自己的 Micro ISV,我的主要项目是 Azure 上的应用程序(测试版)。
    我非常想复制我以前的那种部署体验 - 我什至在考虑从 Azure 迁移到专用服务器 - 因为我知道 我可以 在那里设置一个自动部署系统。

    我的主要停止点是 DB 位,这似乎是一场噩梦。也许我错过了一些可以完成这项工作的很棒的免费工具或库,我真的希望如此,但我也确实可以与有此经验的人一起为我指明正确的方向,以完成“最佳实践”解决方案所有的点点滴滴都整齐。

    我已经搜索了谷歌,阅读和阅读,花费数小时,但我似乎发现 atm 是一半的解决方案,不太适合我的项目和需求,基于我买不起的昂贵工具(接近 0 美元的预算),或者在我的头上很明显,有点难以理解和可怕。

    现在我不是系统管理员,但如果有足够的时间,我通常可以弄清楚我需要为这些事情做些什么。

    但是,我现在没有任何时间,我整个项目的成功实际上取决于我是否能够消除我目前忍受的可怕的 40 分钟以上的手动部署浪费。

    我希望能够获得一些用户反馈、发现错误或编码改进,然后自信地启动部署并使用其他东西进行破解。

    Azure 在当前状态下的额外开发问题(与专用服务器相反),以及目前来自 MS 的相当差的工具支持(我知道会有很多改进,但我现在需要一些东西) - 让我陷入困境一片海 “我不知道”和“我不确定”的 并且往往以一个大结尾:

    “我放弃了 + 手动部署将近一个小时 + 当我的部署天堂梦想再次破灭时我内心有点抽泣”:(

    但我知道那些比我更熟练、知识渊博和经验丰富的人已经为自己破解了这个问题。我似乎无法找到我确定在那里的信息。

    因此,如果有人对此有一些好的资源、提示、链接、评论或意见,请 我愿意 听到。

    我的设置的详细信息:

    应用程序在 Azure 中启动并运行(在 Beta 中 - 部分原因是没有自动部署设置),在生产槽中运行,我没有打扰暂存槽,因为子域/DNS/自动生成的一些问题Url 使这看起来很痛苦/不可行。

    Azure/应用程序:

    应用程序是

    1 网络角色
  • ASP.NET 4
  • MVC 2
  • 英孚 4
  • SQL Azure
  • Azure Blob 存储

  • 1 个工作角色 - 这会运行一些计划任务,并使用相同的数据库和 Blob 存储
  • SQL Azure
  • Azure Blob 存储

  • 2 个角色与 Azure 队列系统通信(或将很快完成)

    本地:

    数据中心 08 (DC) + Hyper V
    - 用于 TFS 2010 的虚拟机
    - 用于 Linux 防火墙的 VM

    开发箱 1(赢 7)
    - VS 2010/VS 08
    - SQL 08 R2/05

    开发笔记本电脑 2
    - 如上。

    我倾向于一直使用 一起运行这些(所以我永远不需要停下来等待任何事情)。很棒的免费工具 Synergy将键盘、鼠标、剪贴板绑定(bind)在一起。

    我读过的一些东西:

    我已经阅读了我发现的内容及其一些很棒的东西,所以我也在此处发布这些链接以帮助其他人在这些东西上苦苦挣扎,但似乎没有一个能奏效,或者我可能不明白也许我错过了什么?

    http://deploytoazure.codeplex.com/

    How do I manage and publish a database with my MVC2 application on Azure?

    How can I automate the "generate scripts" task in SQL Server Management Studio 2008?

    http://www.koltovich.com/blog/DeployingAzureProjectFromTFS2010BuildServer.aspx

    http://msdn.microsoft.com/en-us/library/ff803365.aspx

    http://msdn.microsoft.com/en-us/library/gg432988.aspx

    http://www.jimzimmerman.com/blog/2010/03/16/Deploying+An+Azure+Project+Using+TFS+2010.aspx

    http://archive.msdn.microsoft.com/azurecmdlets

    http://selfpacedazure.web.officelive.com/Documents/Windows%20Azure%20Platform%20Articles%20from%20the%20Trenches.pdf

    http://msdn.microsoft.com/en-us/library/gg651132.aspx

    http://social.technet.microsoft.com/wiki/contents/articles/overview-of-tools-to-use-with-sql-azure.aspx

    http://msdn.microsoft.com/en-us/library/ms178078.aspx

    http://blog.syntaxc4.net/post/2011/05/13/Continuous-Integration-in-the-Cloud.aspx

    http://blog.syntaxc4.net/post/2009/12/31/Synchronizing-a-Local-Database-with-the-Cloud-using-SQL-Azure-Sync-Framework.aspx

    http://social.technet.microsoft.com/wiki/contents/articles/overview-of-tools-to-use-with-sql-azure.aspx

    http://social.technet.microsoft.com/wiki/contents/articles/developing-and-deploying-with-sql-azure.aspx

    http://blogs.msdn.com/b/tomholl/archive/2011/02/23/using-msbuild-to-deploy-to-multiple-windows-azure-environments.aspx

    http://www.scarydba.com/2011/04/25/sql-azure-deployments/

    免责声明/论坛滥用最小化简介:

    就像我说的,我不是系统管理员,我不是脚本魔术师,也不是 CI 大师,我是一个头脑简单的网络开发人员,所以如果它对你来说很容易,或者如果我愚蠢地忽略了这一点,请不要客气,我并不意味着全部“你是否破坏了代码?”但是我基本上花了 6 个月的时间梦想着有一天很快有人会发布一个清晰简单的博客条目,其中包含解决我所有困境的“白痴指南”,一个小时后我再次进入部署天堂,但我仍在等待(或谷歌搜索很糟糕),这让我的小开发者心碎:(

    附言我保证,如果我在这里得到一个好的答案,我会为出色的 SO 社区尽自己的一份力,并至少花 8 小时寻找我可能能够提供帮助和回馈的问题。

    最佳答案

    伟大的。

    似乎新的 SQL Server(代号为 Denali),以及新的 SQL Server 开发工具(代号为 Juneau),特别是 DAC 项目的 2.0 版本,很可能填补了开发和部署到 SQL Azure 之间的空白。

    The new v2.0 of the DAC framework expands the set of supported objects to full support of SQL Azure schema objects and data types across all DAC services: extract, deploy, and upgrade



    来自 SQL Azure Import/Export

    另见:
  • Bob Beauchemins Blog Post建议现在在 SQL Azure 上升级架构
    新的 DACImportExportCli.exe 实用程序支持。
  • Other suggestions the new DACs 2.0 solve the major issues with upgrade deployments to SQL Azure

  • 看起来这一切都应该与当前设置并排运行。将检查它并在此处更新进度。杰出的。

    关于deployment - 自动将 .Net Web App 部署到 Azure & SQL Azure & Azure Blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6551432/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com