Docker+k8s 容器云建设中 10 个常见问题
发布时间:2021-06-07 12:06:20 所属栏目:云计算 来源:互联网
导读:下面几个问题是在Docker+K8S容器云建设过程中,最常被问起和需要解决的难点问题。来自社区交流活动,多位社区会员分享解答,整理者:gavin_zhang 1、企业是应该选择原生的Docker还是定制化的Docker,比如胖容器/富容器? 【问题描述】Docker是当前企业在进行
下面几个问题是在Docker+K8S容器云建设过程中,最常被问起和需要解决的难点问题。来自社区交流活动,多位社区会员分享解答,整理者:gavin_zhang
1、企业是应该选择原生的Docker还是定制化的Docker,比如胖容器/富容器?
【问题描述】Docker是当前企业在进行容器化时首选的容器技术,但是原生的Docker在实际使用的过程中,特别是在传统虚机运维到容器化运维的过渡中,会碰到以下类似问题:
1、如何ssh登录到容器,像登录虚机那样,可以通过ssh进行管理
2、对于普通用户来说,如何从容器中拷贝文件到外部
3、虚机中一般会配置定时任务,在容器中如何实现
4、虚机中一般会安装各种agent,容器中怎么去安装
若企业直接采用原生的Docker,那么以上问题是比较棘手的。因此企业在容器技术选型上,是否应该为了最大程度兼容虚机运维模式,对Docker进行定制化改造,满足实际需求呢?
@某银行 技术经理:
是使用原生还是定制就要看企业实力了。一般的企业不会去动原生的东西,不愿意将人力花在这个方面。很多企业是通过应用的改造来适配容器化的方案,包括运维上的问题。
4个问题:
1、docker exec可以进入容器,如果是k8s或者ocp,还有有相应的api
2、方便拷贝的方式第一个容器中应用产生的文件目录挂载到本地;第二个使用相应的命令如docker cp;也许你说的不仅限一些简单场景,其实都是有方法的,不仅以上两种
3、容器中也是可以使用crontab定时任务操作的
4、agent的功能要先说清楚,如果上k8s或者ocp,一个pod可以完成你要说的内容。如果仅仅是用docker,根据功能需要应该也是有方法的。
@gavin_zhang 某股份制银行 系统架构师:
1、docker exec可以满足要求
2、最直接就是挂在本地磁盘存储到容器上
3、可以考虑一下,定时调度起一个Docker执行任务
4、主要是这些Agent是用来干什么的?Docker实例本来就是作为一种一次性的,不可变的运行实例,传统虚拟机的那个操作Agent,不符合容器的设计理念
定制化最大的问题在于,目前技术升级比较快,一旦定制,就锁定在几个版本了,后续升级维护工作量会很大。
2、容器云平台主流技术和成熟产品选型及如何制定相关的标准和规范探讨?
【问题描述】在引入容器平台时,需先了解当前主流的容器平台技术和成熟产品,然后制定相关的标准和规范。具体如下:
想了解当前主流容器平台openshift3、openshift4、Rancher、博云等国产容器产商的有哪些区别?容器平台如何选型?这些产品的功能、性能比较。
除了资金成本,容器平台后期的使用和运维需要如何考虑,目前公司自己对容器平台的开发能力不在,运维人员需要具体具备哪些能力,运维与开发如何协作,投入运维人员的规模如何估算?
容器平台早期实施的过程中需要做哪些规划,避免哪些坑?
此问题有多位同行进行详细的解答分享,我们已经专门整理成一篇文章,并在不久前向读者们推送过,点击下面的标题即可回顾阅读:
3、Kubenetes在金融多安全域的环境中,架构规划问题?
【问题描述】金融行业网络架构中存在多安全域的设计,kubenetes在多安全域网络隔离的情况下,每个安全域都部署一套k8s集群吗?生产环境k8s集群中calico有哪些网络控制策略最佳实践?
@nameless 某云计算厂商 技术总监 :
理论上来说各个安全域的网络时隔离的,如果部署一套k8s集群,所有的node节点和master节点是联通的,node直接默认也是联通的。可以每个安全域部署一套k8s集群,使用同一的容器管理平台,这是k8s多集群管理。
calico是k8s其中一个网络插件,其他还有flannel、ovs等不同的网络插件,生产使用哪一种网络插件需根据自身业务需求选择。
@某银行 技术经理:
其实不需要这么复杂,比如分了互联网区、中间业务区、核心业务区,k8s集群有6个node节点,可以两个放互联网、两个放中间业务,两个放核心业务,比如master节点都在OA区,只要将master跟着6个node网络上能通即可,不需要node间都能互相访问,一个集群也是可以的。
calico是可以解决集群内外访问的问题,但是随着需要访问集群的外部节点的增加,那运维成本就很高了。可以使用ingress类似的解决方案。
4、容器云平台建设难点之网络如何选择?如果选SDN网络,那么SDN网络实现方案又应该如何选择?
【问题描述】容器网络如何选择?容器云平台的网络一直是一个技术难题,是采用SDN网络还是桥接到Underlay网络;如果使用SDN网络,那么多的SDN网络实现方案,如何选择?
@liufengyi 某互联网银行 软件架构设计师:
优先考虑公司整个网络扁平化,互联互通,这样对应用改造成本要小很多,即基于公司原来的网络打通来进行。如果容器的应用是一个相对独立的服务,可以考虑overlay。规模不大的情况下一些开源网络组件可以考虑采用。
@某金融企业 系统工程师:
calico、bgp、ingress、nginx等都是可以的
1、calico将集群内与集群外网络打通,但是随着集群外访问集群内的节点越来越多,运维难度会加大
2、bgp需配置内部路由协议,性能上有损耗
3、ingress、nginx道理类似,将需要被外部访问的应用使用这两个组件外部负载进到集群内部
4、hostnetwork方式
5、nodeport方式
……
![]() (编辑:汕尾站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |