Fabric8使用说明

Fabric8 UI

本平台基于openshift搭建 
平台信息! 
URL: http://fabric8.fabric8.ipaas.seanzhau.com 
账号: admin 
密码: 12345678 
*打开以上URL时,首先会跳到openshift登录页面。

登陆平台 
title

界面说明 
Fabric8默认项目区域,如果需要多个Team,使用右上角的“Create Team”来创建。

  • Current等同于fabric8下面的Runtime
  • Production表示生产环境
  • Staging表示预发布测试环境,用于发布正常的测试
  • Testing表示自动化集成测试环境,自定义的脚本自动化测试

title

Other Namespaces区域,主要是openshift默认的namespace,主要是openshift平台用来做日志采集、监控和cicd等应用的namespace,与fabric8使用无关,严禁删除。 
title

进入“Runtime” 
title

快捷连接 
Gogs:代码管理系统,默认账号:gogsadmin:RedHat$1 
Grafana:图像监控系统,默认账号:admin:admin 
Jenkins:持续集成系统 
Kibana:日志系统 
Nexus:二进制包管理系统,默认账号:admin:admin123 
Prometheus:监控数据存储 
title

Jenkins 
title

gogs 
title

Nexus 
title

Overview 
主要是服务运行管理。 
Run:运行一个fabric8提供的快捷服务(运行在容器中)。 
Pods:pod数量伸缩管理,修改副本的数量。 
title

Run 
title

Pods 
title

Services 
每一个应用对应为一个service,主要是fabric8系统服务,service也可以看作为负载均衡。 
title

Deployments 
用于创建服务的yaml配置,点击Name可以查看配置详细内容,点击Scale可以修改副本的数量。 
title 
配置内容 
title 
Config快捷连接 
title

Replicas 
每修改一次Deployments,pod都会重新构建,因此会有多个历史版本。Replicas用于管理管理这些版本,Name后面的数字表示这个服务pod构建的次数。默认新版本启动以后,老版本会自动停止。对于不用的pod我们可以删除。 
title

Pods 
Pods就是具体的服务实例 
Name:服务名称 
Status:服务状态,可以查看Pod Terminal(显示器图标)和服务日志(文本图标) 
Events:是pod运行的日志,注意区分服务日志 
Restarts:重启次数 
Age:启动时长 
Images:运行这个pod使用的镜像以及版本 
Host:pod所在的宿主机 
title

Pod Terminal 
title

服务日志 
title

Config 
应用关联配置,也可以说应用使用外部其他服务的配置(目前还未深入了解,慎用!)。有变量配置和yaml配置2种方式。 
title 
变量配置 
title 
YAML配置 
title

Events 
pod事件 
title

Secrets 
各服务之间认证证书、密钥、账号密码等 
title

Nodes 
宿主机节点,可以看到fabric8在每个节点上运行的pod数量 
title

Diagram 
Pod、Node和服务端口关联拓扑 
title

Dashboard 
自建App在各环境发布情况,各Environment中pod数量。 
title

Apps 
自建应用列表,包含应用名称、仓库连接和版本信息等。 
title

Builds 
所有App构建历史,Pipeline快捷连接 
title

Environments 
环境配置,和Team界面对应 
title

Create Apps

Creat App 
在Dashboard和Apps界面都可以创建新的应用,点击右上角的“Creat App” 
title

选择应用仓库 
Setup Gogs Secret:配置gogs账号,即使有fabric8自带的代码仓库,我们选择fabric8自带的gogs仓库。 
Import from Git:使用外部代码仓库。 
title

Setup Gogs Secret 
第一次使用如果有账号就选择默认账号,如果没有账号则需要手动创建。点击下面的“Create New Secret” 
title

Create New Secret 
这个账号一定要与gogs里面的账号一致,不熟悉fabric8的情况下,别随意修改gogs默认的账号和密码,一些列的账号密码问题会很头疼。 
新建账号可以使用账号密码,也可以使用ssh key。 
title

