码迷,mamicode.com
首页 > 其他好文 > 详细

RedHat OpenShift QuickStart

时间:2020-02-06 01:07:22      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:对话框   rest   方法   cond   工具包   http   文档   不同的   ima   

openshift 提供了命令行工具和web可视化页面,这些工具通过REST API去和openshift交互

 

1. 探索命令行

2. 探索web console

3. 部署一个docker镜像

4. 扩展应用实例

5. 路由HTTP请求

6. 从源代码构建

 

1. 探索命令行

通过OC命令去访问openshift的Command Line Interface(CLI)

登陆:

$ oc login

 

技术图片

 

 

 

使用whoami查看当前用户:

$ oc whoami
developer
$

 

2. 探索web console

使用web console去登陆:

技术图片

 

 

创建项目:

技术图片

 

 

创建完成后,如下会显示项目的一些基本信息:

技术图片

 

 

在导航栏最上面我们可以看见当前角色是admin,点击administer,可以切换不同的角色,从而展示不同的页面:

 

技术图片

 

下面是开发人员视角:

 

技术图片

 

 

 

3. 部署一个docker镜像

由于这是一个空项目,拓扑图里有这些选项:

From Git, Container Image, From Catalog, From Dockerfile, YAML, Database;

下面从容器镜像(Container Image)选项去创建一个应用:

在将来,要返回这个方法菜单去给你的项目添加新的内容,你可以点击左侧导航栏的 +Add

 

在Image Name里输入如下镜像信息(官方文档提供)

docker.io/openshiftroadshow/parksmap-katacoda:1.2.0

 

然后点击搜索按钮,会显示镜像的相关信息

技术图片

 

 

此时应用名称(Application Name)会自动填充为parksmap-katacoda-app,名称(Name)会填充为parksmap-katacoda

默认情况下,通过容器镜像的方式创建会自动给你的应用创建一个路由,这个路由可以使你的应用可以被一个公开的URL访问

技术图片

为了后续学习路由的创建,这里先把取消复选框的选择。

点击蓝色的create按钮,此时会为你创建你选择的应用

 

技术图片

这就是在openshift上部署容器镜像的所有步骤

 

4. 扩展应用实例

先点击应用的圈,在点击overview,在点击上箭头

 

技术图片

为了验证我们是否成功扩展应用为两个,点击旁边的resource,会显示有两个副本,显示如下:

 

技术图片

 

 

总的来说,扩展应用就是如此简单。应用扩展可以非常快的发生是因为openshift只是启动存在镜像的新的实例,特别是该镜像已经缓存在节点上的情况下。

 

应用程序自愈:

Openshift的deploymentConfigs会不断监控,去查看pods是否以期待的数量运行,如果实际状态偏离的期望状态,openshift将会修复这种情况。

点击pods列表中其中一个名字,再点击Actions,选择Delete Pod,在弹出的对话框中选择delete:

技术图片

 

 

此时,会发现出现了三个pods:

技术图片

 

 

我们删除的那个pod此时正在终止(Terminating)(正在被清理),一个新的pod会被创建出来,因为openshift总是确保一个pod挂掉,就会创建出一个新的pod去顶替死掉的位置。

缩放容量:

使我们应用减少为一个实例,点击侧面导航栏Topology返回拓扑视图,点击我们创建的应用,点击overview,点击向下箭头缩放到一个实例。

 

5. 路由HTTP请求

Services在openshift中提供内部抽象和负载均衡。但是有时候在openshift之外的客户(用户、系统、设备等)访问在openshift中的应用是通过路由层,控制这个资源的对象就是一个路由。

默认的openshift路由器(HAProxy)使用传入的http请求头来确定代理连接的位置。你可以将路由设置为安全的,例如TLS。如果你想要你的服务扩展一下,能够被外界所访问,那么你就需要设置一个路由。

在之前教程中提到,通过容器镜像的方式去创建去部署应用会默认给你创建了一个路由,因为我们取消勾选了这个选项,所以我们现在手动去创建一个路由。

创建一个路由

幸运的是,创建一个路由是一个非常简单的过程。首先,在develper下拉菜单中选择administer视图,确保你的myproject项目在项目列表中是勾选的。其次,在左边导航栏点击networking,然后routes。

