kubernetes概念之六:Volume&Persistent Volume&Namespace&Annotation
一:VolumeVolume是Pod中能够被多个容器访问的共享目录。Kubernetes的Volume概念,用途和目的与Docker的Volume比较类似,但两者不能等价。Kubernetes中的Volume与Pod的生命周期相同,但与容器的生命周期不相关。当容器终止或者重启时,Volume中的数据也不会丢失。二:Persistent VolumeVolume是定义在Pod上的,属于“...
kubernetes概念之五:Service
一:Service概念Kubernetes里的每个Service其实就是微服务架构中的一个微服务。 它产生的背景在于:一是Pod的IP地址不是固定的,需要一个代理来确保需要使用Pod的应用不需要知道pod的真实IP地址;另一个是RC创建多个Pod副本时,需要一个代理来为这些pod做负载均衡。Service 主要由一个IP地址和一个label selector组成...
kubernetes概念之四:Replication Controller&Replica Sets&Deployments
一:Replication ControllerRC是kubernetes的核心概念之一。它定义了一个期望的场景即声明某种Pod的副本数量在任意时候都要符合某个预期值。 它由以下几个部分组成:1.Pod期待的副本数(replicas)2.用于筛选目标Pod的Label Selector3.当Pod的副本数量小于预期数量的时候,用于创建新Pod的Pod模板。当我们定义了一个...
kubernetes概念之三:Label和Label Selector
一:什么是LabelLabel是Kubernetes系列中另外一个核心概念。是一组绑定到K8s资源对象上的key/value对。同一个对象的labels属性的key必须唯一。label可以附加到各种资源对象上,如Node,Pod,Service,RC等。通过给指定的资源对象捆绑一个或多个不用的label来实现多维度的资源分组管理功能,以便于灵活,方便地进行资源分配...
kubernetes概念之二:Pod
一:Pod 是什么Pod是Kubernetes的最重要最基本的概念。它是能够被创建,调度和管理的最小部署单元。一个Pod代表集群中一个运行的进程。二:Pod的组成一个Pod由一个特殊的根容器Pause容器和若干个紧密相关的用户业务容器组成。Pause容器作为Pod的根容器,它的状态代表整个容器组的状态。Pod里的多个容器共享Pause容...
kubernetes概念之一:概述
一:kubernetes集群的架构一个kubernetes集群都至少由一个Master节点和若干个Node节点组成。Master节点是集群控制节点,负责整个集群的管理和控制,基本上Kubernetes所有的控制命令都是发给它,它来负责具体的执行过程。由于Master节点的重要性,它通常会独占一个物理机或虚拟机。Master节点外的其它机器被称为Node...
微服务架构简介
一:传统服务架构一个系统由多个业务聚合而成,由多个java packages 组合成一个WAR包部署到应用服务器上(如Tomcat). 久而久之,系统越来越复杂,给开发,测试,部署,运维都带来很大的问题;常常有牵一发而动全身的情况出现。二: 微服务架构不同的业务,不同的服务拆分成不同的模块,独立部署。同一模块,根据业...
Dockerfile ADD和COPY指令
当从Dockerfile 中 build Docker 镜像时候,你可以选择两种指令来添加本地的目录或者文件到你的镜像中:ADD和COPY。这两种指令格式基本相同并且基本是同样的东西.ADD <src>... <dest>COPY <src>... <dest>在这两种情况中,目录或者文件(<src>)被复制并添加到容器的文件系统中的指定路径(<dest...
Dockerfile CMD和ENTRYPOINT指令
Dockerfile 用于自动化构建一个docker镜像。Dockerfile里有 CMD 与 ENTRYPOINT 两个指令,其功能有些许相似,这里做一下说明:一: CMD指令The main purpose of a CMD is to provide defaults for an executing container.CMD在容器运行的时候提供一些命令及参数,用法如下:CMD ["executable","param1","param...
Docker+GitLab+Jenkins+kubernetes实现DevOps 持续化集成和持续化部署概念图
Docker Volume介绍
一:简介Docker镜像是由多个文件系统(只读层)叠加而成.当我们启动一个容器的时候,Docker会加载镜像层并在其上添加一个读写层.如果运行中的容器修改了现有的一个已存在的文件,那该文件将会从读写层下的只读层复制到读写层,该文件的只读版本仍然存在,只是已经被读写层中该文件的副本所隐藏.当删除Docker容器,并通过该镜像重...
Docker 基本操作
1.下载镜像docker pull centos:latest ( [仓库名]:[版本号])2.创建容器docker run -t -i centos /bin/bash3.查看本地镜像docker images4.删除镜像docker rmi [镜像标签]/[镜像ID]5.查看容器docker ps -a 6.删除容器docker rm [容器ID]7.启动容器docker start ...
BOSS系统技术架构
Spring 4+ElasticSearch 集成
一: ElasticSearch 基本概念INDEX:这是ES存储数据的地方,类似于关系数据库的DATABASE。Document TYPE:嗯,类似关系数据库的表,主要功能是将完全不同SCHEMA(这个概念以后会讲到,不急)的数据分开,一个INDEX里面可以有若干个Document TYPE。Document:好吧,这个类似关系数据库的一行,在同一个Document TYPE...
Elasticsearch 参数配置说明
Elasticsearch的config文件夹里面有两个配置文件:elasticsearch.yml和logging.yml,第一个是es的基本配置文件,第二个是日志配置文件,es也是使用log4j来记录日志的.cluster.name: gh-cluster配置es的集群名称,默认是elasticsearch,在一个集群内,各节点拥有相同的custer.name.node.name: "gh-cluster-node-01"...
Elasticsearch 集群搭建
一:资源集群: gh-cluster节点1:gh-cluster-node-01 10.44.66.2节点2:gh-cluster-node-02 10.116.148.103节点3:gh-cluster-node-03 10.170.142.108Elasticsearch:elasticsearch-2.4.4.tar.gz安装目录:/mnt/gh二:安装 Elasticsearch1.创建相关文件目录 ...
ZooKeeper分布式任务调度中心
一: 背景软件系统中,定时任务往往不可或缺,大家可能会采用Spring quartz 建立定时任务模块。 当任务模块进行了分布式部署,通常会出现定时任务重复执行的情况。 怎么避免这种情况呢,是否可以构建一个任务注册中心,Quartz负责注册任务,但不具体执行任务内的业务逻辑。任务注册中心解决任务重复注册的问题,同...
Spring 4 + ZooKeeper 配置中心
一:ZooKeeper 连接配置类点击(此处)折叠或打开@Configuration@PropertySource("classpath:context-datasource.properties")public class ZooKeeperElConfig { @Value("${zookeeper.cluster.url}")...
ZooKeeper集群搭建
一:服务器资源ZooKeeper server.1 10.243.3.18ZooKeeper server.2 10.243.3.17ZooKeeper server.3 10.243.3.27二:下载ZooKeeper安装文件zookeeper-3.4.10.tar.gz三:将安装文件解压到指定目录tar -xvf zookeeper-3.4.10.tar.gz四:配置文件cp zoo_sample.cfg zoo.cfg...
mairadb+galera+haproxy+keepalived实现mysql负载均衡与高可用
一:服务器资源Haproxy+keepalived node1 10.116.19.251Haproxy+keepalived node2 10.44.90.201mariadb+galera node1 10.44.66.2mariadb+galera node2 10.116.148.103mariadb+galera node3 10.170.14...