一、简介

二、安装

三、测试

一、简介

什么是Func?

Func是由红帽子公司以Fedora平台构建的统一网络控制器,是为解决集群管理、监控问题而设计开发的系统管理基础框架。它是一个能有效简化多服务器系统管理工作的工具,它易于学习,使用和扩展,功能强大,只需要极少的配置和维护操作。Func分为master和slave两部分,master为主控端,slave为被动端。

Func与Saltstack在主,被控端建立信任机制是一样的,都是采用了证书+签名的方式。

二、安装

2.1 业务环境说明

角色

主机名

IP

Master

controller

192.168.128.166

Minion

compute

192.168.128.165

系统:CentOS Linux release 7.4.1708 (Core)

2.2 安装Func

1.主控端服务器安装

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

[root@controller ~]# yum install -y func

[root@controller ~]# systemctl enable certmaster

[root@controller ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.128.166   controller

192.168.128.165   compute

修改配置文件/etc/certmaster/minion.conf把cermaster改为主控端的主机名

[root@controller ~]# vim /etc/certmaster/minion.conf

# configuration for minions

[main]

certmaster = controller

certmaster_port = 51235

log_level = DEBUG

cert_dir = /etc/pki/certmaster

启动证书服务:

[root@controller ~]# service certmaster start

Redirecting to /bin/systemctl start certmaster.service

[root@controller ~]# ss -lnt|grep 51235

LISTEN     0      5            *:51235                    *:*                 

添加防火墙:

[root@controller ~]# iptables -I INPUT -s 192.168.128.0/24 -p tcp --dport 51235 -j ACCEPT   

[root@controller ~]# iptables-save

2.被控端服务器安装

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

[root@compute ~]# yum install -y func

[root@compute ~]# systemctl enable funcd

[root@compute ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

# controller

192.168.128.166   controller

192.168.128.165   compute

修改配置文件/etc/certmaster/minion.conf把cermaster参数改为主控端的主机名,以便指向证书服务器发出签名请求,建立信任关系。

[root@compute ~]# vim /etc/certmaster/minion.conf

# configuration for minions

[main]

certmaster = controller

certmaster_port = 51235

log_level = DEBUG

cert_dir = /etc/pki/certmaster

修改/etc/func/minion.conf的minion_name参数,作为被控主机的唯一标识,一般使用主机名,配置如下:

[root@compute ~]# vim /etc/func/minion.conf

# configuration for minions

[main]

log_level = INFO

acl_dir = /etc/func/minion-acl.d

listen_addr =

listen_port = 51234

minion_name = compute

method_log_dir = /var/log/func/methods/

启动func服务:

[root@compute ~]# service funcd start

[root@compute ~]# iptables -I INPUT -s 192.168.128.166 -p tcp --dport 51234 -j ACCEPT

You have new mail in /var/spool/mail/root

[root@compute ~]# iptables-save

三、测试

3.1证书签名

在主控端运行certmaster-ca –list获取当前请求证书签名的主机清单,如:

[root@controller ~]# certmaster-ca --list

Compute

证书签名通过certmaster-ca –sign命令完成所有主机的签名操作,如:

[root@controller ~]# certmaster-ca --sign `certmaster-ca --list`

/var/lib/certmaster/certmaster/csrs/compute.csr signed - cert located at /var/lib/certmaster/certmaster/certs/compute.cert

Func也提供了类似Saltstack自动签名的机制,通过修改autosign来实现,如:

[root@controller ~]# vim /etc/certmaster/certmaster.conf

# configuration for certmasterd and certmaster-ca

[main]

autosign = yes

使用func '*' list_minions来查看已经完成签名的主机名,如:

[root@controller ~]# func '*' list_minions

Compute

校验安装、任务签名是否正确,通过func '*' ping命令来测试,如

[root@controller ~]# func '*' ping

[ ok ... ] compute

删除(注销)签名主机使用certmaster-ca –c hostname

对已经删除的被控端,要重新注册,先删除被控端/etc/pki/certmaster/下的证书文件,再运行certmaster-request进行证书请求,如:

[root@compute ~]# rm -fr /etc/pki/certmaster/compute.*

[root@compute ~]# /usr/bin/certmaster-request

统一网络控制器Func的更多相关文章

  1. 网络控制器intel 82599, powerpc 830的BD描述符结构

    一.Intel 82599的BD结构 1.文档名称“82599-10-gbe-controller-datasheet.pdf”,可以从intel官网上下载. https://www.intel.cn ...

  2. Pyhton开源框架(加强版)

    info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...

  3. Python开源框架

    info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...

  4. Linux 运维入门到跑路书单推荐

    一.基础入门 <鸟哥的Linux私房菜基础学习篇>:最具知名度的Linux入门书<鸟哥的Linux私房菜基础学习篇>,全面而详细地介绍了Linux操作系统. https://b ...

  5. 云时代IDC自动化运维的几大神器

    云时代IDC自动化运维的几大神器 2016年09月18日 10:27:41 天府云创 阅读数:1715   版权声明:本文为EnweiTech原创文章,未经博主允许不得转载. https://blog ...

  6. Python自动化运维:技术与最佳实践 PDF高清完整版|网盘下载内附地址提取码|

    内容简介: <Python自动化运维:技术与最佳实践>一书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵.深和实践角度探讨Python在运维领域应用的著作:一方面本书的 ...

  7. Python自动化运维 技术与最佳实践PDF高清完整版免费下载|百度云盘|Python基础教程免费电子书

    点击获取提取码:7bl4 一.内容简介 <python自动化运维:技术与最佳实践>一书在中国运维领域将有"划时代"的重要意义:一方面,这是国内第一本从纵.深和实践角度探 ...

  8. Func系列1:安装配置

    简介 Func是由红帽子公司以Fedora平台构建的统一网络控制器,是为解决集群管理.监控问题而设计开发的系统管理框架.它是一个能有效简化多服务多服务器系统管理工作的工具,它易于学习.使用和扩展,功能 ...

  9. centos7部署func

    Func(Fedora Unitied Network Controller)是红帽公司以Fedora平台构建的统一网络控制器,是为解决集群管理.监控问题而设计开发的系统管理基础框架.它是一个能有效简 ...

随机推荐

  1. 【ASP.NET Core分布式项目实战】(一)IdentityServer4登录中心、oauth密码模式identity server4实现

    本博客根据http://video.jessetalk.cn/my/course/5视频整理 资料 OAuth2 流程:http://www.ruanyifeng.com/blog/2014/05/o ...

  2. 新手必须掌握的Linux命令

    一.命令组成 一个完整的命令通常由  命令名称 [命令参数] [命令对象]  组成. 注意:命令名称.命令参数.命令对象之间用空格键隔开. 二.系统工作命令 查看主机名称 echo $HOSTNAME ...

  3. Java集合源码分析(四)HashMap

    一.HashMap简介 1.1.HashMap概述 HashMap是基于哈希表的Map接口实现的,它存储的是内容是键值对<key,value>映射.此类不保证映射的顺序,假定哈希函数将元素 ...

  4. hackerrank Ticket

    传送门 题意:n个人排队买票,要把他们拆成k条队到k个窗口买,可以有队伍为空,每条队的顺序保持拆之前的顺序.如果某人和他前一个人买的票相同,就可以打八折,求最小花费. 题解:拆成k条队意味着只有[n- ...

  5. 洛谷 2634&&BZOJ 2152: 聪聪可可【点分治学习+超详细注释】

    2152: 聪聪可可 Time Limit: 3 Sec  Memory Limit: 259 MBSubmit: 3435  Solved: 1776[Submit][Status][Discuss ...

  6. Codeforces-8VC Venture Cup 2016-Elimination Round-626A.暴力 626B.水题 626C.二分

    A. Robot Sequence time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  7. 最小生成树&最短路基础算法总结

    [最短路问题] 解决最短路问题有以下算法:Dijkstra算法,Bellman-Ford算法,Floyd算法,和SPFA算法和启发式搜索算法A*; 每个算法都有它的特点可以解决某些特定的问题,例如:F ...

  8. python写一个邮箱伪造脚本

    前言: 原本打算学php MVC的思路然后写一个项目.但是贼恶心, 写不出来.然后就还是用python写了个邮箱伪造. 0x01 第一步先去搜狐注册一个邮箱 然后,点开设置,开启SMTP服务. 当然你 ...

  9. Centos7安装docker-compse踩过的坑

    一.概要 ​ 本文,我们介绍如何在centos7环境下安装docker-compose, 记录下安装过程步骤以及遇到的问题还有解决办法. 二.安装方式 1.官方安装方式 sudo curl -L ht ...

  10. 【深度学习系列】CNN模型的可视化

    前面几篇文章讲到了卷积神经网络CNN,但是对于它在每一层提取到的特征以及训练的过程可能还是不太明白,所以这节主要通过模型的可视化来神经网络在每一层中是如何训练的.我们知道,神经网络本身包含了一系列特征 ...