如何节约云端成本?

上云在大部分情况下就是为了降低成本,在这方面,主流的容器服务基本上都能够有效地降低成本——不仅能够高效自动化的管理和控制容器,而且不需支付Kubernetes 主节点的费用。不过,我们还可以在此基础上进一步节约成本,这里以腾讯云TKE为例,介绍几个技巧:

  • 无需过度购买配置,尽量使用自动扩展

传统IT往往都会过度购买配置,甚至上一年都有计划下一年需要购买的虚拟机和存储资源,往往都会超买,造成了很多不必要的消费(云资源一经购买,无论是否使用,均会按时收费)。在云端,k8s拥有极高的扩展性、自动化和可伸缩性,我们完全可以对云资源按量付费并且设置设置自动伸缩。比如云端的k8s集群,我们可以配置集群节点的伸缩组,以按需使用云端资源:

  • 最大化的利用服务器资源

当我们创建好k8s集群后,我们就可以创建容器服务了。但是,容器服务的创建是有限制的,例如下面这个集群:

如果我们在创建服务时,设置了各个服务的CPU限制和内存限制,哪怕当前容器实际的资源消耗低的可怜,我们也有可能无法继续创建容器服务,因为只有当当前节点上可分配资源量大于等于容器限制资源最小值时才允许将容器调度到该节点。这时,如果我们对程序有信心,或者希望更大限度的利用云端资源,可以将CPU限制和内存限制留空,也就是不做任何限制,以便更大程度的利用好云资源。不过此项设置有风险,比如有的服务特别吃资源或者代码编写不当,那么势必会影响其他的容器服务的稳定,因此仅推荐开发测试环境使用。

  • 用好Ingress

Ingress是k8s集群的流量入口,即外部流量进入k8s集群的必经之路,其公开了从集群外部到集群内服务的HTTP和HTTPS路由。

腾讯云的Ingress提供以下类型的服务:

1)       公网访问

2)       仅在集群内访问

3)       VPC内网访问

其中,仅当提供公网访问时,Ingress才按时收费。因此,我们可以将一些无需公网的容器服务的Ingress配置为内网访问。

当我们的容器服务需要提供公网访问时,一个Ingress我们可以设置多个转发配置,从而达到节省成本的目的:

  • 省存储

容器服务的数据卷支持本地硬盘(主机目录)、云硬盘、NFS盘和配置项。通常情况下,我们会使用云硬盘,但是一个云硬盘仅能挂载到一个容器服务实例,既不利于存储数据的共享,而且也不利于存储资源的最大化利用。

在对IO性能要求不高的情况下,我们推荐使用NFS盘。NFS数据卷适用于多读多写的持久化存储,适用于大数据分析、媒体处理、内容管理等场景,可以选择使用腾讯云的文件存储CFS,也可使用自建的文件存储NFS。

另外,腾讯云的NFS盘目前有10G的免费存储空间!

