Minio

K8S(16)集成实战-使用spinnaker进行自动化部署

。_饼干妹妹 提交于 2020-08-16 09:59:26
K8s集成实战-使用spinnaker进行自动化部署 1 spinnaker概述和选型 1.1 概述 1.1.1 主要功能 Spinnaker是一个开源的多云持续交付平台,提供快速、可靠、稳定的软件变更服务。主要包含两类功能:集群管理和部署管理 1.1.2 集群管理 集群管理主要用于管理云资源,Spinnaker所说的”云“可以理解成AWS,即主要是laaS的资源,比如OpenStak,Google云,微软云等,后来还支持了容器与Kubernetes,但是管理方式还是按照管理基础设施的模式来设计的。 1.1.3 部署管理 管理部署流程是Spinnaker的核心功能,使用minio作为持久化层,同时对接jenkins流水线创建的镜像,部署到Kubernetes集群中去,让服务真正运行起来。 1.1.4 逻辑架构图 Spinnaker自己就是Spinnake一个微服务,由若干组件组成,整套逻辑架构图如下: Deck是基于浏览器的UI。 Gate是API网关。 Spinnaker UI和所有api调用程序都通过Gate与Spinnaker进行通信。 Clouddriver负责管理云平台,并为所有部署的资源编制索引/缓存。 Front50用于管理数据持久化,用于保存应用程序,管道,项目和通知的元数据。 Igor用于通过Jenkins和Travis CI等系统中的持续集成作业来触发管道

大规模敏捷实践指南(五):如何进行PI过程中大规模敏捷协作管理

无人久伴 提交于 2020-08-12 11:29:06
在首个 Sprint 开始之前,需要召开一个递增的 Sprint 计划。用来计划和确定一列敏捷发布火车的时间维度,通过定量的时间递增(Sprint)来保证编码实现和我们计划任务(Mission)的持续一致。PI 将在固定的时间箱内计划出一个可量化、可实现和最终可测量验收的计划路线图。Choerodon猪齿鱼通过以下步骤进行PI过程: ART同步会议 通过项目群看板促进可视化 通过迭代日历提高敏捷团队可见性 ART同步会议 在 PI 计划会议之后,各种项目群事件创建了一个闭环系统,从而 “保持火车在轨道上行进”。如图所示: 为了保持工作持续进展和透明度,就需要频繁的协作。为了评估和管理进度和依赖关系,ART通常通过各种同步会议进行协调。这其中包括: Scrum of Scrum(SoS):发布火车工程师(RTE)每周(或更频繁)引导 Scrum of Scrum会议,来协调依赖,并将进展和障碍以可视化的方式呈现出来。Scrum Master或者其他人向大家同步敏捷团队实现里程碑和PI目标的进度,并管理团队间的依赖关系; 产品负责人(PO)同步:产品经理(PM)和产品负责人(PO)通过 “PO 同 步”会议,对 ART 的进展在多大程度上与项目群 PI 目标相一致获得可视化呈现。讨论特性开发中遇到的问题或者创造的新机会,并评估任何可能出现的范围调整。这个会议也是每周进行一次

python基本操作-文件、目录及路径

北慕城南 提交于 2020-08-11 14:05:07
使用python的os模块,简单方便完成对文件夹、文件及路径的管理与访问操作。 1 前言 在最近开发中,经常需要对文件进行读取、遍历、修改等操作,想要快速、简单的完成这些操作,我选择用 python 。通过 python 的标准内置 os 模块,只需要几行代码,即可完成想要的操作。经过对 os 的使用,本文把 os 模块的常用的操作进行总结,主要分为以下几个划分: 文件夹操作:即文件夹的创建、修改(改名/移动),查询(查看、遍历)、删除等。 文件操作:即文件的创建、修改、读取、删除等。 (文件夹/文件)路径操作:即文件夹或文件的路径操作,如绝对路径,文件名与路径分割,扩展名分割等 本文涉及常用 的 os 函数的使用展示,主要使用 python 交互模式下进行代码说明。后续操作默认已经引入 os 模块,如下: import os 2 文件夹操作 以本地 E://pythontest 目录作为演示目录,此目录下当前文件如下: test │ test.txt └─test-1 test-1.txt test 及 test-1 是文件夹, test.txt 及 test-1.txt 是文件。 2.1 查询操作 熟悉 linux 同学应该对 ls / pwd / cd 等操作不陌生,对应的 python 也有对应的方法,主要包括: listdir : 文件及目录列表 getcwd

敏捷管理中的史诗与故事

