
openshift
文章平均质量分 74
胡了了
这个作者很懒,什么都没留下…
展开
-
openshift/origin学习记录(1)——基于二进制文件的安装(单机版)
学习资料来源于官方英文文档与《开源容器云OpenShift》一书,因为刚开始学习,不确定博客的正确性,以下内容仅供参考。先决条件开启SELINUX官方文档推荐开启SELINUX,否则会导致安装失败。 修改/etc/selinux/configSELINUX=enforcingSELINUXTYPE=targeted安装docker# yum install -y docker-1.12.原创 2017-09-07 16:01:45 · 6047 阅读 · 10 评论 -
openshift/origin工作记录(6)——本地DNS服务器的创建与配置
之前在建立openshift集群时,是直接修改各个节点的/etc/hosts文件,加上静态的域名解析。当节点数量很多或者后续执行集群节点扩容时,都需要修改大量的/etc/hosts文件,很麻烦。这里选择在本地搭建一个DNS服务器。我选择将DNS服务器部署到了Master节点上。登录Master节点执行操作。修改/etc/hosts配置根据自己的实际情况配置,整合之前配置的静态域名解析。添加dnsm原创 2018-01-03 17:57:18 · 3144 阅读 · 0 评论 -
openshift/origin工作记录(7)——持久化openshift内部镜像仓库
openshift内部镜像仓库Registry组件默认是非持久化的。之前重启过一次openshift集群,导致重启前通过s2i构建的镜像都不能用了。所以需要持久化openshift内部镜像仓库。有状态的应用如果未配置持久化卷,容器一旦意外退出,容器内部所有的镜像、配置、数据都将消失殆尽。本部分参考《开源容器云OpenShift》一书129-133页以及官方文档https://doc...原创 2018-01-04 16:32:09 · 3555 阅读 · 0 评论 -
openshift/origin学习记录(12)——离线安装集群
最近在公司申请了三台云主机,并在这三台云主机上搭建openshift集群。由于公司的云主机是内网环境,无法连接外网,所以需要离线安装。记录过程如下:搭建本地yum服务器在之前在线安装的openshift集群节点上执行yum history,查看yum的安装历史。通过reposync或者参考我的博客《Centos7.2学习记录(2)——yum只下载不安装以及多rpm的安装 》...原创 2017-10-23 14:09:46 · 4791 阅读 · 0 评论 -
openshift/origin工作记录(1)——S2I镜像定制(基于SVN)
本篇博客所用到的代码已上传至github。https://github.com/hu12081/openshift-s2i-tomcat-svn.git 不建议直接clone git,否则,注意修改文件权限。s2i源码研究(能力不够,修改失败)周一的时候在github上粗略阅读了source-to-image的源码,代码地址为https://github.com/openshift/so...原创 2017-10-25 10:36:34 · 3687 阅读 · 1 评论 -
openshift/origin工作记录(2)——RESTful编程接口使用
由于工作原因,需要对openshift进行二次开发,初步研究了一下RESTful编程接口使用。本部分内容借鉴了开源项目https://github.com/fabric8io/kubernetes-client,目前是引用开源项目的jar包对openshift集群进行操作。demo工程放在了我的github上,地址为https://github.com/hu12081/openshift原创 2017-10-31 17:13:16 · 2696 阅读 · 0 评论 -
openshift/origin学习记录(0)——Ansible安装多节点openshift集群
本节内容是基于Ansible Playbook自动部署openshift集群,之后几节内容会通过一个AllInOne的集群手动添加组件,研究实现的流程。本部分内容是3.6.0,可能不适用3.6.1本部分openshift集群的部署分为以下几个阶段:主机准备。准备openshift集群需要的主机。安装前预配置。准备相应的系统配置与软件依赖。执行安装。使用Ansible Playb原创 2017-09-13 09:50:20 · 11029 阅读 · 1 评论 -
openshift/origin工作记录(9)——openshift结合jenkins实现持续集成
最近工作为基于jenkins、Openshift实现持续集成。由于只给了我一周的时间,这里先记录一下V1.0版的实现过程。集成jenkins参考《openshift/origin学习记录(7)——集成Jenkins服务》,集成jenkins(博客里记录的是非持久化的jenkins,选用jenkins-persistent-template模板,创建了持久化的jenkins)...原创 2018-04-16 16:21:09 · 3282 阅读 · 0 评论 -
openshift/origin工作记录(8)——docker镜像垃圾回收
镜像仓库垃圾回收master节点上以集群管理员登录集群后执行:# oadm prune images --all=false --keep-younger-than=0m --keep-tag-revisions=0 --registry-url=docker-registry-default.router.default.svc.cluster.local --certificate-a...原创 2018-03-29 10:37:06 · 982 阅读 · 0 评论 -
openshift/origin工作记录(10)——openshift pod无法访问外网的解决方案
编辑主机上的/etc/dnsmasq.d/origin-dns.conf文件,添加相应的DNS服务器,格式为: server=DNS服务器说明:可添加多个,如: server=218.85.152.99server=114.114.114.114重启dnsmasq,使更改生效systemctl restart dnsmasq.servicesystemctl resta...原创 2018-07-09 12:35:59 · 1749 阅读 · 0 评论 -
openshift 3.10多节点集群安装(基于Ansible和Centos7.4)
参考官方文档https://docs.okd.io/3.10/install/index.html,基于Ansible安装3.10版openshift集群。特注:本文仅供初学者参考!生产环境请结合实际并参照官方文档!(本文尽量往生产环境上靠)安装规划个人电脑资源有限,这里采用双节点集群,这两个节点既是master,又是node,也是etcd,并挂HAProxy负载平衡maste...原创 2018-09-06 13:27:26 · 7557 阅读 · 8 评论 -
openshift/origin工作记录(11)——Openshift3.6向Openshift3.11升级以及CVE-2018-1002105漏洞修复
由于kubernetes的CVE-2018-1002105重大漏洞,需要对Openshift集群进行版本升级。当前运行的Openshift集群版本为v3.6,目标为升级到版本v3.11。原创 2018-12-13 13:17:30 · 1438 阅读 · 4 评论 -
openshift/origin工作记录(12)——Openshift3.11安装Istio
测试环境安装Istio进行学习,参考文档连接https://istio.io/zh/docs/setup/kubernetes/测试环境:Openshift3.11+Centos7.5下载 Istio 发布包Istio 会被安装到自己的 istio-system 命名空间,并且能够对所有其他命名空间的服务进行管理。下载和自动解压缩# curl -L https://git.io/g...原创 2019-02-21 10:59:30 · 1394 阅读 · 0 评论 -
openshift/origin工作记录(14)——解决Namespace Terminating无法删除的问题
在卸载重装istio的时候,发现namespace标记为删除后,长期处于Terminating状态,且namespace下的资源并没有被删除。问题复现新建一个空的namespace,执行删除:oc指令执行删除,执行过程卡死,ctrl+c退出后查看namespace,新建的空namespace处于Terminating状态,并无法删除。排除因namespace下资源过多导致卡死这一猜测。...原创 2019-02-21 10:12:24 · 1920 阅读 · 0 评论 -
openshift/origin工作记录(5)——node节点系统资源预留
实际应用中发现,如果不做处理,当集群内应用数量不断增加时,会占满node节点的系统资源,导致某node节点挂掉,同时也会造成openshift集群的卡死。解决思路为设置node节点系统资源预留值。参考官方文档:https://docs.openshift.org/latest/admin_guide/manage_nodes.html#configuring-node-resour...原创 2018-01-03 16:28:31 · 1824 阅读 · 6 评论 -
openshift/origin工作记录(4)——Pod时区同步
最近在收集Docker日志等操作的时候,发现openshift的pod时区默认和宿主机不同步,默认使用UTC时间。解决方案设置Docker容器环境变量:TZ=Asia/Shanghai。示例如下:验证原创 2017-11-16 10:21:01 · 1152 阅读 · 0 评论 -
openshift/origin学习记录(2)——添加Router组件
本部分是在openshift/origin学习记录(1)——基于二进制文件的安装(单机版)的基础上进行Router是openshift集群中的一个重要组件,它是外部访问集群内容器应用的入口。集群外部的请求都会到达Router,由Router分发到具体的容器中。Router组件需要读取集群的信息,所以它需要关联一个系统账号Service Account,并为这个账号授权。以下操作基于oc(命令行客户原创 2017-09-08 16:12:28 · 4786 阅读 · 11 评论 -
openshift/origin学习记录(3)——添加Registry
本部分是在openshift/origin学习记录(1)——基于二进制文件的安装(单机版)的基础上进行该部分是部署集群内部的Docker镜像仓库。从功能上来说,它与其他诸如DockerHub没有本质上的区别,只是这个内部镜像仓库会存储由Source to Image(S2I)创建的镜像。S2I的工作是辅助将应用的源代码转换成可以部署的Docker镜像。以管理员登录,并切换到default工程。#原创 2017-09-08 16:37:09 · 5852 阅读 · 0 评论 -
openshift/origin学习记录(4)——添加Image Stream
学习资料来源于官方英文文档与《开源容器云OpenShift》一书,因为刚开始学习,不确定博客的正确性,以下内容仅供参考。本部分是在openshift/origin学习记录(1)——基于二进制文件的安装(单机版)的基础上进行。Image Stream是一组镜像的集合,可以在一个Image Stream中定义一些名称及标签(tag),并定义这些名字及标签指向的具体镜像。使用Image Stream的目的原创 2017-09-11 15:00:45 · 5272 阅读 · 0 评论 -
openshift/origin学习记录(5)——添加Template(模板)并基于模板部署应用
学习资料来源于官方英文文档与《开源容器云OpenShift》一书,因为刚开始学习,不确定博客的正确性,以下内容仅供参考。本部分是在openshift/origin学习记录(1)——基于二进制文件的安装(单机版)的基础上进行。添加模板为了满足用户对复杂应用部署的需求,提供应用部署的效率,openshift引入了应用部署模板(Template)的概念。通过Template,可以定义一个或多个需要部署的镜原创 2017-09-11 15:33:03 · 6232 阅读 · 9 评论 -
openshift/origin学习记录(7)——集成Jenkins服务
学习资料来源于官方英文文档与《开源容器云OpenShift》一书,因为刚开始学习,不确定博客的正确性,以下内容仅供参考。Openshift项目提供了集成Openshift插件的Jenkins容器镜像和部署模板。 o Openshift项目默认提供了两个Jenkins部署模板:jenkins-ephemeral-template、jenkins-persistent-template...原创 2018-03-22 15:42:38 · 7021 阅读 · 5 评论 -
openshift/origin学习记录(10)——基于已有镜像部署应用
本部分记录如何基于已有的镜像部署应用。参考的博客为《OpenShift_034:部署 mywebsql docker image 访问 mysql 数据库》(该博主的博客需要翻墙浏览)。这里的测试镜像选择的是我自己的博客《 Docker学习记录(2)——JAVA应用容器化(JAVA博客应用Solo)》最终产生的镜像。基于已有镜像部署应用以账号为dev密码为dev的用户登录openshift集群。原创 2017-09-29 18:14:15 · 4433 阅读 · 1 评论 -
Centos7.2学习记录(3)——搭建本地yum仓库
入职以来,由于公司云主机运行在内网环境下,在搭建kubernetes和openshift集群时都需要进行离线安装,这里粗略记录一下本地yum仓库的搭建过程。httpd配置安装httpd在目标服务器上安装httpd。# yum install -y httpd修改httpd端口号我的80端口已被占用,故这里修改httpd的端口号。 修改/etc/httpd/conf/httpd.conf。 将L原创 2017-10-26 14:52:52 · 2305 阅读 · 0 评论 -
openshift/origin学习记录(11)——赋予用户集群管理员权限
由于system:admin默认没有密码,没法登录web console,这里通过指令给账号dev赋予集群管理员权限。# oc login -u system:admin# oc adm policy add-cluster-role-to-user cluster-admin dev这样就可以用dev账号访问web console。访问default等工程。原创 2017-10-19 17:05:35 · 3418 阅读 · 4 评论 -
openshift/origin学习记录(6)——集群节点管理
采用Cockpit实现集群节点管理。Cockpit是一个开源的系统管理项目。支持Docker、Kubernetes、Openshift。安装Cockpit在集群所有的节点上安装Cockpit以及Docker、Kubernetes插件。# yum install -y cockpit cockpit-docker cockpit-kubernetes在集群的所有节点上启动Cockpit服务,并原创 2017-09-15 15:44:46 · 3300 阅读 · 0 评论 -
openshift/origin学习记录(9)——S2I镜像定制(基于Git)
参考《开源容器云Openshift》一书,制作一个Tomcat的S2I镜像。准备环境在Master上下载S2I的二进制执行文件。# cd /opt # wget https://github.com/openshift/source-to-image/releases/download/v1.1.7/source-to-image-v1.1.7-226afa1-linux-386.tar.g原创 2017-09-27 10:37:33 · 4737 阅读 · 3 评论 -
openshift/origin工作记录(3)——Application的删除
openshift创建完一个application后,会自动创建很多对象,包括dc、rc、svc、pod、is等。在删除application时,可通过标签,批量删除同一个application下的所有对象。如下图所示:创建的名为eureka的application包括图中所有的对象。删除指令# oc delete all -l application=eureka验证# oc get a原创 2017-11-02 14:36:59 · 2384 阅读 · 0 评论 -
openshift/origin学习记录(8)——基于镜像安装多节点集群(Containerized Installer)
本节内容是Docker镜像以及Ansible实现多节点集群Containerized Installer。大体流程和基于RPM的安装过程类似。本部分openshift集群的部署分为以下几个阶段:主机准备。准备openshift集群需要的主机。安装前预配置。准备相应的系统配置与软件依赖。执行安装。使用Ansible Playbook进行自动化安装。主机准备由于是在自己笔记本上尝试部署多节点集原创 2017-09-22 10:20:58 · 3178 阅读 · 0 评论 -
openshift/origin学习记录(13)——集群节点扩容(Master/node/etcd)
集群搭建成功之后,可以对集群进行扩容,包括对Master、Node、Etcd等的扩容,添加新的节点。官方文档链接如下:https://docs.openshift.org/latest/install_config/adding_hosts_to_existing_cluster.html这里在 openshift/origin学习记录(0)——Ansible安装多节点openshift原创 2017-10-26 12:30:55 · 3480 阅读 · 0 评论 -
openshift/origin工作记录(13)——利用NFS动态提供后端存储卷
参考《利用NFS动态提供Kubernetes后端存储卷》以及 https://github.com/kubernetes-incubator/external-storage/tree/master/nfs-client。使用nfs-client-provisioner这个应用,利用NFS Server给Openshift作为持久存储的后端,并且动态提供PV。前提条件:已经安装好的NF...原创 2019-03-19 16:30:41 · 1084 阅读 · 1 评论