openshift 容器云从入门到崩溃之一《容器能解决什么问题》
容器前时代
说到容器大多数人想到的就是docker,docker的迅速崛起使得使用容器的门槛大大降低了,我第一次接触docker还是14年,那时候作为一名运维部署应用还在大量使用虚拟化,从vmware、hyper-v、kvm、xen 在到后来很火openstack多多少少都有接触和使用,没使用虚拟化之前OS都是装到的笨重物理机上,把OS虚拟化出来就有很多文章可以做了,虚拟化的好处就不说了。
第一阶段问题:
刚接触docker的时候只会把docker装到自己的电脑上来下载一些镜像跑一下这样就不会修改系统原理的环境,当时还不知道容器能给运维的工作带来什么变化,人的进步都是问题带来,先看看一开始我们遇到了什么问题
1、OS还是太笨重,随便哪个OS不是百万级别代码量,所以对OS级别的变更级别上都是分钟级别的
2、因为OS太笨重所以就不想部署太多的OS,这就导致一个OS下经常跑多个应用,一荣俱荣一损俱损
3、开发经常说的一句话:在我电脑上是好的在你们的服务器上就不好了
4、线上变更如临大敌,生怕环境不一致会出异常
解决方案:
docker---->docker-compose---->docker machine
但是吃饱了人们又想折腾了
第二阶段问题:
1、容器都散布在各个地方,每个docker都是独立王国,如何做到集群化管理
2、如何做到跨主机网络访问
3、应用变更时如何做到无感知
3、监控和日志应该怎么做
4、如何做到熔断、回滚、灰度发布
5、如何做容器的负载均衡、内部之间访问
6、如何大规模部署应用
等等。。。。。。
解决方案:
基于kubernetes的openshift
一开始我们并没有选择openshift,而是调研了比较灵活的rancher(当时rancher还是1.x的版本)
当时的rancher有一下几个特点:
1、支持多个底层编排包括Cattle、Swarm、K8S、Mesos
2、可以快速部署多套独立的环境
3、简单的的部署方式
4、高度web化的管理,包括对容器主机的管理
不足之处:
1、当时刚出没多久还太冷门
2、对K8S支持的并不好(rancher2.x版本已经全面拥抱了k8s)
openshift的特点:
1、完全继承k8s所有特性
2、出自红帽之手
3、文档丰富、社区活跃(k8s)
4、有公有云版本在稳定运行
缺点:
1、部署过于复杂
基于对红帽的信仰最后还是选择了openshift
openshift 容器云从入门到崩溃之一《容器能解决什么问题》的更多相关文章
- openshift 容器云从入门到崩溃之八《日志聚合》
日志可以分为两部分 业务日志 业务日志一般是要长期保留的,以供以后有问题随时查询,elk是现在比较流行的日志方案,但是容器日志最好不要落地所以不能把logstash客户端包在容器里面 可以使用logs ...
- openshift 容器云从入门到崩溃之六《Source-to-Image》
上次说到了怎么在oc上面部署应用而且说道了怎么定义模板部署应用,也许你会奇怪那个我代码打包编译在哪一步,那就要说道oc的s2i流程了 下面是基本s2i流程 1.制作base-image镜像 要使用s2 ...
- openshift 容器云从入门到崩溃之五《部署应用》
1.配置部署模板 配置好用户权限之后就可以部署应用了oc常用的两种部署方式: Deploy Image方式 优点:这种方式是最简单的部署方式,你只需要有一个容器镜像就行了或者公开的docker hub ...
- openshift 容器云从入门到崩溃之二《准备环境》
openshift 从3.9开始就开始支持系统组件在容器里运行了,之前版本都是直接运行在操作系统上,名字也改了叫OKD 目前最新的稳定版本是3.11,所以就安装3.11版本 准备环境: 主机名 系统 ...
- openshift 容器云从入门到崩溃之九《容器监控-报警》
容器状态监控 主要是监控POD的状态包括重启.不健康等等这些k8s api 状态本身会报出来,在配合zabbix报警 导入zabbix模板关联上oc master主机 <?xml version ...
- openshift 容器云从入门到崩溃之七《数据持久化》
数据持久化常用的有两种: hostPath 挂载容器宿主机的本地文件夹,直接修改pod的配置 volumes: - hostPath: path: /data/logging-es type: '' ...
- openshift 容器云从入门到崩溃之三《安装openshift》
准备好环境,在安装之前请先了解openshift提供的ansible有大量的安装选项 文档地址:https://docs.okd.io/latest/install/configuring_inven ...
- openshift 容器云从入门到崩溃之十《容器监控-数据展示》
POD资源历史曲线(CPU.内存.网络) 监控方案heapster+hawkular-metrics+hawkular-cassandra heapster负责收集数据 hawkular-cassan ...
- openshift 容器云从入门到崩溃之四《配置用户验证》
1.配置本地用户 之前安装的时候选择了htpasswd验证方式 先创建用户 # htpasswd -c /etc/origin/master/htpasswd admin 授权为集群管理员 # oc ...
随机推荐
- print 与标准输出
print会自动添加换行符 其它的,没什么区别.有时候为了使用灵活,才会这么用. 例如你想把print的内容写向一下log文件,你可以这么做 stdout_bk = sys.stdout #备份一下标 ...
- 【Vue】---编写Vue插件流程---【巷子】
一.在Vue中编写插件流程 1.创建组件 components/message.vue <template> <div class="message" v-if= ...
- CCPC-Wannafly Winter Camp Day3 Div1 - 石头剪刀布 - [带权并查集]
题目链接:https://zhixincode.com/contest/14/problem/I?problem_id=211 样例输入 1 3 5 2 1 1 2 1 2 1 1 2 3 2 1 ...
- Catch That Cow POJ - 3278 bfs map超时,短路判断顺序。
题意:可以把n边为n+1,n-1,n*2问从n到k的最少变化次数. 坑:标题写了.有点不会写bfs了... ac代码 #define _CRT_SECURE_NO_WARNINGS #include& ...
- 【作业】用栈模拟dfs
题意:一个迷宫,起点到终点的路径,不用递归. 题解: #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdli ...
- 进制转换 map
a_z = [i for i in map(chr, range(ord('a'), ord('z') + 1))]'''Address of var1 variable: 240ff24Addres ...
- URL编码问题
一般来说,URL只能使用英文字母.阿拉伯数字和某些标点符号,不能使用其他文字和符号. 比如,世界上有英文字母的网址"http://www.abc.com", 但是没有希腊字母的网址 ...
- Android Studio自动排版的两种方法
Android Studio这样的集成开发环境虽然代码自动化程度很高,但是自动化程度高导致人的自主性就下降了,而且总是依赖编辑器的功能也会搞得代码排版很别扭. 最难受的是你在Android Studi ...
- zabbix zatree centos7安装zabbix-agent
https://github.com/Emersonxuelinux/zatree-3.0-/tree/master/zabbix-3.0.x /bin/sh /config/ds.sh /tmp/z ...
- Java 第二次测试总结
Java 第二次测试总结 1. 相关知识点总结 Java测试题循环与递归知识点 补充知识点: for循环语句:for(表达式1:表达式2:表达式3)表达式一负责完成变量的初始化!表达式2是值为bool ...