Choerodon猪齿鱼的DevOps实践
文章平均质量分 84
Choerodon猪齿鱼的开源社区分享,欢迎大家加入我们,共同为企业数字化服务打造一个开放的生态平台。
BuildRun技术团队
这个作者很懒,什么都没留下…
展开
-
从0到1使用Kubernetes系列(八):安全
Kubernetes 的安全是一个相当广泛的主题,涉及很多高度相关的内容。和探讨大部分安全性相关的问题一样,首先需要考虑威胁模型——谁可能攻击你的系统,以及他们如何做到这一点。这可以帮你确定安全工作的优先级。对于大多数 Kubernetes 应用有三类主要的攻击者:外部攻击者:当你在内部或云上部署应用时,你可能面临来自集群外的攻击。这类攻击者没有系统权限,所以会专注于公开的服务,会尝试获取访问...原创 2019-10-16 09:49:25 · 612 阅读 · 0 评论 -
使用DevOps强化敏捷(上)
作者 | Christopher Lee&Sean D. Mack译者 | 温馨如果您曾经对敏捷或DevOps的历史、结构、原则或好处有过疑问,那么您将在这篇文里找到答案,本文被拆分两篇,上篇主要介绍敏捷和DevOps的历史、差异和好处。敏捷和DevOps从表面上看可能是不同的,但如果关注他们的目标,会发现它们其实非常相似。两者的目标都是更快地为客户创造价值并更快地改变市场需...翻译 2019-08-13 18:16:03 · 358 阅读 · 0 评论 -
Prometheus-operator 介绍和配置解析
随着云原生概念盛行,对于容器、服务、节点以及集群的监控变得越来越重要。Prometheus 作为 Kubernetes 监控的事实标准,有着强大的功能和良好的生态。但是它不支持分布式,不支持数据导入、导出,不支持通过 API 修改监控目标和报警规则,所以在使用它时,通常需要写脚本和代码来简化操作。Prometheus Operator 为监控 Kubernetes service、deployme...转载 2019-08-06 09:28:17 · 4634 阅读 · 0 评论 -
GitLab CI介绍——入门篇
本文将会对Gitlab CI进行简要介绍,包括Gitlab Runner,Gitlab CI中的相关概念以及.gitlab-ci.yml的常用配置。那么,GitLab CI 是什么?GitLab CI 是GitLab内置的进行持续集成的工具,只需要在仓库根目录下创建.gitlab-ci.yml 文件,并配置GitLab Runner;每次提交的时候,gitlab将自动识别到.gitlab-ci...原创 2019-07-30 09:25:10 · 38980 阅读 · 0 评论 -
功能升级 | Choerodon猪齿鱼“新”知识管理介绍
Choerodon猪齿鱼知识管理是一种内容管理工具,具有创建、编辑、导航、链接、搜索等功能。它为企业、IT团队提供方便的项目协作平台和强大的项目内容管理平台,集中式管理产品相关内容等,例如需求收集、架构设计、功能设计、开发规范、命名规范、会议记录、计划安排等。在0.17版本中,猪齿鱼上线了新的知识管理,作为项目团队内容管理功能,并在0.18做了升级和功能增强,而原有的承载知识管理功能的Wiki管...转载 2019-07-30 09:43:22 · 396 阅读 · 0 评论 -
Choerodon前端环境变量方案
配置React应用程序的方法有很多,本文中将向大家展示Choerodon平台前端的新环境变量方案,该方案可以实现在运行时配置,所以不需要针对每个环境都进行构建。需求希望能够将React应用程序使用Docker运行,只构建一次,能够在任何地方运行,并且希望在运行时提供重新配置容器的时机,允许在docker-compose文件内进行变量配置。例如:version: "3.2"services...原创 2019-07-16 10:36:08 · 2080 阅读 · 0 评论 -
从0开始使用Kubernets系列(七):网络
本文是从 0 到 1 使用 Kubernetes 系列第七篇,上一篇《从0到1使用Kubernetes系列(六):数据持久化实战》 介绍了Kubenetes中的几种常用储存类型,本文将介绍K8S网络相关的内容。不同宿主机上运行的容器并不能通过 IP 相互访问,那么 Kubernetes 是如何实现不同节点上 Pod 的互通?Pod 有生命周期,它的 IP 会随着动态的创建和销毁而动态变化,Kub...原创 2019-07-08 13:52:59 · 333 阅读 · 0 评论 -
开源多云技术平台——Choerodon猪齿鱼发布0.18版本
Choerodon猪齿鱼开源多云技术平台,是基于开源技术Kubernetes,Istio,knative,Gitlab,Spring Cloud来实现本地和云端环境的集成,实现企业多云/混合云应用环境的一致性。平台通过提供精益敏捷、持续交付、容器环境、微服务、DevOps等能力来帮助组织团队来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。2019年7月1日,Choerodon猪...原创 2019-07-02 15:15:00 · 404 阅读 · 0 评论 -
Choerodon如何运行自动化测试任务
在上一篇关于自动化测试的文章 解密敏捷自动化测试 中,为大家介绍了敏捷自动化测试,以及Choerodon猪齿鱼自动化测试的落地。在这篇文章中,给大家介绍一下Choerodon自动化测试的技术方案的设计思路以及实现。为什么自动化测试需新建测试应用自动化测试的本质是使用一些测试框架开发测试代码,运行测试代码即对已有的业务应用进行相应的测试。对于一个项目来说,测试应用与普通的业务应用应该是同等重要的...原创 2019-06-18 10:02:39 · 344 阅读 · 0 评论 -
Choerodon猪齿鱼的数据初始化设计解析
Choerodon猪齿鱼作为一个微服务框架需要解决微服务数据初始化本身具有的问题和复杂性,同时也需要满足框架本身特有的数据初始化需求,下面为大家介绍一下这方面的设计思想和实现。微服务的数据初始化难题先来看一下在微服务的数据初始化中常见的几个问题。▍1.1 表结构的初始化和可平滑升级表结构的定义在数据库初始化中是重中之重,它涉及到整个服务运行和利用数据库实现功能的方式,一般来说表结构定义和升...原创 2019-06-10 20:24:48 · 551 阅读 · 0 评论 -
持续集成与持续交付之间的联系和区别
作者 | Rebecca Pruess编译 | 毛智伟随着DevOps理念的普及与扩散,大家经常会看到持续集成(Continuous Integration)与持续交付(Continuous Delivery)这样的字眼,而怎样使用与选择这些方法成了大多数IT团队必须面对的问题。在讨论更加深入地讨论问题之前,首先需要清楚这两者之间的主要区别是什么,以及用什么方法可以更好改善工作流程,从而在...原创 2019-05-28 09:39:48 · 4431 阅读 · 0 评论 -
Choerodon如何进行日志收集与告警
作者:董文启应用程序日志是由软件应用程序记录的事件文件, 它一般包含错误,信息事件和警告。一个良好的日志系统有助于快速发现问题,定位问题,同时也为业务分析起到一定的作用。传统ELK系统ELK系统是目前比较流行的日志解决方案,由Elasticsearch、Logstash、Kibana组成,目前三个组件都归属于Elastic。Elasticsearch是一个基于Lucene库的搜索引擎。它提...原创 2019-05-20 18:03:15 · 524 阅读 · 0 评论 -
如何使用Choerodon LDAP以及配置定时任务
作者:李楷文Choerodon作为多云管理平台,可以通过LDAP的方式对接企业已有的应用,通过同步用户到Choerodon平台,使企业用户无需注册就可使用LDAP的账户和密码登录到Choerodon平台,实现 DevOps 开发运维一体化和敏捷管理的等目标,极大地降低了企业用户迁移负担。本文将从LDAP的概念,如何使用Choerodon LDAP以及配置定时任务三个方面进行介绍。什么是LD...原创 2019-05-14 09:22:51 · 443 阅读 · 0 评论 -
Choerodon猪齿鱼团队敏捷项目管理实践应用
随着Choerodon猪齿鱼的不断迭代更新,它已经被越来越多的用户开始在项目管理和开发中使用,成为了开发团队的一部分。这个过程中,有很多用户向团队提出一些关于敏捷管理上的问题,或者想了解猪齿鱼敏捷团队是怎么来进行项目管理的。今天就来聊一聊这方面,以下内容请使用敏捷管理的项目经理或产品经理务必仔细阅读。本文将以敏捷管理这个子产品团队为例,由敏捷管理的产品负责人亲自讲述,希望能给大家提供一些参考...原创 2019-04-30 10:37:26 · 542 阅读 · 0 评论 -
Kanban VS Scrum:哪个是最好的敏捷项目管理框架
“我们使用敏捷开发。”在与软件开发团队交流时,你会听到很多这样的说法。根据统计,2018年全球约有90%的开发人员在使用敏捷开发。Choerodon猪齿鱼团队也是其中之一。但是,敏捷并不统一。作为组织工作流程的一般方法,敏捷软件开发设定了共同的价值观和原则,旨在精简开发流程,敏捷有效地响应变化。这些价值观和原则可以在敏捷宣言中找到,当中就提供了一些建立开发流程的建议。在实际应用中,几种软件开发...原创 2019-04-23 14:01:25 · 1377 阅读 · 0 评论 -
从0到1使用Kubernetes系列(六):数据持久化实战
本文是从0到1使用Kubernetes系列第六篇,上一篇《从0到1使用Kubernetes系列(五):Kubernetes Scheduling》介绍了Kubernetes调度器如何进行资源调度,本文将为大家介绍几种常用储存类型。默认情况下Pod挂载在磁盘上的文件生命周期与Pod生命周期是一致的,若Pod出现崩溃的情况,kubelet 将会重启它,这将会造成Pod中的文件将丢失,因为Pod会以镜...原创 2019-04-10 10:18:41 · 255 阅读 · 0 评论 -
Choerodon 的微服务之路(五):微服务的“健康保障”
本文是Choerodon 的微服务系列推文第五篇,上一篇《Choerodon 的微服务之路(四):深入理解微服务配置中心》介绍了配置中心在微服务架构中的作用,本篇将介绍微服务监控的重要性和必要性。▌文章的主要内容包括:为什么要监控开发者需要监控哪些猪齿鱼的解决方案在前面的几期的文章里,介绍了在 Choerodon 的微服务架构中,系统被拆分成多个有着独立部署能力的业务服务,每个服务可...原创 2019-03-25 21:16:04 · 453 阅读 · 0 评论 -
Choerodon猪齿鱼实践之应用生命周期管理
Choerodon平台中的开发和部署都是围绕应用来进行的,那Choerodon平台中的应用有什么样的特性?又是怎样来进行管理的呢?本文旨在深入地介绍Choerodon平台中应用的功能特性及其生命周期的管理。微服务架构中应用的特征在谈起Choerodon平台中的应用时,就不得不提微服务。正是因为微服务的出现,之前的单体应用架构带来的问题才得以解决,具体问题如下:(1)耦合程度随时间推移而逐渐提...原创 2019-07-08 13:54:08 · 222 阅读 · 0 评论 -
解密敏捷自动化测试
团队敏捷化转型过后,该如何进行项目的测试以及验收?敏捷测试与传统测试有什么不同?自动化测试在其中又担任着怎样的角色?本文将给大家介绍敏捷自动化测试,以及Choerodon猪齿鱼自动化测试的落地。敏捷测试的定义和意义在传统开发模式中,开发人员和测试人员往往各司其职:开发人员了解到产品需求后开始编写代码,测试人员拿到产品需求说明书后开始编写测试用例,等到开发完成,再开始对照测试用例进行人工测试工作...原创 2019-03-12 09:25:58 · 377 阅读 · 0 评论 -
猪齿鱼团队如何使用敏捷Kanban方法提升交付效率
在敏捷开发中,大家经常会提到看板(kanban)这个名词,故名思义就是可视化的板。看板作为一个敏捷方法,与其他方法相比具有更强的可实施性,也更易让团队理解和执行。下面将结合猪齿鱼团队的敏捷故事,给大家讲述下如何来使用看板,以及Choerodon猪齿鱼敏捷管理又是怎么辅助项目成员落地看板方法的。第一原则:可视化Choerodon猪齿鱼还没有发布第一个版本时,猪齿鱼的总设计师已经非常确定团队一定...原创 2019-03-05 09:35:32 · 690 阅读 · 0 评论 -
React 世界的一等公民 - 组件
作者:王柯Choerodon猪齿鱼平台使用 React 作为前端应用框架,对前端的展示做了一定的封装和处理,并配套提供了前端组件库Choerodon UI。结合实际业务情况,不断对组件优化设计,提高代码质量。本文将结合Choerodon猪齿鱼平台使用案例,简单说明组件的分类、设计原则和设计模式,帮助开发者在不同场景下选择正确的设计和方案编写组件(示例代码基于ES6/ES7的语法,适于有一定前端...原创 2019-02-19 09:18:56 · 375 阅读 · 0 评论 -
带你走进Choerodon猪齿鱼的知识管理
知识管理是Choerodon猪齿鱼的一个重要功能,支持在线自定义文档编辑、成员协助共享等功能,帮助团队集中管理创意、需求和设计。本文将会和大家聊一聊知识管理对敏捷团队的重要性,介绍Choerodon选用XWiki作为开发基础的原因,以及开发团队如何设计Choerodon知识管理,最后会简单介绍一下Choerodon知识管理的一些主要功能和特色。敏捷团队的知识管理对于软件开发团队来说,每个成员都...原创 2019-07-08 13:54:45 · 262 阅读 · 0 评论 -
从0到1使用Kubernetes系列(五):Kubernetes Scheduling
Kubernetes作为一个容器编排调度引擎,资源调度是它的最基本也是最重要的功能。当开发者部署一个应用时它运行在哪个节点?这个节点满不满足开发的运行要求?Kubernetes又是如何进行资源调度的呢?▌通过本文可了解到以下信息:资源请求及限制对pod调度的影响查看调度事件events了解label选择器对pod调度的影响了解节点亲和性和Pod亲和性对调度的影响不使用调度器,手动调度...原创 2019-01-15 09:29:32 · 718 阅读 · 0 评论 -
Choerodon猪齿鱼 Agent——基于GitOps的云原生持续交付模型
本文将介绍Choerodon平台持续交付部署流水线的一个核心组件——Choerodon Agent。▌文章的主要内容包括:概述实现分析具体设计建立连接初始化信息Command/Response模式实时状态反馈Helm OperatorGitOps状态同步与修复Log和Exec长连接总结概述Choerodon Agent是支撑Choerodon平台持续交付部署流...原创 2019-01-08 14:04:12 · 712 阅读 · 0 评论 -
Choerodon 的微服务之路(四):深入理解微服务配置中心
本文是Choerodon 的微服务系列推文第四篇,上一篇《Choerodon的微服务之路(三):服务注册与发现》介绍了Choerodon的注册中心,并通过代码的形式介绍了 在Choerodon微服务框架中是如何来实现服务注册和发现的,本篇将介绍配置中心在微服务架构中的作用。▌文章的主要内容包括:配置是什么为什么需要微服务配置中心Choerodon的配置中心在早期单体应用的时代,监控等...原创 2019-01-02 14:31:55 · 224 阅读 · 0 评论 -
Choerodon猪齿鱼敏捷管理实践(三):敏捷会议
本文是 Choerodon 猪齿鱼敏捷管理系列文章的第三篇。在上一篇文章《Choerodon猪齿鱼敏捷管理实践(二)——冲刺管理》中介绍了在敏捷开发中如何使用Choerodon猪齿鱼来管理需求和冲刺。当进行敏捷开发时,与之相关的Scrum会议穿插在整个迭代开发中,本篇将重点介绍Choerodon猪齿鱼敏捷管理对各种会议是如何进行管理支持的。文章主要内容:Choerodon的需求和冲刺管理回顾...原创 2018-12-17 14:08:02 · 264 阅读 · 0 评论 -
Choerodon 的微服务之路(三):服务注册与发现
本文是 Choerodon 的微服务之路系列推文第三篇。在上一篇《Choerodon的微服务之路(二):微服务网关》中,介绍了Choerodon 在搭建微服务网关时考虑的一些问题以及两种常见的微服务网关模式,并且通过代码介绍了Choerodon 的网关是如何实现的。本篇文章将介绍Choerodon 的注册中心,通过代码的形式介绍 Choerodon 微服务框架中,是如何来实现服务注册和发现的。...原创 2018-11-20 11:39:08 · 243 阅读 · 0 评论 -
Choerodon猪齿鱼敏捷管理实践(二)——冲刺管理
上篇文章《Choerodon猪齿鱼敏捷管理实践(一)——需求管理》中介绍了在敏捷管理中如何获取、规划和管理需求。这篇文章将介绍说明收集好需求后接着做什么,帮助大家掌握敏捷管理中很重要的一部分——冲刺管理,也可以叫做迭代管理。▌主要内容:规划冲刺计划会议讨论故事拆分任务承担责任估算和确认开启冲刺专注于质量减少在制品频繁交付根据交付速率来平衡任务的请求量优先级排序...原创 2018-11-20 11:30:45 · 494 阅读 · 0 评论 -
从0到1使用Kubernetes系列(三)——使用Ansible安装Kubernetes集群
上一篇文章《从0到1使用Kubernetes系列(二):安装工具介绍》中,说到了Ansible的功能以及使用Ansible进行集群部署的优势,接下来将在本文中介绍如何通过Virtualbox + Vagrant启动CentOS虚拟机,并且使用ansible脚本在虚拟机中搭建kubernetes集群以及现有集群如何添加新的节点。启动虚拟机首先,通过下面命令克隆并进入项目:git clone h...原创 2018-11-20 11:29:17 · 669 阅读 · 0 评论 -
Choerodon 的微服务之路(二):微服务网关
本文是 Choerodon 猪齿鱼微服务系列文章的第二篇。在《Choerodon的微服务之路(一):如何迈出关键的第一步》中,我们了解到在微服务架构中,一个完整的单体应用被拆分成多个有着独立部署能力的业务服务,每个服务可以使用不同的编程语言,不同的存储介质,来保持最低限度的集中式管理。本篇将介绍Choerodon在搭建微服务网关时考虑的一些问题以及两种常见的微服务网关。▌文章的主要内容包括:...原创 2018-11-20 10:11:56 · 522 阅读 · 2 评论 -
Choerodon猪齿鱼敏捷管理实践(一):需求管理
本文是敏捷管理系列的第一篇,将介绍敏捷中重要的需求管理,涉及需求的获取和管理,以及后续规划问题。▌主要内容:瀑布流开发模式弊端敏捷需求管理如何获取需求如何管理需求史诗用户故事如何编写用户故事如何规划需求——故事地图总结瀑布流开发模式弊端在介绍敏捷之前先介绍一下瀑布流模式,这是产品开发中非常常见的一种管理模式,它以文档为驱动,在整个开发过程中,开发人员根据需求...原创 2018-11-20 10:10:53 · 494 阅读 · 0 评论 -
从0到1使用Kubernetes系列(二)——安装工具介绍
本文是Kubernetes系列的第二篇,将介绍使用Kubeadm+Ansible搭建Kubernetes集群所需要的工具及其作用。主要内容包括:Kubeadm Kubeadm是什么 Kubeadm的目标 Kubeadm的子命令 Kubeadm的安装 CFSSL CFSSL的安装 Ansible Ansible是什么 Ansible的基本架构 Ansib...原创 2018-09-17 16:27:01 · 521 阅读 · 0 评论 -
Choerodon的微服务之路(一):如何迈出关键的第一步
本文是 Choerodon 猪齿鱼微服务系列文章的第一篇,在文章中将介绍当前比较流行的两种微服务架构,即 Dubbo 和 Spring Cloud,同时将总结 Choerodon猪齿鱼在选择使用微服务架构中的一些实践经验,希望能够给大家一些借鉴和启迪。▌文章的主要内容包括:什么是微服务架构 Dubbo 的诞生背景 Spring Cloud 应运而生 Kubernetes + Dock...原创 2018-09-10 17:05:31 · 562 阅读 · 0 评论 -
从0到1使用Kubernetes系列——Kubernetes入门
本文是Kubernetes系列推文第一篇,将介绍Docker和Kubernetes两大热门开源产品,主要内容包括:基本概念、基础组件、Kubernetes架构。基本概念01Docker是什么Docker 起初是 dotCloud 公司创始人 Solomon Hykes 在法国的时候发起的一项公司内部项目,Docker是基于 dotCloud 公司多年云服务技术的一次革新,在 2013...原创 2018-08-29 19:46:13 · 999 阅读 · 0 评论 -
GitOps | 一种云原生的持续交付模型
在此之前您可能听说过“GitOps”,但并不知道它到底是什么,除了GitOps,您可能还听说过的DevOps,或者AIOps,GOP的等,是的,现在是“行动”盛行的时代。GitOps是一种实现持续交付的模型,它的核心思想是将应用系统的声明性基础架构和应用程序存放在的Git的版本控制库中.Choerodon猪齿鱼在构建持续交付流水线时参考了GitOps,并进行了实践,俗话说“兵马未动,理论先行”...原创 2018-08-28 10:19:07 · 5871 阅读 · 0 评论 -
视角 | 微服务的数据一致性解决方案
众所周知,微服务架构解决了很多问题,通过分解复杂的单体式应用,在功能不变的情况下,使应用被分解为多个可管理的服务,为采用单体式编码方式很难实现的功能提供了模块化的解决方案。同时,每个微服务独立部署、独立扩展,使得持续化集成成为可能。由此,单个服务很容易开发、理解和维护。微服务架构为开发带来了诸多好处的同时,也引发了很多问题。比如服务运维变得更复杂,服务之间的依赖关系更复杂,数据一致性难以保证。...原创 2018-08-28 10:45:01 · 1194 阅读 · 0 评论 -
持续交付中的分支管理与版本控制
现在,越来越多的项目使用Git作为版本控制的工具,通过Git来进行分支和Tag管理,但大多数情况这个过程都由手工完成,缺乏相应的规范,对于分支和版本号的控制也很随意,出现这样的情况往往是大家对软件交付过程中的软件版本控制不够重视,“只要确保软件是最新的版本即可”,甚至是项目管理的漏洞或者缺陷。其实软件的版本控制以及分支管理贯穿于整个软件产品的生命周期,日常的项目管理对于开发团队能否有节奏且顺利...原创 2018-07-30 16:21:28 · 1238 阅读 · 0 评论 -
从Scrum到Kanban的团队之旅
翻译 | 高钰淋本文翻译自《From Scrum to Kanban–A Team’s Journey》,以第一人称视角讲述了移动广告公司Marchex的团队Kanban过渡经历,从改变动机,到过渡过程,再到实践经验,希望能给大家带来一些关于团队敏捷实践的启发。Marchex是一家移动广告技术公司,2014年团队从支持一个已经运行了7年以上的产品转变去开发一个全新产品,当时Scrum实践的...翻译 2019-09-05 10:24:50 · 332 阅读 · 0 评论 -
Choerodon猪齿鱼微服务后端环境变量方案
Choerodon猪齿鱼平台使用微服务架构进行开发,部署在Kubernetes 扩展中,并且服务新功能开发完成后会被依次部署到暂存环境测试,UAT 环境验收和生产环境使用。在这多个多个环境的部署过程中,猪齿鱼平台只需要一次CI生成的包,便能实现服务部署的“因地制宜”。需求猪齿鱼平台集成的GitLab用于进行CI的过程,在微服务程序中经过Gitlab CI的docker_build和chart_...原创 2019-09-24 11:44:05 · 607 阅读 · 0 评论