一、kubernetes(简称k8s)

集群示意图

Kubernetes工作模式server-client,Kubenetes Master提供集中化管理Minions。部署1台Kubernetes Master节点和4台Minion节点。

Kubernetes集群组件:
  - etcd 一个高可用的K/V键值对存储和服务发现系统
  - flannel 实现夸主机的容器网络的通信
  - kube-apiserver 提供kubernetes集群的API调用
  - kube-controller-manager 确保集群服务
  - kube-scheduler 调度容器,分配到Node
  - kubelet 在Node节点上按照配置文件中定义的容器规格启动容器
  - kube-proxy 提供网络代理服务

二、实践

1、创建四台集群需要的环境

1.1docker安装

yum install -y docker    #yum 安装
docker version   #查看版本

1.1或者

1.安装依赖包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.设置阿里云镜像源
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3.安装 Docker-CE
重建 Yum 缓存。安装 Docker-CE ,请执行一下命令进行安装:
sudo yum install docker-ce
4.启动 Docker-CE
sudo systemctl enable docker
sudo systemctl start docker

  

1.2 centos镜像-Centos7安装

// 下载镜像
#docker run --privileged -itd --name centos --restart=always centos:7 /usr/sbin/init # docker pull centos 我用centos:7 -privileged 指定容器是否是特权容器。这里开启特权模式。
-it 启动互动模式。
--restart=always是随着docker启动
/usr/sbin/init 初始容器里的CENTOS。

  

1.3创建镜像

// 创建容器 (系统会给这个容器分配一个默认的名字)
docker run -itd --name=master -p 8001:8001 centos:7
docker run -itd --name=node1 -p 8002:8002 centos:7
docker run -itd --name=node2 -p 8003:8003 centos:7
docker run -itd --name=node3 -p 8004:8004 centos:7
docker run -itd --name=node4 -p 8005:8005 centos:7

  

1.4查看

  

1.数据卷
Pod中的容器之间共享数据或者持久化数据,可以使用数据卷。 2.应用程序健康检查
容器内服务可能进程堵塞无法处理请求,可以设置监控健康检查策略保证应用的健壮性。(默认情况下只保证容器本身正常,不会对应该程序状态检测) 3.复制应用程序实例
控制器维护Pod副本的数量,保证一个Pod或一组同类的Pod数量始终可用。 4.弹性伸缩
根据设定的指标(CPU利用率)自动缩放Pod副本数。 5.服务发现
使用环境变量或DNS服务插件保证容器中程序发现Pod入口的访问地址。 6.复制均衡
一组Pod副本分配一个使用的机器IP地址,负载均衡转发请求到后端容器。在集群内部其他Pod可以通过这个ClusterIP访问应用。 7.滚动更新
更新服务不中断,一次更新一个Pod,而不是同时删除整个服务 8.服务编排
通过文件描述部署服务,使得应用程序部署变得更有效。 9.资源监控
Node节点组件集成cAdvisor资源收集工具,可以通过Heapster汇总整个集群节点资源数据,然后存储到IfluxDB时序数据库中,再由Grafana展示。 10.提供认证和授权
支持属性访问控制(ABAC)、角色访问控制(RBAC)认证授权策略 

  

												

