目的 学习docker的集群管理,摸索出高可用的docker微服务架构方案.本篇文章只初步的了解下swarm(docker新版已集成了swarm)的使用,了解docker的发现服务的基础方法(docker hub 提供的内置方法,其他的比如:etcd.consul.zookeeper) 环境 三台虚拟主机: 192.168.139.128 (master,node1) 192.168.139.129(node2) 192.168.138.130(node3) 操作系统:centos7.3 Doc…
docker集群管理 ps:docker machine     docker swarm       docker compose  在Docker Machine发布之前,你可能会遇到以下问题: 你需要登录主机,按照主机及操作系统特有的安装以及配置步骤安装Docker,使其能运行Docker容器. 你需要研发一套工具管理多个Docker主机并监控其状态. 你在本地开发,产品部署在公有云平台,你希望能尽可能的减小两个环境的差异性 Docker Machine的出现解决了以上问题. Docker…
一.简介 kubernetes又叫做k8s,是Google开发的一款开源的docker集群管理工具,在这里对它的“发家史”,我不做过多的阐述,有时间大家可以自己去百度一下: 下面我要讲的就是容易混淆的部分(当然搭建的过程也会简单的阐述),我研究的就是一个单间的集群环境,如果大家想变成高可用的话,请百度^_^ 二.集群的搭建 我使用的二进制包进行的安装,前提是需要去官网上下载二进制包,下载的包名称以及地址截图如下(下载那一个包就OK了): 部署分布如下: manager kube-apiserve…
参考文档: mesos:http://mesos.apache.org/ mesosphere社区版:https://github.com/mesosphere/open-docs mesosphere仓库:https://github.com/mesosphere/open-docs/blob/master/downloads/mesos.md docker-ce安装:https://docs.docker.com/engine/installation/linux/docker-ce/cen…
引言 前一篇介绍如何简单的搭建一个可视化管理的docker集群,本篇将在此基础之上引入etcd发现服务. 目的 使用etcd发现服务解决swarm内置发现服务的不稳定问题.etcd采用raft算法,这里有篇容易理解的raft算法 Etcd是一个高可用的 Key/Value 存储系统,主要用于分享配置和服务发现. 简单:支持 curl 方式的用户 API (HTTP+JSON) 安全:可选 SSL 客户端证书认证 快速:单实例可达每秒 1000 次写操作 可靠:使用 Raft 实现分布式 安装et…
docker从1.12版(及后续版本)集成了swarmkit.可以方便的实现docker集群.它有哪些特点呢: 集成了集群功能 分散设计:manager和worker两种节点. 声明式服务模式 可伸缩 达到期望值--当某些有节点崩溃的时候,会在其他节点创建相应容器. 跨主机网络--采用overlay网络,docker可在不同的主机间通讯. 服务发现--内置服务发现功能,不需要额外使用etcd.consul.zookeeper. 负载均衡 安全通信 安全回滚 docker命令概览 从命令 dock…
一.简介 docker集群管理工具有swarm.k8s.mesos等,我所用到的是swarm和k8s,这篇文章主要介绍swarm:swarm是docker集成的原生 管理工具,只要你安装上docker之后,就可以直接使用docker swarm -h 来查看用法 二.组建集群 刚刚已经说过swarm是原生集成的,所以搭建起来也是比较简单的,我们在manager节点只需要运行docker swarm init --advertise-addr  IP地址 就可以生成一个token串,和一个node…
一. Docker Shipyard是什么 ? shipyard是一个开源的docker管理平台,其特性主要包括: 支持镜像管理.容器管理. 支持控制台命令 容器资源消耗监控 支持集群swarm,可以随意增加节点 支持控制用户管理权限,可以设置某个容器对某个用户只读.管理权限. 有汉化版 缺点: 不支持image管理: 不支持container批量操作. 启动容器较多,占用每个节点的一部分资源  Shipyard的几个概念 )engine 一个shipyard管理的docker集群可以包含一个或…
一.  Kubernetes 介绍 Kubernetes是一个全新的基于容器技术的分布式架构领先方案, 它是Google在2014年6月开源的一个容器集群管理系统,使用Go语言开发,Kubernetes也叫K8S.K8S是Google内部一个叫Borg的容器集群管理系统衍生出来的,Borg已经在Google大规模生产运行十年之久.K8S主要用于自动化部署.扩展和管理容器应用,提供了资源调度.部署管理.服务发现.扩容缩容.监控等一整套功能.2015年7月,Kubernetes v1.0正式发布,截…
kubernetes和docker的作用这里就不作介绍了,直接进入主题. 本文的目的是搭建docker集群,并使用kubernetes管理它们. 文中的软件环境除了kubernetes和docker,还用到了etcd和flannel.etcd服务运行在master机器上与minion机器上的flannel配套使用,作用是使每台minion上运行的 docker拥有不同的ip段,最终目的是使不同minion上正在运行的docker containner都有一个与别的任意一个containner(别…
一.前言 和docker容器一样,Swarm集群中运行的服务也能够做数据持久化.我们可以通过volume.bind和nfs等方式来实现swarm集群应用数据的持久化.其实和docker数据持久化的形式是一样的. 二.系统环境 节点名称 IP 操作系统 内核版本 manager 172.16.60.95 CentOs7 4.16.1-1.el7.elrepo.x86_64 node-01 172.16.60.96 CentOs7 4.16.1-1.el7.elrepo.x86_64 node-02…
http://blog.liuts.com/post/247/ 一.前言        Kubernetes 是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度.均衡容灾.服务注册.动态扩缩容等功能套件,目前最新版本为0.6.2.本文介绍如何基于Centos7.0构建Kubernetes平台,在正式介绍之前,大家有必要先理解Kubernetes几个核心概念及其承担的功能.以下为Kubernetes的架构设计图:1. Pods        在Kuberne…
docker systemd unit file [Unit] Description=Docker Application Container Engine Documentation=http://docs.docker.com After=network.target docker.socket Requires=docker.socket [Service]#Environment=HTTP_PROXY=10.48.127.169:8080 HTTPS_PROXY=10.48.127.1…
1.Compose安装 curl -L https://github.com/docker/compose/releases/download/1.1.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose 2.简单使用 创建compose工作目录 # mkdir composework 在compose工作目录内创建docker-c…
1.Slave主机docker需要开启2375端口 ubuntu: sudo vim /etc/default/docker DOCKER_OPTS="-H=unix:///var/run/docker.sock -H=0.0.0.0:2375" Centos: sudo vim /etc/sysconfig/docker other_args='-Htcp://0.0.0.0:2375 -H unix:///var/run/docker.sock' #centos6下使用 OPTIO…
k8s: https://www.rancher.cn/ swarm: https://github.com/dockersamples/docker-swarm-visualizer https://www.portainer.io/installation/ https://www.cnblogs.com/xishuai/p/docker-swarm.html…
前言 之前在总结docker machine的时候,当时对docker理解还不够深入,甚至还不知道 docker machine 与 docker swarm 的区别. 在查阅资料以及官方文档之后,今天基本彻底搞明白了.其实 docker machine 只是一个docker多节点的管理工具,它的作用是帮助我们在其他节点上安装docker.运行docker容器等:而 docker swarm 则是一个docker集群管理工具,有了它整个集群就能协同工作,从容器的角度来说有点像是openstack…
Docker容器集群管理主流方案 Swarm Docker公司自研发的集群管理系统. Kubernetes Google开源的一个容器集群管理系统,用于自动化部署.扩展和管理容器应用.也称为K8S Mesos Mesos是一个集群资源调度系统,对集群中的资源进行分配和管理.Marathon是运行在Mesos之上的一个服务管理框架,可管理容器生命周期. Docker容器集群管理主流方案 讲 Swarm.Kubernetes和Mesos简单比较: 复杂性 Swarm使用标准Docker接口,…
Swarm 简介 Docker Swarm 是 Docker 官方推出的容器集群管理工具,基于 Go 语言实现.代码开源在:https://github.com/docker/swarm 使用它可以将多个 Docker 主机封装为单个大型的虚拟 Docker 主机,快速打造一套容器云平台. Docker Swarm 是生产环境中运行 Docker 应用程序最简单的方法.作为容器集群管理器,Swarm 最大的优势之一就是 100% 支持标准的 Docker API.各种基于标准 API 的工具比如…
docker 集群管理三剑客: docker compose: Compose 是用于定义和运行多容器 Docker 应用程序的工具.通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务.然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务. docker machine: Docker Machine 是一种可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机. Docker Machine 也可以集中管理…
1.swarm是什么? Swarm是Docker公司自研发的容器集群管理系统,Swarm在早期是作为一个独立服务存在,在Docker Engine v1.12中集成了Swarm的集群管理和编排功能.可以通过初始化Swarm或加入现有Swarm来启用Docker引擎的Swarm模式.Docker Engine CLI和API包括了管理Swarm节点命令,比如添加.删除节点,以及在Swarm中部署和编排服务.也增加了服务栈(Stack).服务(Service).任务(Task)概念. 2.swarm…
Docker 集群环境实现的新方式 近几年来,Docker 作为一个开源的应用容器引擎,深受广大开发者的欢迎.随着 Docker 生态圈的不断建设,应用领域越来越广.云计算,大数据,移动技术的快速发展,加之企业业务需求的不断变化,紧随技术更新的步伐,导致企业架构要随时更改以适合业务需求.当前,越来越多的公司都已将以 Docker 为代表的容器技术用于企业级业务平台,比如:腾讯,京东,美团,新浪,阿里巴巴等互联网公司.数据的安全.Docker 容器的稳定运行是众多用户关注的,这就要求我们提供一套行…
近几年来,Docker 作为一个开源的应用容器引擎,深受广大开发者的欢迎.随着 Docker 生态圈的不断建设,应用领域越来越广.云计算,大数据,移动技术的快速发展,加之企业业务需求的不断变化,紧随技术更新的步伐,导致企业架构要随时更改以适合业务需求.当前,越来越多的公司都已将以 Docker 为代表的容器技术用于企业级业务平台,比如:腾讯,京东,美团,新浪,阿里巴巴等互联网公司.数据的安全.Docker 容器的稳定运行是众多用户关注的,这就要求我们提供一套行之有效的管理大型容器集群的整体解决方…
docker 集群 Docker 容器 移除所有的容器和镜像(大扫除) 用一行命令大扫除: docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a) 注:shell 中的 $() 和 `` 类似,会先执行这里面的内容,上面的脚本会出现如下 docker kill "pids" ; docker kill 在 docker 中用于停止容器,docker rm…
一.Swarm介绍 Swarm是Docker公司自研发的容器集群管理系统, Swarm在早期是作为一个独立服务存在, 在Docker Engine v1.12中集成了Swarm的集群管理和编排功能.可以通过初始化Swarm或加入现有Swarm来启用Docker引擎的Swarm模式. Docker Engine CLI和API包括了管理Swarm节点命令,比如添加.删除节点,以及在Swarm中部署和编排服务.也增加了服务栈(Stack).服务(Service).任务(Task)概念. 二.Swar…
Swarm 集群管理 简介 Docker Swarm 是 Docker 的集群管理工具.它将 Docker 主机池转变为单个虚拟 Docker 主机. Docker Swarm 提供了标准的 Docker API,所有任何已经与 Docker 守护程序通信的工具都可以使用 Swarm 轻松地扩展到多个主机.源码来源 支持的工具包括但不限于以下各项: Dokku Docker Compose Docker Machine Jenkins 原理 如下图所示,swarm 集群由管理节点(manager…
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一个服务器的selinux 设置为 disabled 设置方式: vi  /etc/selinux/config 将 SELINUX=disabled,然后保存,然后 执行命令: setenforce 0,使之生效. 2.同步每一台服务器的时间(此步骤很重要,会影响后面的软件环境运行) 3.每一台服务…
关于Docker Swarm更多的介绍请查看<Docker管理工具-Swarm部署记录> 一.环境配置 1.安装环境 # cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) # docker version Client: Version: 1.12.3 API version: 1.24 Go version: go1.6.3 Git commit: 6b644ec Built: OS/Arch: linux/amd64…
1. Mesos简介 1.1 Mesos Apache Mesos 是一个分布式系统的管理软件,对集群的资源进行分配和管理. Mesos主要由以下几部分组成: Master: 管理各Slave节点 Slave: 为集群提供资源 Framework: scheduler从Master请求资源,executor在Slave上执行任务 Slave节点上的每个executor是一个容器 官方文档: http://mesos.apache.org/documentation/latest/architec…
在读完<Docker技术入门与实践>这本书后,基本上已对Docker了有一些入门的理解,以及我们为什么要使用Docker 答:我们发现在实际工作中,通过openstack一旦把一个VM创建给开发,或者测试人员后,便很难再回收回来. openstack使用的KVM或Xen,均是采用声明内存的方式,并且内存是独占方式,无论开发和测试人员有没有用这台机器,它就占坑在那里, 所以开发和测试环境,最先出现的瓶颈应该就是内存不足,导致后续无法再开通开发或测试的虚拟机.常规小服务器开到十几.二十台左右就没法…