Docker最全教程——从理论到实战(二十三)的更多相关文章

  1. Docker最全教程——从理论到实战(十三)

    前言 树莓派(Raspberry Pi)是一台卡片电脑(只有信用卡大小),我们可以使用树莓派做很多事情,比如智能家居的中控.航空器.BT下载器.挖矿机.智能机器人.小型服务器(花生壳+网站)等等. 目 ...

  2. Docker最全教程——从理论到实战(八)

    在本系列教程中,笔者希望将必要的知识点围绕理论.流程(工作流程).方法.实践来进行讲解,而不是单纯的为讲解知识点而进行讲解.也就是说,笔者希望能够让大家将理论.知识.思想和指导应用到工作的实际场景和实 ...

  3. Docker最全教程——从理论到实战(七)

    在本系列教程中,笔者希望将必要的知识点围绕理论.流程(工作流程).方法.实践来进行讲解,而不是单纯的为讲解知识点而进行讲解.也就是说,笔者希望能够让大家将理论.知识.思想和指导应用到工作的实际场景和实 ...

  4. Docker最全教程——从理论到实战(六)

    托管到腾讯云容器服务 托管到腾讯云容器服务,我们的公众号“magiccodes”已经发布了相关的录屏教程,大家可以结合本篇教程一起查阅.   自建还是托管? 在开始之前,我们先来讨论一个问题——是自建 ...

  5. Docker最全教程——从理论到实战(五)

    往期内容链接 Docker最全教程——从理论到实战(一) Docker最全教程——从理论到实战(二) Docker最全教程——从理论到实战(三) Docker最全教程——从理论到实战(四) 本篇教程持 ...

  6. Docker最全教程——从理论到实战

    Docker最全教程——从理论到实战(一) Docker最全教程——从理论到实战(二) Docker最全教程——从理论到实战(三) Docker最全教程——从理论到实战(四) Docker最全教程—— ...

  7. Docker最全教程——从理论到实战(一)

    容器是应用走向云端之后必然的发展趋势,因此笔者非常乐于和大家分享我们这段时间对容器的理解.心得和实践. 本篇教程持续编写了2个星期左右,只是为了大家更好地了解.理解和消化这个技术,能够搭上这波车. 你 ...

  8. Docker最全教程---从理论到实战

    目录 前言 随着生产力的发展尤其是弹性架构的广泛应用(比如微服务),许多一流开发者都将应用托管到了应用容器上,比如Google.微软.亚马逊.腾讯.阿里.京东和新浪. 从未来的发展方向来看,容器引擎将 ...

  9. Docker最全教程——从理论到实战(二十二)

    前言 最近正在抽时间编写k8s的相关教程,很是费时,等相关内容初步完成后,再和大家分享.对于k8s,还是上云更为简单.稳定并且节省成本,因此我们需要对主流云服务的容器服务进行了解,以便更好地应用于生产 ...

  10. Docker最全教程——从理论到实战(十五)

    前言 Java是一门面向对象的优秀编程语言,市场占有率极高,但是在容器化实践过程中,发现官方支持并不友好,同时与其他编程语言的基础镜像相比(具体见各语言镜像比较),确实是非常臃肿. 本篇仅作探索,希望 ...

随机推荐

  1. Tomcat 修改日志输出配置 定期删除日志

    tomcat的下的日志catalina.out 和 qc.log疯狂增长,以下是解决办法 我生产环境tomcat版本 Server version: Apache Tomcat/7.0.35 Serv ...

  2. web渗透步骤流程

    2013-11-13 23:03 (分类:网络安全) 这篇流程写的非常细,思路上很完整很全面,非常值得参考,做渗透思路要非常清晰,要不然我感觉真的容易乱,或者漏掉一些可能存在的点. 1.渗透目标 渗透 ...

  3. nginx+uwsgi部署Django项目到Ubuntu服务器全过程,以及那些坑!!!

    前言:自己在windows上用PyCharm编写的Django项目,编写完后在windows上运行一点问题都没有,但是部署到服务器上时却Bug百出.百度,CSDN,sf,各种搜索寻求解决方案在历时3天 ...

  4. StackExchange.Redis 之 List队列 类型示例

    //从第1个开始,依次向左插入值.如果键不存在,先创建再插入值 队列形式 先进后出,后进先出 //插入后形式  <-- 10,9,8,7,6,5,4,3,2,1 <-- 方向向左依次进行 ...

  5. Java日志介绍(3)-Logback

    Logback 继承自Log4j,它建立在有十年工业经验的日志系统之上.它比其它所有的日志系统更快并且更小,包含了许多独特并且有用的特性. 1.配置 1.1.加载配置 Logback能够在初始化期间自 ...

  6. jQuery的动画以及扩展功能

    动画DOM及CSS操作 自定义动画 animate(最终css状态,时间) 这个最终css状态是一个对象 <!DOCTYPE html> <html lang="en&qu ...

  7. PyCharm专业版激活+破解到期时间2100年

    PyCharm专业版激活+破解到期时间2100年 转载文章:https://blog.51cto.com/13696145/2464312?source=dra 到2020年5月激活码: N7UR85 ...

  8. Python——捕获异常

    一.什么是异常 """异常:错误,bug处理异常:尝试执行某句可能出现异常的语句, 若出错则用正确的代码去替代. try: 可能发生错误的代码except: 如果出现异常 ...

  9. 【转载】ibit-mybatis介绍

    原文链接:ibit-mybatis介绍 概述    ibit-mybatis是一个Mybatis的增强工具,在Mybatis的基础上增加了新的特性与功能,志在简化开发流程.提高开发效率. 特性 无侵入 ...

  10. LoaderTest加载测试用例的方法总结

    加载用例,可以用suite.addTest(测试类名("测试函数名"))实现,也可用过suit.addTest(loader.Loader....)实现,一下针对Loader的三个 ...