二、kubernetes的更多相关文章

  1. (二)Kubernetes kubeadm部署k8s集群

    kubeadm介绍 kubeadm是Kubernetes项目自带的及集群构建工具,负责执行构建一个最小化的可用集群以及将其启动等的必要基本步骤,kubeadm是Kubernetes集群全生命周期的管理 ...

  2. (十二)Kubernetes 认证、授权与准入控制

    访问控制概述 API Server作为Kubernetes集群系统的网关,是访问和管理资源对象的唯一入口:包括kube-controller-manager.kube-scheduler.kubele ...

  3. 001.Kubernetes简介

    一 Kubernetes概述 Kubernetes是一个全新的基于容器技术的分布式架构领先方案.Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg).在Docker ...

  4. kubernetes核心组件kube-proxy 学习总结

    一.  kube-proxy 和 service  kube-proxy是Kubernetes的核心组件,部署在每个Node节点上,它是实现Kubernetes Service的通信与负载均衡机制的重 ...

  5. kubernetes基本概念和术语

    一. kubernetes是什么 kubernetes是一个全新得基于容器技术得分布式架构领先方案.是google Borg得一个开源版本.Borg是google得一个久负盛名得内部使用得大规模集群管 ...

  6. Kubernetes --- 详细介绍和架构详解

    Kubernetes是一个跨主机集群的开源的容器调度平台,它可以自动化应用容器的部署,扩展和操作,提供以容器为中心的基础架构 目录 一. Kubernetes用途 二. Kubernetes特点 三. ...

  7. kubernetes核心组件kube-proxy - 运维笔记

    一.  kube-proxy 和 service  kube-proxy是Kubernetes的核心组件,部署在每个Node节点上,它是实现Kubernetes Service的通信与负载均衡机制的重 ...

  8. kubernetes核心组件kube-proxy

    一.  kube-proxy 和 service  kube-proxy是Kubernetes的核心组件,部署在每个Node节点上,它是实现Kubernetes Service的通信与负载均衡机制的重 ...

  9. 028.核心组件-API Server

    一 Kubernetes API Server原理 1.1 API Server功能 Kubernetes API Server的核心功能是提供Kubernetes各类资源对象(如Pod.RC.Ser ...

  10. 038.集群网络-K8S网络实现

    一 Kubernetes网络实现 1.1 Kubernetes网络优势 在实际的业务场景中,业务组件之间的关系十分复杂,微服务的理念更是让应用部署的粒度更加细小和灵活.为了支持业务应用组件的通信,Ku ...

随机推荐

  1. 在新建的python3环境下运行jupyter失败的原因

    在deeplearning中再运行jupyter notebook就出现了错误: (deeplearning) userdeMBP:~ user$ jupyter notebook -bash: ju ...

  2. Spring Security(二十三):6.5 The Default AccessDecisionManager(默认接入策略管理)

    This section assumes you have some knowledge of the underlying architecture for access-control withi ...

  3. Luogu2792 [JSOI2008]小店购物

    Luogu2792 [JSOI2008]小店购物 重题 bzoj4349 最小树形图 有 \(n\) 个物品,每个物品有价格 \(c_i\) 和所需个数 \(k_i\) ,所有物品必须恰好买 \(k_ ...

  4. Spring Cloud 入门教程(八): 断路器指标数据监控Hystrix Dashboard 和 Turbine

    1. Hystrix Dashboard (断路器:hystrix 仪表盘)  Hystrix一个很重要的功能是,可以通过HystrixCommand收集相关数据指标. Hystrix Dashboa ...

  5. Python股票分析系列——获得标普500的所有公司股票数据.p6

    该系列视频已经搬运至bilibili: 点击查看 欢迎来到Python for Finance教程系列的第6部分. 在之前的Python教程中,我们介绍了如何获取我们感兴趣的公司名单(在我们的案例中是 ...

  6. vue的高阶组件

    探索Vue高阶组件 探索Vue高阶组件的使用 Vue高阶组件的使用方法 高阶组件应用-组件重新实例化 深入理解React 高阶组件 探索Vue高阶组件 2018-01-05 探索Vue高阶组件 Vue ...

  7. poj 1486 纸张与数字匹配(二分图+割边处理)

    题目来源:http://poj.org/problem?id=1486 题意: 算出所有独一无二的字母与数字的组合,使二分图完全匹配 我以为所有点都要独一无二匹配时输出匹配方法 题解: 先得到一个完全 ...

  8. centos7 安装phpmyadmin

    1.先安装epel,不然安装pgpmyadmin时会出现找不到包. yum install epel-release rpm -ivh http://rpms.famillecollet.com/en ...

  9. Maven安装与环境配置(Windows)

    1.下载安装包 在Maven官网下载最新版的安装包:http://maven.apache.org/download.cgi 2.解压安装包 3.配置Maven环境变量 配置M2_HOME环境变量,指 ...

  10. 文本文档中各字母出现次数汇总(java)

    package 字母频率统计; import java.io.*; public class Inputfile { public static void main(String args[]) { ...