ぐ巨炮叔叔 提交于 2020-08-10 13:30:11
在敏捷软件开发中,史诗&故事都是常用的术语。对于管理敏捷软件开发来说,Choerodon猪齿鱼是一个很好的工具,为敏捷术语和功能提供了非常广泛的实践方法,例如:史诗,故事、任务、子任务和缺陷,这些都是Choerodon中的问题类型。 史诗 :是一个功能集或是一个大的用户故事,但因为颗粒度太大而无法适应冲刺,它可以分解为许多较小的故事; 故事 :是简短的用户需求,足够小以适合冲刺; 任务 :是完成用户需求的过程性的工作,表示用户故事开发任务的完成; 子任务 :子任务通常是故事或任务的具体拆分,由单人承接,而且通常能在短时间内完成; 缺陷 :主要针对测试中的缺陷或者已发布版本的缺陷; 本文将详细为大家介绍 敏捷中史诗和故事以及它们在敏捷中的具体使用规范。 什么是史诗? 史诗是一个大的故事,当一个功能具有多个场景时,该功能则需要在史诗层面进行多种实现。史诗代表的通常是与特定结果密切相关的原始想法,与该史诗相关联的用户故事则代表需要交付的解决方案的各个方面。总的来说,通过史诗可以跟踪待办事项中比较大的用户需求,史诗中包含多个小的产品功能的用户故事,这让用户需求更加具有层次结构。 如何编写史诗? 对于史诗的编写,目前还没有标准格式,一些团队会使用熟悉的用户故事格式,也有一些团队则用简短的短语表示史诗。 在命名史诗时,请牢记以下两点: 1.它是开发或需求的核心内容; 2

「一站式」兼容所有云厂商文件存储Spring Boot 实现

左心房为你撑大大i 提交于 2020-08-10 05:00:28
背景 在互联网发展的今天,近乎所有的云厂商都提供 对象存储服务 。一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。 当我们在使用对应云厂商产品的时候,只需要引入对应尝试提供的 SDK ,根据其开发文档实现即可。但是当我们接入的云厂商较多(或者能够保证接口水平迁移时),我们要根据目标厂商接口 破坏性修改 。 如下提供了几家厂商接口 SDK 上传实例: 阿里云 // Endpoint以杭州为例,其它Region请按实际情况填写。 String endpoint = "http://oss-cn-hangzhou.aliyuncs.com"; String accessKeyId = "<yourAccessKeyId>"; String accessKeySecret = "<yourAccessKeySecret>"; // 创建OSSClient实例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 创建PutObjectRequest对象。 String content = "Hello OSS"; PutObjectRequest putObjectRequest =

推荐一个能够让程序猿快速开发的极简工具箱

杀马特。学长 韩版系。学妹 提交于 2020-08-10 00:03:25
介绍 本来做的是个图床管理的项目,结果撸成了一个工具箱,不定期追加新的功能。 基础环境 JDK1.8、Maven、Mysql、Redis、IntelliJ IDEA、minio、fastdfs 相关组件 ok-admin vue iView echarts clipboard cropperjs lightbox nprogress webuploader ztree 内置功能 组织机构:机构管理、用户管理、角色管理、行政区域。 系统监控:系统日志、在线用户,后期会慢慢追加完善。 应用管理:任务调度、邮件管理、图片管理、文章管理,每个模块只需要你稍作修改就可以打造成一个项目了。 系统管理:敏捷开发、系统菜单、全局配置,小伙伴们只需要设计好表结构,三秒中就能撸出一个增删查改的模块。 安装教程 启动前请配置 application-dev.properties 中相关 mysql 、 redis 以及非启动强依赖配置邮件、鉴黄、阿里云存储、分布式文件存储。 数据库脚本位于 src/main/resource/sql 下面,启动前请自行导入。 配置完成,运行 Application 中的 main 方法。 演示图 推荐阅读 深夜吐血训练了100万小黄图撸了一个鉴黄接口 UCloud 云服务内容鉴黄 Java 版本实现 分享一款炒鸡好用的网盘+文件服务器 SpringBoot 2.x

windows部署minio注册成服务在后台保持运行

霸气de小男生 提交于 2020-08-08 23:52:02
最近在使用minio做资源存储,要求把minio部署到wondows上使用,发现官方提供的运行命令:.\minio.exe server .\data运行后,关闭cmd窗口,服务就会关闭 所以需要通过winsw注册服务的方式,把minio注册成服务运行 winsw下载配置: 地址: https://github.com/winsw/winsw/releases 将WinSW.exe复制到自定义的目录,并重命名为自己想命名的服务名称minio-server.exe 同目录下创建minio-server.xml。特别注意,xml和exe必须同名 配置minio-server.xml文件 使用minio-server.exe install安装服务 安装完后,去服务中启动服务。启动成功就可以正常使用minio啦 使用minio-server.exe uninstall卸载服务 <service> <id>minio-server</id> <name>minio-server</name> <description>minio文件存储服务器</description> <!-- 可设置环境变量 --> <env name="HOME" value="%BASE%"/> <executable>%BASE%\minio.exe</executable> <arguments>server