重新进入创建应用界面,选择“Creat New App” 
title

Creat Project 
可以选择Quickstart也可以根据自己的需求来选择,Quickstart提供了一些自带的模板,自定义选择需要自己手动选择。 
Name:App名称 
Top level package:包com.abc… 
Version:版本信息 
title

Creat Project选择模板 
title

Creat Project自定义模板 
title

Pipeline 
根据需求选择一个pipeline,勾选Copy pipeline to project,点Next完成创建。完成创建以后默认会自动执行一次构建。 
title

App demo 
项目界面,使用快捷连接查看jenkins和gogs确认项目创建的情况。 
title

Jenkins项目界面 
title

Gogs项目界面 
title

Apps 
Java类应用默认会生成一个类似于demo-s2i的app,用于构建镜像。s2i指source to images。 
title

Dashboard 
Environments:项目发布的情况 
Active Pipelines:pipeline执行详情,构建完成以后点Proceed完成生产发布,点Abort取消发布。 
Commits:gogs中该项目提交的历史 
title

Proceed发布 
title

Proceed发布完成 
title

Pipelines历史 
title

Builds历史 
title

Settings 
Core:代码gogs连接,主要配置默认不用修改 
Secrets:配置gogs账号密码,不用修改 
Pipeline:选择pipeline模板,不用修改 
title

Source 
源码目录和gogs项目文件一致,fabric8项目和普通我们本地项目的差别在于以下3个文件:

  • Jenkinsfile
  • Fabric8.yml
  • pom.xml

title

Fabric8.yml 
声明了这是一个fabric8项目,并且定义了fabric8对于该项目的使用哪一个jenkinsfile,以及定义项目的environments。

这个文件根据我们前面选择的pipeline模板自动生成。 
title

Jenkinsfile 
Jenkinsfile:是项目使用Jenkins pipeline的主要文件,里面定义了pipeline的主要流程,使用基础image名称和版本信息。 
title

pom.xml 
与本地项目对比,多定义了fabric8-maven-plugin、 maven-compiler-plugin、metric和log插件。

我们在实际的使用过程中,以我们现有app的pom.xml为母版,将我们刚刚创建的fabric8的pom.xml内容合并到现有的app中。 
title

fabric8-staging 
通过“Teams - fabric8 – Environments - fabric8-staging”进入,查看pod运行状况。(参考PPT Environments) 
title

fabric8-testing 
通过“Teams - fabric8 – Environments - fabric8-testing”进入,查看pod运行状况。(参考PPT Environments) 
title

fabric8-production 
通过“Teams - fabric8 – Environments - fabric8-production”进入,查看pod运行状况。(参考PPT Environments) 
title

遇到过的问题

  • 无法解析gogs域名,这个主要是dnsmasq解析的问题
  • 提示目录已存在,需要进入fabric8-forge所在的pod删除/tmp/fabric8-forge/user/gogsadmin/{app名称}
  • 提示gogs仓库已经存在该项目,登录gogs删除项目
  • 进入app dashboard加载慢,主要是因为fabric8-forge下的缓存目录加载慢,可能与磁盘的IOPS有关
  • unable to resolve class io.fabric8.Utils,删除jenkins pod
  • jenkins-workflow-library.git下载慢,把仓库迁移至本地gogs
  • Pod重建重新下载maven数据,使用外部pvc存储数据
  • 创建项目时选择pipeline一直在加载,需要进入fabric8-forge删除 /tmp/fabric8-forge/user/gogsadmin/{app名称}和/tmp/fabric8-forge/namespace/user-secrets-source-awadmin/gogs/fabric8/{app名称} 下的缓存文件,重新进入项目的secrets配置。

官方文档


版权所有,转载请注明出处:https://ipaas.com.cn/blog/post/seanzhau/aa95e6279f35

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值