容器技术

Docker部署SDN环境

我只是一个虾纸丫 提交于 2020-04-02 09:28:50
2014-12-03 by muzi Docker image = Java class Docker container = Java object 前言 5月份的时候,当我还是一个大学生的时候,有个网友问我,你有研究Docker吗?当时我连Docker是什么都不知道。谷歌之后,对Docker产生兴趣,但是一直没有时间去学习。这个周终于将这个学习计划列入了Todolist。所以我花了3天时间,认真地把这 《Docker 从入门到实践》 看完并实践了一遍,收获颇丰。虽然我的导师以及我自己还是觉得我在瞎转,而且我觉得没有方向的日子很痛苦。所以只好自己做计划,学习点新知识,打打基础了。本篇内容主要介绍什么是Docker、Docker简单入门以及如何使用Docker部署SDN环境,以及docker的网络配置等内容。What is Docker和Why Docker部分摘自《Docker从入门到实践》。 What is Docker Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。Redhat 已经在其 RHEL6.5 中集中支持 Docker;Google 也在其 PaaS

升级Kubernetes 1.18前,你不得不知的9件事

假装没事ソ 提交于 2020-04-01 14:32:13
本文来自 Rancher Labs 昨天Kubernetes最新版本v1.18已经发布,其包含了38项功能增强,其中15项为稳定版功能、11项beta版功能以及12项alpha版功能。在本文中,我们将探索其中一些功能,希望能帮助你决定是否需要升级。那么,我们现在开始吧! 将Service Account Token作为通用身份验证方法 Kubernetes使用service account来验证集群内的服务。例如,如果你想要一个pod来管理其他Kubernetes资源,如Deployment或者Service,你可以与Service Account相关联并创建必要的角色和角色绑定。Kubernetes Service Account(KSA)发送JSON Web Tokens(JWT)到API server以验证它们。这使API server成为service account身份验证的唯一来源。 那么,如果实体需要针对集群外的其他服务进行身份验证,该怎么办?为了使用其KSA,外部身份验证器必须联系API server以验证请求。但是,API server不应公开访问。因为这使你可以使用其他身份验证系统进行验证,这会增加复杂性。即使第三方服务位于可以访问API server的集群中,也会增加负载。 于是在Kubernetes 1.18中增加了一个功能(#1393),该功能使API

基于docker部署使用ELK+FileBeat日志管理平台

两盒软妹~` 提交于 2020-04-01 07:53:58
  Docker从狭义上来讲就是一个进程,从广义上来讲是一个虚拟容器,专业叫法为 Application Container(应用容器)。Docker进程和普通的进程没有任何区别,它就是一个普通的应用进程,不过是用来操作镜像文件的。所以Docker进程+构建的应用镜像文件就等于Docker容器。作为时下最热门的技术,docker轻量、便捷,极大的简化了后端开发/后期运维工作。同时,ELK+Filebeat的集中式日志解决方案也是大热。开发环境,Ubuntu 16.04   1、Docker安装   1.校验Linux内核版本 uname -ir   Linux内核版本高于3.10,64位系统   2.获取最新doker安装包 wget -qO- https://get.docker.com/ | sh   如上图,即安装完成   3.启动docker后台服务 sudo service docker start #启动守护进程 docker -v # 检查版本   如此docker即装好,具体的安装详情,教程很多,不赘述   2、安装elk镜像   1.拉取 sebp/elk镜像 sudo docker pull sebp/elk   镜像较大,差不多1.65G   2.说几个会用到的docker命令 sudo docker images // 查看本地已有镜像 sudo

Linux高级运维 第八章 部署docker容器虚拟化平台

耗尽温柔 提交于 2020-04-01 07:46:55
8.1 Docker 概述 实验环境: CENTOS7.4-63 64位 Dcoker 概述 Docker 是一个开源的应用容器引擎 ,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙盒机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包装系统。 扩展:沙盒 沙盒也叫沙箱,英文sandbox。在计算机领域指一种虚拟技术,且多用于计算机安全技术。安全软件可以先让它在沙盒中运行,如果含有恶意行为,则禁止程序的进一步运行,而这不会对系统造成任何危害。 Docker 是dotCloud公司开源的一个基于LXC的高级容器引擎,源代码托管在Github上, 基于go语言并遵从Apache2.0协议开源。 Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的container中,然后发布到任何流行的Linux机器上。 互动: 现在接触的软件是怎么发布的? windows下的 2016-0ffice.exe ,不能在xp运行 ;mk.rpm 在redhat系列Linux上运行,但是不能在其他linux版本上运行。 例: /mnt/Packages/vsftpd-3.0.2-10.el7.x86

十分钟明白什么是容器技术

喜欢而已 提交于 2020-03-31 05:35:50
欢迎大家前往 腾讯云+社区 ,获取更多腾讯海量技术实践干货哦~ 本文由 宝哥@devops运维 发表于 云+社区专栏 一、什么是容器? 容器这个词,当你第一眼看它或许脑子里是这东西:瓶瓶罐罐、装水、装其他东西的玩意。 不管是什么,总的来说,容器给人第一印象就是——“装”。 那今天我们要说的容器技术是怎么一个概念呢?其实,IT里的容器技术是英文单词Linux Container的直译。container这个单词有集装箱、容器的含义(主要偏集装箱意思)。不过,在中文环境下,咱们要交流要传授,如果翻译成“集装箱技术” 就有点拗口,所以结合中国人的吐字习惯和文化背景,更喜欢用容器这个词。不过,如果要形象的理解Linux Container技术的话,还是得念成集装箱会比较好。我们知道,海边码头里的集装箱是运载货物用的,它是一种按规格标准化的钢制箱子。集装箱的特色, 在于其格式划一,并可以层层重叠 ,所以可以大量放置在特别设计的远洋轮船中(早期航运是没有集装箱概念的,那时候货物杂乱无章的放,很影响出货和运输效率)。有了集装箱,那么这就更加快捷方便的为生产商提供廉价的运输服务。 因此,IT世界里借鉴了这一理念。早期,大家都认为硬件抽象层基于hypervisor的虚拟化方式可以最大程度上提供虚拟化管理的灵活性。各种不同操作系统的虚拟机都能通过hypervisor(KVM、XEN等)来衍生、运行

SSM框架中IoC、DI与AOP的理解

断了今生、忘了曾经 提交于 2020-03-30 13:06:38
  框架封装了普通项目中程序员需要重复书写的代码和调用过程,就比如说在传统的jsp项目中,我们的controller接收到前端的请求然后程序员就需要去开发Dao层,里面还涉及数据库的连接和存储过程的代码,大部分都是冗余的代码,而有了SSM框架后极大的简化了程序猿在controller以下层的开发,只需要一个service层和mapper层就行了,mapper层用来连接mapper.xml文件的,而直接用mapper.xml做sql语句的开发就行了,而数据库连接的和存储的过程都直接由Mybatis负责了,你只需要负责传递形参和接收返回数据就行了,这样就完成了一次完整的数据库交互! 1.1、IoC是什么   Ioc— Inversion of Control ,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好Ioc呢?理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转,哪些方面反转了”,那我们来深入分析一下: ● 谁控制谁,控制什么: 传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IoC是有专门一个容器来创建这些对象,即由Ioc容器来控制对象的创建;谁控制谁?当然是IoC 容器控制了对象;控制什么

[转帖]vSphere 7融合Kubernetes,构建现代化应用的平台

烂漫一生 提交于 2020-03-30 08:17:31
vSphere 7融合Kubernetes,构建现代化应用的平台 http://www.itpub.net/2020/03/13/5484/    题图摄于加州Monterey:太平洋的清晨 VMware 最新产品 vSphere 7 正式发布,致力于打造现代化应用平台,备受用户瞩目和期待。本文带你深入了解 vSphere 7 的原生 Kubernetes 功能,欢迎阅读。(本文仅代表作者个人观点。) VMware 在去年 VMWorld 介绍了云原生组合 Tanzu 和太平洋项目(Project Pacific)。3月11日,VMware 发布了近10年来最重要的一个版本:vSphere 7,包含众多的新功能。其中最引人注目的更新当属在 vSphere with Kubernetes (VwK) 功能,原生支持 Kubernetes 平台,实现了虚机和容器混合管理的能力,使 vSphere 成为全新的现代化应用开发运维平台。 vSphere with Kubernetes, 即之前的太平洋项目,对 vSphere 进行了多项的重构,引入了 Kubernetes 的概念和架构,以应用为中心,让开发人员和运维人员从不同的视图使用系统,带来里程碑式的革新。 VwK 在 VMware 公司内部已孕育了3年有多,目标深远、工程浩大,Kubernetes 联合创始人 Joe Beda

Docker入门心得(一)

心不动则不痛 提交于 2020-03-29 15:13:01
前言: 最近辞职找工作,比较有空,所以花了时间学习了一下 docker ,感觉这是一个有意思的技术。 我把最近的学习心得整理了一下,写了这篇文章。由于 docker 我也是初学,没经过项目实践,对它理解不够深刻。虽然文章中的知识点,我都查阅过多篇文章或者亲身实践印证,但尽管如此,还是难免有错误的地方,如果有人发现问题,欢迎留言指正。 docker 是什么: docker 是一种新型的,轻量级的虚拟技术,它把软件及其依赖的环境打包起来,形成一个虚拟的整体,方便开发维护人员进行管理和调度。 docker 与集装箱: docker 的英文意思是 “ 码头工人 ” ,而它的图标是一艘船上面放了许多个集装箱。集装箱是一种运送的货物统一规格的箱子,工人把货物放到集装箱里面,然后将箱子放在船上或车上运输到其它地方。 集团箱运输效率非常高,而且可以很方便地切换运输工具。而 docker 就是 IT 界的集团箱技术,它把各式各样的软件封装成一个 “ 箱子 ” 里面,称之为“镜像”。人们把方便地进行对镜像进行传输,并在各种系统(目前只支持 linux 类)上运行。一个运行状态的镜像称之为“容器”。这些容器提供了统一的管理接口,让人们可以方便地运行,必要时也容易组装在一起。 docker 和虚拟机的区别: 初学 docker ,很多人会有一个疑问: docker 与虚拟机有什么区别?我在这里简单介绍一下

容器技术

我们两清 提交于 2020-03-28 22:03:21
1、 容器技术发展   通过一种虚拟化技术来隔离运行在主机上不同进程,从而达到容器之间、容器和宿主操作系统相互隔离、互不影响技术。这种相互孤立进程就叫容器. 2、为什么选择Docker?   docker的好处太多,自己可以百度一下 https://blog.fundebug.com/2017/03/27/nodejs-docker/ 3、 Cgroup介绍   是 Linux 内核提供的一种可以限制、记录、隔离进程组 (process groups) 所使用的物力资源 (如 cpu memory i/o 等等) 的机制 这个也不错https://cloud.tencent.com/developer/article/1505558 掘金上还有一个三篇的可以读一下https://juejin.im/post/5ce63e146fb9a07edc0b2e27 4、Namespace介绍   主要是为了完成:   在同一个 namespace 下的进程可以感知彼此的变化,而对外界的进程一无所知。这样就可以让容器中的进程产生错觉,仿佛自己置身于一个独立的系统环境中,以此达到独立和隔离的目的 这个写的不错https://www.infoq.cn/article/docker-kernel-knowledge-namespace-resource-isolation 来源: 51CTO 作者

Docker存储技术浅析

瘦欲@ 提交于 2020-03-28 01:17:59
Docker在Linux上支持很多存储驱动,每种驱动都有自己的镜像分层、镜像层共享以及写时复制(CoW)技术的具体实现。 Docker存储基础技术 镜像分层 所有的Docker镜像都起始于一个基础镜像层,当进行修改或增加新的内容时,就会在当前镜像层之上,创建新的镜像层。默认Docker镜像由多个只读层镜像叠加而成,启动容器后,Docker会加载只读镜像层,并再顶部添加一个读写层,并通过写时复制的方式,来写读写层 镜像层共享 多个镜像之间可以并且确实会共享镜像层,这样可以有效节省空间 并提升性能。例如多个centos7的镜像可以共享centos7的基础image,因为基础image大家都一样 写时复制CoW CoW就是copy-on-write,表示只在需要写时才去复制,这个是针对已有文件的修改场景。比如基于一个image启动多个Container,如果为每个Container都去分配一个image一样的文件系统,那么将会占用大量的磁盘空间。而CoW技术可以让所有的容器共享image的文件系统,所有数据都从image中读取,只有当要对文件进行写操作时,才从image里把要写的文件复制到自己的文件系统进行修改。所以无论有多少个容器共享同一个image,所做的写操作都是对从image中复制到自己的文件系统中的复本上进行,并不会修改image的源文件,且多个容器操作同一个文件