Minion

kubernetes(k8s)架构及核心概念

六月ゝ 毕业季﹏ 提交于 2020-05-07 22:12:51
K8s基础原理 k8s中文社区: https://www.kubernetes.org.cn/ k8s快速入门: http://www.dockone.io/article/932 简介 Kubernetes 简单的说就是一个容器集群编排工具 Kubernetes 是为生产环境而设计的容器调度管理系统,对于负载均衡、 服务发现、高可用、滚动升级、自动伸缩等容器云平台的功能要求有原生支持 一个K8s集群是由分布式存储(etcd)、服务节点(Minion, etcd现在称为Node)和控制节点(Master)构成的。所有的集群状态都保存在etcd中,Master节点上则运行集群的管理控制模块。Node节点是真正运行应用容器的主机节点,在每个Minion节点上都会运行一个Kubelet代理,控制该节点上的容器、镜像和存储卷等。 1. Master(管理节点)核心组件: API-Server ---k8s系统对外接口,提供Restful API供客户端和其他组件调用,支持水平扩展 Scheduler ---负责对资源进行调度,具体负责分配某个请求的Pod到某个节点上 Controller ---对不同资源的管理器,维护集群的状态,包括故障检测、自动扩展、滚动更新等 Etcd ---作为K/V数据库,存放集群状态和配置相关数据 2. Node(工作节点)核心组件: Kubelet ---

自动化运维工具 SaltStack 搭建

偶尔善良 提交于 2020-04-28 11:13:51
原文地址:https://www.ibm.com/developerworks/cn/opensource/os-devops-saltstack-in-cloud/index.html#N10072     因为有时候项目上线,需要将本地或者跳板机上的发布版本发布到服务器上,如果服务器数量少,可以一台一台手动拷贝,一旦遇到数量成百上千的服务器,手动拷贝就满足不了需求。于是可以通过自动化运维工具实现,有puppet、saltstack、ansible一些工具。 本文中介绍的架构,主要是在 CentOS7.4 上进行集中部署与测试。该架构主要涉及到三 个开源软件,分别是 Python 软件集,SaltStack 软件集和 ZeroMQ 消息队列软件。 在部署 SaltStack 软件之前,一定要先正确安装 python,因为 SaltStack 是由 python 所编写。不同版本的 SaltStack 需要使用不同版本的 Python 进行匹配,避免不必要的兼容性问题发生,本文将采用 python2.6.6。 SaltStack 软件是一个 C/S 架构的软件,通过管理端下发指令,客户端接受指令的方式进行操作。 ZeroMQ 是一款消息队列软件,SaltStack 通过消息队列来管理成千上万台主机客户端,传输指令执行相关的操作。而且采用 RSA key 方式进行身份确认,传输采用

Python之CMDB资产管理系统

徘徊边缘 提交于 2020-04-21 20:35:09
最近正好在给公司做CMDB资产管理系统,现在做的也差不多了,现在回头吧思路整理下。 CMDB介绍 CMDB --Configuration Management Database 配置管理数据库, CMDB存储与管理企业IT架构中设备的各种配置信息,它与所有服务支持和服务交付流程都紧密相联,支持这些流程的运转、发挥配置信息的价值,同时依赖于相关流程保证数据的准确性。 在实际的项目中,CMDB常常被认为是构建其它ITIL流程的基础而优先考虑,ITIL项目的成败与是否成功建立CMDB有非常大的关系。 一、需求分析 存储所有IT资产信息 数据可手动添加 硬件信息可自动收集 硬件信息可自动变更 可对其它系统灵活开放API API接口安全认证 资产类型: 服务器(物理机/虚拟机) 网络设备(路由器/交换机/AP) 机房设备(机柜/UPS) 软件资产(操作系统license) 资产属性: 品牌、型号、位置、用途、IP 供应商、厂商、合同、购买日期 二、架构设计 功能模块 资产搜集: 通过salt搜集各minion资产信息并统一汇报至CMDB 资产审核: 资产首次汇报需要人工审核 资产查询: 可多条件复杂查询 对外API: 方便其他系统调用资产接口信息,如运维自动化平台 自动变更: 资产变更更新及变更记录 自动监控: (计划) 告警自愈: (暂无) 什么是对外API:

