Openshift集群全环境恢复
阅读前说明 按照官网提供的文档操作能够恢复etcd数据,但是由于证书的问题,恢复的集群并不能正常使用,需要单独对集群的token进行清理。 官方文档中没有明确恢复etcd集群的部署,经过多次验证,确认了恢复etcd集群需要以下三步:1. 部署1台节点的etcd;2. 在当前1台etcd节点上恢复数据;3. 使用ansible扩容的方式,将etcd节点扩展到3台。 可以更新/etc/etcd/etcd.conf文件更改etcd name,进而解决etcd客户端访问服务器端证书不匹配的问题。 文章最后附上了经过测试认证的根据备份一键恢复etcd集群的脚本。 Openshift集群平台能够使用备份完整恢复集群。Openshift集群全环境备份 在恢复集群之前,请确保对集群做过完成的备份,并重新安装Openshift集群。 恢复Master节点创建Master主机文件的备份后,如果它们被损坏或意外删除,就可以通过这些文件复制回Master主机来恢复文件,然后重新启动受影响的服务。 恢复过程 恢复/etc/origin/master/master-conf...
Openshift部署zalenium(容器化的selenium)及Python自动测试
什么是zaleniumzalenium是一个Selenium Grid扩展,用Docker容器动态扩展你的本地网格。它使用docker-selenium在本地运行Firefox和Chrome中的测试。官网地址 zalenium Openshift上部署zalenium 创建zalenium项目 1oc new-project zalenium --display-name="自动测试Selenium Grid" 创建Service Account 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455# 创建ClusterRole# oc create -f zalenium-role.json{ "kind": "ClusterRole", "apiVersion": "v1", "meta...
Openshift集群升级3-6至3-7
更新方法与策略:自动升级方法 更新openshift-ansible的脚本代码 12git pull git checkout -b release-3.7 安装需要的包 1ansible all -m yum -a 'name=pyOpenSSL state=present' 关闭Service Catalog和Template Service Broker。3.7 以上版本默认会启用 Service Catalog 和 Template Service Broker 123456# /etc/ansible/hosts...openshift_enable_service_catalog=falsetemplate_service_broker_install=falseansible_service_broker_install=false... 关闭etcd目录的selinux检查关闭任务Check selinux label of ‘‘与Make sure the ‘‘ has the proper label 12345678910...
Openshift集群全环境备份
创建集群全环境备份非常有必要,特别是在生产过程中。当集群发生异常崩溃,数据丢失时,备份的数据就派上了用场,利用备份数据可以将之前的环境重新构建出来。 在Openshift平台,我们可以对集群的完整状态备份到外部存储。集群全环境包括: 集群数据文件 etcd数据库 Openshift对象配置 私有镜像仓库存储 持久化卷 我们要定期对集群作备份,以防止数据的丢失。 集群全环境备份并不是万能的,应用自己的数据我们应该保证有单独的备份。 创建Master节点备份在系统基础架构进行更改,都需要对节点做备份。比如说,系统升级,集群升级或者任何重大更新。通过定期备份数据,当集群出现故障时,我们就能使用备份恢复集群。 Master主机上运行着非常重要的服务:API、Controllers。/etc/origin/master目录下存放着许多重要的文件。 API、Controllers服务等的配置文件 安装生成的证书 云提供商提供的配置文件 密钥和其它身份认证文件 另外如果有额外自定义的配置,比如更改日志级别,使用代理等。这些配置文件在...
Openshif对集群的扩容与缩容
Openshift是一个云平台,它是以集群的方式提供服务。前面已经介绍了,业务都跑在Openshift的Node节点上。随着业务的不断变化,扩展或者消亡,我们的Node提供的服务需求也会不断变化。这时就需要对Node节点进行增删管理。 本篇只介绍CentOS7下管理Node节点。 Openshift使用Ansible playbook来实现扩容与缩容 1. oc命令查看当前Node节点的状态1oc get node --show-labels 2. 添加Node节点到已存在的集群 准备好需要添加的主机 节点类型 说明 Nodes 物理主机或者虚拟机 系统:Fedora 21, CentOS 7.3, 7.4或者7.5 NetworkManager版本1.0以上最少1vCPU最少8GB内存/var/最少15GB空间 /usr/local/bin最少1GB空间容器临时目录最少1GB空间 设置主机的hostname 1hostnamectl --static set-hostname infra1...
Openshit-新的存储类型LocalVolume该如何使用
使用本地盘的方式的有三种:emptyDir、HostPath与Local Volume Openshift针对Local Volume提供了一个local volume provisioner方便PV的自动创建,但目前它需要创建的PV对应的目录必须是挂载点。否则无法创建PV。 除了自动创建PV的过程外,部分与正常使用Local Volume一样。 手动挂载目录使用Local Volume我们先来看下通过手动的方式创建PV使用Local Volume是如何操作的。 1. 创建StorageClass123456apiVersion: storage.k8s.io/v1kind: StorageClassmetadata: name: local-hddprovisioner: kubernetes.io/no-provisionervolumeBindingMode: WaitForFirstConsumer 2. 创建PV1234567891011121314151617181920apiVersion: v1 kind: PersistentVolume metadat...
oc的常用命令整理
oc process oc new-app oc new-build oc create imagestream oc run oc create -f oc policy add-role-to-user edit system:serviceaccount:jenkins:jenkins -n dev oc adm policy add-scc-to-user anyuid -z gitlab -n gitlab oc new-project oc set volumes oc expose oc start-build oc rollback oc rollout oc rsync oc rsh oc set triggers dc/flask-app-s2i –remove-all && oc set triggers dc/flask-app-s2i –from-image=flask-app-s2i:v1 -c flask-app-s2i &&am...
《Prometheus监控实战》读书笔记
Prometheus是一个开源的监控系统。 一、监控简介监控不仅仅只是系统的技术指标,还可以是业务指标。确保为客户提供可靠恰当的产品。在生产系统中,监控是必须的,它应该和应用程序一起构建和部署。帮助我们了解系统的环境、进行诊断故障、制定容量计划,为组织提供系统的性能、成本和状态等信息。 监控模式 务必在项目最开始阶段就把监控考虑进去,它和安全性一样,都是应用的核心功能。 根据服务价值设计自上而下的监控系统是一个很好的方式。先是业务逻辑,再是应用程序,最后才是基础设施操作系统。 需要找准监控项,及时发现错误 通过多样化的数据,如查看数据窗口等更智能的技术分析指标与阀值 增加监控的频率 尽可能实现监控系统部署实施自动化 监控机制 探针与内省:监控应用程序的两种方法。探针:在应用程序的外部,查询应用程序的外部特征。如Nagios。内省:查看应用程序的内部内容,经过检测,返回其状态、内部组件等的度量。可用作健康检查接口,由监控工具收集。 拉取与推送:执行监控检查的两种方式。拉取:提取或检查远程应用程序。如Prometheus。推送:应用程序发送事件给监控系统接收。 监控数据...