Scrum和SAFe之间有什么不同

こ雲淡風輕ζ 提交于 2020-08-08 20:35:13
原文地址: https://www.knowledgehut.com/blog/agile/scrum-vs-safe Scrum是基于敏捷的价值观和原则的框架,而SAFe是在企业级别实施Scrum的框架,它们都是基于敏捷价值和原则下的产物。Scrum和SAFe之间的区别是有限的,但也存在着明显的差别。简单来说,Scrum主要基于敏捷的原则和价值观,侧重于少量团队,SAFe是在企业级别的实施敏捷的。 Scrum和SAFe之间的主要差异 让我们看一下Scrum和SAFe之间的主要区别: Sr. No. Scrum SAFe 1. 适用于小型的、阵列的、跨职能的团队 适用于大型的、多区域的团队 2. 它主要被敏捷团队采用 被整个企业采用,而不仅仅是一个团队。(Scrum的扩展) 3. 中层管理人员起不了任何作用 项目群和投资组合层是SAFe的两个重要层次 4. 基本组成部分是Scrum团队. 基本组成部分是敏捷发布火车(ART) 5. Scrum遗漏了各个基本方面。 整个组织的几乎全部的特性和各个方面通过SAFe都可以被管理。 Scrum是管理软件开发的敏捷方法,而SAFe是企业级敏捷的建立方法。 两者之间的主要区别取决于他们选择处理工作的方式。简而言之,Scrum基本上用于组织小型团队,而SAFe用于组织整个大型团队甚至企业。此外, SAFe填补了Scrum在各个重要方面的空缺。

从零搭建分布式文件系统MinIO比FastDFS要更合适

霸气de小男生 提交于 2020-07-29 06:12:45
前两天跟大家分享了一篇关于如何利用FastDFS组件来自建分布式文件系统的文章,有兴趣的朋友可以阅读下《 用asp.net core结合fastdfs打造分布式文件存储系统 》。通过留言发现大家虽然感兴趣,但是都觉得部署比较麻烦。的确,fastdfs的部署很繁琐,而且也没有官方提供的针对.net core的sdk。而今天带来的MinIO则是一个比fastdfs更好的选择,可以让你足够简单的来部署使用,官方也提供了足够详细的api文档。下面就让我们开始今天的正文吧。 这里说明下为什么今天才进行分享,因为就在几个小时前官方才发布了最新的3.1.12版本的nuget包,解决了 BucketExistsAsync 的一个bug,不然你还得引用源码才能正常运行。 作者:依乐祝 原文地址: https://www.cnblogs.com/yilezhu/p/12830123.html MinIO是什么? 官方对MinIO的介绍是:高性能,Kubernetes原生支持的对象存储系统。MinIO的高性能软件定义对象存储套件可以使用户能够为机器学习、分析和应用程序数据工作负载构建云原生支持的数据基础设施。下面是几个常用的网址 官网: https://min.io/ 开源地址: https://github.com/minio/ 中文文档: https://docs.min.io/cn/ .NET

KubeFlow-Pipeline及Argo实现原理速析

China☆狼群 提交于 2020-07-25 16:51:04
Argo是一个开源原生容器工作流引擎用于在Kubernetes上开发和运行应用程序。Argo Workflow流程引擎,可以编排容器流程来执行业务逻辑,在20年4月8日进入CNCF孵化器组。 而KubeFlow的Pipeline子项目,由Google开源,其全面依赖Argo作为底层实现,并增强持久层来补充流程管理能力,同时通过Python-SDK来简化流程的编写。 一. Argo流程引擎 Argo的步骤间可以传递信息,即下一步(容器)可以获取上一步(容器)的结果。结果传递有2种: 1. 文件:上一步容器新生成的文件,会直接出现在下一步容器里面。 2. 信息:上一步的执行结果信息(如某文件内容),下一步也可以拿到。 下面我们就来解读一下,Argo怎么实现“信息”在容器间的传递的,以及它和其他的流程引擎实现传递的区别。 1.1文件怎么从上一个容器跑到下一个容器里的? Argo流程,可以指定2个步骤之间,传递结果文件(Artifact)。即假设流程为:A->B,那么A容器跑完,B容器可以取得上一个容器的输出文件。 如下:A容器生成一个 /tmp/hello_world.txt 文件,Argo将这个文件,放到了B容器里面,并重命名为 /tmp/message文件。 注意:流程上的每个步骤,都对应执行一个容器。 在A跑完后容器就退出了,然后才跑的B(这时候已经没有A容器在运行了)。