1059 C语言竞赛 (20分)

懵懂的女人 提交于 2020-04-06 13:32:22
C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛。既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽: 0、冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……)。 1、排名为素数的学生将赢得最好的奖品 —— 小黄人玩偶! 2、其他人将得到巧克力。 给定比赛的最终排名以及一系列参赛者的 ID,你要给出这些参赛者应该获得的奖品。 输入格式: 输入第一行给出一个正整数 N(≤10​4​​),是参赛者人数。随后 N 行给出最终排名,每行按排名顺序给出一位参赛者的 ID(4 位数字组成)。接下来给出一个正整数 K 以及 K 个需要查询的 ID。 输出格式: 对每个要查询的 ID,在一行中输出 ID: 奖品 ,其中奖品或者是 Mystery Award (神秘大奖)、或者是 Minion (小黄人)、或者是 Chocolate (巧克力)。如果所查 ID 根本不在排名里,打印 Are you kidding? (耍我呢?)。如果该 ID 已经查过了(即奖品已经领过了),打印 ID: Checked (不能多吃多占)。 输入样例: 6 1111 6666 8888 1234 5555 0001 6 8888 0001 1111 2222 8888 2222 输出样例: 8888: Minion 0001: Chocolate 1111: Mystery Award 2222:

SaltStack 2014.1.4 Windows minion 端安装后无法启动的问题解决

帅比萌擦擦* 提交于 2019-12-09 19:08:40
今天尝试重新搭建一个SaltStack环境,在其中一台 win2003 sp2 x64 的机器上安装minion端时发现怎么也启动不了服务,查看日志,里面写 Failed to start service salt-minion. Program c:\salt\salt-minion.exe couldn't be launched. CreateProcess() failed: 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。 着实闹心,果断上网搜解...话说这几天不光google,连bing都不好使了...这还让不让人活了!! 终于在官方的问题库里找到了有价值的东西 https://github.com/saltstack/salt/issues/10716 看来是缺少运行时库引起的,跑到微软下载 Visual C++ 2008 Redistributable Package (x64) 安装,运行...OK..问题解决! 来源: oschina 链接: https://my.oschina.net/u/1271115/blog/272035

配置Kubernetes共享使用Ceph存储

我与影子孤独终老i 提交于 2019-12-07 12:33:42
目录 简要概述 环境测试 结果验证 简要概述 Kubernetes pod 结合Ceph rbd块设备的使用,让Docker 数据存储在Ceph,重启Docker或k8s RC重新调度pod 不会引起数据来回迁移。 工作原理无非就是拿到ceph集群的key作为认证,远程rbdmap映射挂载使用。那么就要启用一个基于key的secret资源,之后k8s pod指定要用的rbd就可以了。 环境测试 我的OS是ubuntu 14.04,一个master,两个minon 节点,一个镜像仓库服务,这样保证了k8s集群跑起来,这个过程就略过了。 1.内核升级 这里的ceph 版本装的是10.2.2,客户端内核过低会引起挂载失败,主要就是minion节点。 # curl -sSL https://get.docker.com | sh && service docker restart # apt-get install linux -image-4.4.0-22-generic && reboot 2.安装ceph-common,让minion调用rbd root@minion2:~# apt-get install python-rbd ceph-common 3.保存ceph-keyring和配置文件 root@minion2:~# ll /etc/ceph total 20 drwxr

92.自动运维介绍 saltstack安装、启动、配置认证