点击create route 按钮

技术图片

 

 

在name中输入parksmap-katacoda,Service选择parksmap-katacoda,目标端口选择8080,其他设置默认。

技术图片

 

 

当你点击create后,这个路由将被创建并展示在路由详情页。

技术图片

 

 

你同样可以在开发人员视图下看见这个路由。现在切换回开发人员视图,进入到拓扑视图,在parksmap-katacoda可视化中,你应该在圆圈的右上角看见一个图标。这个就代表路由,如果你点击它,它就会在你浏览器中打开这个URL。

技术图片

 

 

 

当你点击了路由图标,你会在浏览器中看见下面这个:

技术图片

 

 

 

6. 从源代码构建

在这章节中,我们将要去部署ParksMap应用的后端服务。后端服务将会通过REST API提供各个国家公园的数据,ParksMap前端应用将会去查询这些数据并显示在你浏览器的交互式地图上。

背景:Source-to-Image(S2I)

在之前的章节中,学会了通过存在的容器镜像去部署应用。在这个章节中,将会学如何直接通过远程Git仓库中保存的源代码来部署应用。这将使用Source-to-Image(S2I)工具来完成。

S2I的文档从以下方面描述它:

Source-to-Image(S2I)是一个构建可复制容器镜像的工具。S2I通过将源代码注入到容器镜像中,组装后的新镜像包含了构建器镜像和已经构建完成的源代码,产生的结果就可以与docker run一起使用了。S2I支持增量构建,可以重用之前下载的依赖和之前构建的工具包。

openshift支持S2I,并将其作为构建机制之一(除了从Dockerfile和自定义构建容器镜像之外)。

关于S2I的详细资料可以在 OpenShift S2I documentation 和 GitHub project respository for S2I 去查看。

关于S2I,你只需要记住唯一关键点是它从你的源代码构建处理你的容器镜像。

 

部署应用代码

这章要部署的应用叫做nationalparks-katacoda,它是一个python应用,将会通过REST API以JSON格式返回世界各地主要国家公园的坐标。

源代码可以在这个GitHub仓库查看:https://github.com/openshift-roadshow/nationalparks-katacoda

构建这个应用你需要在开发人员视图下点击左侧导航栏的+Add。确保你的web console打开并且你所在的项目叫做myproject,这次不是使用容器镜像,而是使用From Catalog,将会出现以下界面:

技术图片

 

在语言一节中,在受支持的语言列表中选python,当提供Django + Postgres SQL、Django + Postgres SQL (Ephemeral)和Python选项时,选择Python选项并单击Create Application。

技术图片

 

使用以下Git代码仓库:

https://github.com/openshift-roadshow/nationalparks-katacoda

输入完成后,在输入框外面点击一下,name输入框就会出现nationalparks-katacoda

 

技术图片

 

其他选项默认。

点击屏幕右侧create按钮会回到拓扑视图,点击nationalparks-katacoda 应用你会看见resource里,你会看见在builds部分里你的构建正在运行。

 

技术图片

 

这是S2I在git仓库中拉取源码创建镜像然后将要运行的步骤。

点击构建的View Logs链接,你可以看见S2I下载运行应用程序,准备应用程序和创建镜像所需要的所有python包。

技术图片

当构建完成后返回拓扑视图,查看正在部署的镜像和正在启动的应用。当你在构建日志中看见Push successful时,构建就完成了。

技术图片

 

nationalparks-katacoda组建左下角绿色勾标记表示构建已经完成,圆圈从淡蓝色变为蓝色,后端应用nationalparks-katacoda已经被部署。

现在,回到浏览器中的ParksMap前端应用程序,应该能够看到显示的国家公园的位置。如果浏览器中还没有打开应用程序,请转到拓扑视图,并单击parksmap-katacoda应用程序右上角的图标,以在浏览器中打开URL。

 

技术图片

 

 

原文:https://learn.openshift.com/introduction/getting-started/

RedHat OpenShift QuickStart

标签:对话框   rest   方法   cond   工具包   http   文档   不同的   ima   

原文地址:https://www.cnblogs.com/tiandz/p/12267433.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!