微服务架构地部署资料.pdfVIP

  • 2
  • 0
  • 约9.92千字
  • 约 11页
  • 2023-08-17 发布于山东
  • 举报
\\ 微服务架构的部署 本文从以下几个方面简要说明微服务架构项目的实践经验:架构选型、开发测试环境下的相关 工具支持、人员分工及开发部署流程、相关设计及注意事项。最后,将根据实践经验讨论提高 微服架构下的开发和运维效率的切实需求,进一步理清本项目所实现的容器服务管理平台的完 善性需求。精品文档放心下载 本项目是一个企业级的容器服务管理平台,该平台的功能是基于容器实现的应用运行环境 管理,以及应用开发阶段的持续集成和持续发布。简单的理解该平台的核心功能之一就是管理 复杂应用的开发和运维环境,提高微服务架构下的开发和运维效率。项目的开发背景如下:精品 文档放心下载 首先,该系统具有典型分布式应用系统特征: 该平台所运行的服务器配置不高,例如华为 RH1288 这类低配置服务器,允许硬件失败;谢谢阅读 系统平台要求可根据实际用户数的规模进行伸缩部署,保证硬件资源的合理利用;谢谢阅读 由于系统平台之上需要运行若干企业应用的开发和运行环境,可靠性是非常重要的,不允 许单点失效。感谢阅读 其次,本系统功能复杂,从架构的角度需要将系统分成多个层次和若干个子系统。不同的 层次、子系统根据具体情况需要采用不同的开发语言,由不同的开发小组完成。感谢阅读 第三,项目组成员由几个城市的异地团队协同开发,统一的开发环境和协同工具是必不可 少的。精品文档放心下载 针对上述项目背景的考虑,本项目选择基于微服务架构进行项目开发。精品文档放心下载 开发、测试、部署使用到的工具集 “工欲善其事、必先利其器”,借助适合的流程和相关工具集,才能提高微服务架构下的 应用开发效率。本项目利用 DevOPs 流程并选用一套相关工具集实现应用开发管理,提高开发、 测试、部署的效率。精品文档放心下载 代码库:本项目使用分布式代码库 Gitlab ,它的功能不限于代码仓库,还包括 reviews(代码审查), issue tracking(问题跟踪)、wiki 等功能,是代码管理和异地团队沟通、 协作工具的首选。谢谢阅读 Docker 镜像仓库、Docker:本项目用容器贯穿整个软件开发流程,以容器作为应用发布的载 体,应用的开发环境和测试发版环境都运行在 Docker 容器中。对于复杂的开发和运维环境管感谢阅 读 理 Docker 具有先天的优势,目前国内外的互联网公司有大多数都已经将 Docker 应用到了他 们的开发或者生产环境中了。谢谢阅读 \\ K8s :本项目采用 Kubernates 作为容器调度管理的基础环境,开发环境、测试环境的 Docker 容器都由 K8s 负责调度管理。精品文档放心下载 Jenkins:快速的部署发布离不开老牌持续集成明星 Jenkins,本项目通过 Jenkins 任务 构建代码、将应用打包成 Docker 镜像,最终发布到 K8s 环境中将容器运行起来。谢谢阅读 Shell 脚本:编写 Shell 脚本将项目打分支、发布应用等开发阶段的配置管理工作自动化, 降低运维门槛、提高配置管理和运维的效率。精品文档放心下载 WIKI:Gitlib 上的 WIKI 功能相对简陋,因此项目组选择 dokuwiki 作为异地团队协作和 沟通的工具,团队成员可以将设计文档、知识分享文档、公告信息等信息可以更新到 wiki 上, 便与协同开发。感谢阅读 禅道:为了便于开发计划、开发任务和 bug 关联起来,本项目使用禅道进行开发任务和 bug 管理。精品文档放心下载 人员分工及开发流程 微服务架构应用的开发、部署的复杂度都是远大于单体式应用的,靠运维人员手工的配置管 理显然是难于应付了。DevOps 主张以自动化任务处理方式实现软件交付及基础设施更新,可以说 是微服务架构应用开发和运维的必要条件,本项目采用 DevOps 的理念的开发流程进行开发。实 现部署和运维的自动化需要工具,同时 DevOps 强调软件开发者与其他 IT 员工及管理层间的协 作与沟通,因此明确的人员分工和开发流程是与工具同样重要的因素。通俗的说,就是有了工具, 大家要知道怎么使用工具,并且愿意使用工具才能真正达到提高研发效率的目的。感谢阅读 项目组的主要工作成员无非也是做开发、测试和系统管理三类工作,这里只说明与传统的 企业应用开发过程中三类人员所做的工作略有不同的工作内容。精品文档放心下载

文档评论(0)

1亿VIP精品文档

相关文档