瘦欲@ 提交于 2019-12-06 06:17:46
24.1 自动化运维介绍 24.2 saltstack安装 24.3 启动saltstack服务 24.4 saltstack配置认证 24.1 自动化运维介绍 认识自动化运维 传统运维效率低,大多工作人为完成 传统运维工作繁琐,容易出错 传统运维每日重复做相同的事情 传统运维没有标准化流程 传统运维的脚本繁多,不能方便管理 自动化运维就是要解决上面所有问题 常见自动化运维工具 1.Puppet (www.puppetlabs.com) #出现的比较早 基于rubby开发,c/s架构,支持多平台,可管理配置文件、用户、cron任务、软件包、系统服务等。 分为社区版(免费)和企业版(收费),企业版支持图形化配置。 2.Saltstack(官网 https://saltstack.com,文档docs.saltstack.com ) 基于python开发,c/s架构,支持多平台,比puppet轻量,在远程执行命令时非常快捷,配置和使用比puppet容易,能实现puppet几乎所有的功能。 #使用的串行效率很快。而expect使用的并行(for循环,执行完一个在继续执行下一个,效率就会很慢) #除了这种cs架构(服务端客户端),也支持只装一个命令的 #支持的机器会更多 3.Ansible (www.ansible.com ) 更加简洁的自动化运维工具,不需要在客户端上安装agent

Saltstack 01 简介

只谈情不闲聊 提交于 2019-12-05 09:32:02
什么是saltstack Saltstack是基于python开发的一套C/S架构配置管理工具 使用SSL证书签方的方式进行认证管理 底层使用ZeroMQ消息队列pub/sub方式通信 – 号称世界上最快的消息队列ZeroMQ能快速在成千上万台主机上进行各种操作 – 采用RSA Key方式确认身份 主要功能 Saltstack最主要的两个功能是:配置管理与远程执行 Saltstack不只是一个配置管理工具,还是一个云计算与数据中心架构编排的利器 在友好地支持各大云平台之后,配合Saltstack的Mine实时发现功能可以实现各种云平台业务的自动扩展 通过只带api接口平台化调用 Saltstack架构 Saltstack基于C/S架构 – 服务器端称作Master – 客户端称作Minion 可以实现传统处理方式,即:客户端发送请求给服务器,服务器收到请求后处理请求,再将结果返回 也可以使用消息队列中的发布与订阅(pub/sub)服务模式 Saltstack工作机制 1.Master和Minion都以守护进程的方式运行 2.Master监听配置文件里定义的ret_port(接收minion请求),和publish_port(发布消息)的端口 3.当Minion运行时,它会自动连接到配置文件里定义的Master地址ret_port端口进行连接认证 4

saltstack 的 api

风格不统一 提交于 2019-12-04 09:43:07
上篇记录了 saltstack 的安装与配置和简单的使用,但是你会发现基本所有操作,都需要登录到 master机上进行命令行操作,虽然命令行才是最强大的,但是对于新手和入门时的学习使用和管理非常不友好。 然而 salt 已经为我们想到了,下面将为 saltstack 配置一个 web 界面,通过 web 界面来实现一些管理功能,由于 saltstack 官方本身时没有 web 界面的。 一、环境准备 系统为 centos7.2,python 版本为2.7 安装 salt-api [root@V1 ~]# yum install -y salt-api 二、具体配置 添加用户,用户 api 认证 [root@V1 ~]# useradd -M Amos 创建master的配置文件目录 [root@V1 ~]# mkdir /etc/salt/master.d 添加 api 的配置文件,同来配置 api 接口服务的端口和一些设定 [root@V1 ~]# cat /etc/salt/master.d/api.conf rest_cherrypy: port: 8000 debug: True #ssl_crt: /etc/pki/tls/certs/localhost.crt #ssl_key: /etc/pki/tls/certs/localhost.key disable_ssl:

yum指定某repo进行软件安装

匆匆过客 提交于 2019-12-04 07:59:58
命令 # yum install XXX --enablerepo=YYY XXX:需要要安装的软件。 YYY:相应源的“repo id”。 注意:建议安装的时候尽量选择同一个源,因为不同的源安装的软件可能会有冲突。 eg : 指定当前某个repo源进行salt-minion的安装。 1.查看当前repo源的情况 # yum repolist 2.开始安装 # yum -y install salt-minion --enablerepo=salt-latest 来源: https://my.oschina.net/comics/blog/3129022