一、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安装

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

1.1或者

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

  

1.2 centos镜像-Centos7安装

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

  

1.3创建镜像

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

  

1.4查看

  

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

  

  1.  

二、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. extjs 中的一些鲜为人知的属性(深渊巨坑)

    1. new Ext.form.FormPanel  组件中,去除边框属性为:baseCls:'my-panel-no-border', 2.当 new Ext.form.FormPanel  嵌套b ...

  2. 利用BBED恢复数据文件头

    转载请注明出处:http: @@@@@@@利用BBED模拟损坏5文件1号块(文件头) BBED block block ) Block: Dba:0x01400001 ---------------- ...

  3. Apache Commons Codec的Base64加解密库

    下载地址:http://commons.apache.org/proper/commons-codec/download_codec.cgi import org.apache.commons.cod ...

  4. A2D Framework - 看如何精简业务逻辑 - 缓存子系统

    A2D中一项功能是关于Cache的,能够将判断.获取.删除cache的代码缩减到最少量,如下是Order业务逻辑的demo示范: interface IOrder { [Cachable()] str ...

  5. How to Install MemSQL

    MemSQL runs natively on 64-bit Linux operating systems. Your system hardware must have at least 4 CP ...

  6. Macaca初体验-Android端(Python)

    前言: Macaca 是一套面向用户端软件的测试解决方案,提供了自动化驱动,周边工具,集成方案.由阿里巴巴公司开源:http://macacajs.github.io/macaca/ 特点: 同时支持 ...

  7. Python练习-2

    #1.使用while循环输入 1 2 3 4 5 6 8 9 10 count = 0 while count < 10: count += 1 # count = count + 1 if c ...

  8. E. Superhero Battle

    链接 [https://codeforces.com/contest/1141/problem/E] 题意 怪物开始的生命值,然后第i分钟生命值的变化 问什么时候怪物生命值为非正 分析 有一个巨大的坑 ...

  9. 出题人的RP值(牛客练习赛38--A题)(排序)

    链接:https://ac.nowcoder.com/acm/contest/358/A来源:牛客网 题目描述 众所周知,每个人都有自己的rp值(是个非负实数),膜别人可以从别人身上吸取rp值. 然而 ...

  10. T-shirt buying CodeForces - 799B (小根堆+STL)

    题目链接 思路: 由于题目说了只有1,2,3,三种色号的衣服,然后开三个对应色号的小根堆, 我是根据pair<int,int> 创建了一个以价格小的优先的优先队列. pair中的另外一个i ...