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

一、以下为演示环境

角色

系统

主机名

IP

Master

Centos7

Master

172.16.1.206

Slave

Centos7

Node1

172.16.1.207

salve

Centos7

Node2

172.161.208

二、Func的安装

  1、 在主控端安装Func

    1)  安装func

$ sudo yum install epel-release –y
$ sudo yum install func -y

    2)  主控端hosts配置

$ sudo vim /etc/hosts

----------------------------------------->

172.16.1.201     master
172.16.1.202 node1
172.16.1.203 node2

    3)  修改/etc/certmaster/minion.conf的certmaster参数,指向证书服务器

$ sudo vim /etc/certmaster/minion.conf

----------------------------------------------------------->

[main]
certmaster = master            //此处的master为主被端主机名
certmaster_port = 51235
log_level = DEBUG
cert_dir = /etc/pki/certmaster

    4)  重启证书服务

$ sudo systemctl restart certmaster
$ sudo systemctl start funcd
$ sudo systemctl enable funcd

    5)  开放51235端口

$ sudo iptables –I INPUT –s 172.16.1.0/ –p tcp - - dport  –j ACCEPT

  至此,主控端配置完毕。

  2、 被控端安装,安装主机分别为node1和node2

    1)  安装func

 $ sudo yum install epel-release –y
$ sudo yum install func -y

    2)  配置hosts信息

$ sudo vim /etc/hosts

---------------------------------------->

 172.16.1.201     master

    3)  修改/etc/certmaster/minion.conf的certmaster参数

$ sudo vim /etc/certmaster/minion.conf

------------------------------------------------------------->

[main]

certmaster = master

certmaster_port = 51235

log_level = DEBUG

cert_dir = /etc/pki/certmaster

    4)  修改/etc/func/minion.conf的minion_name参数

 $ sudo vim /etc/func/minion.conf

------------------------------------------------------------>

 # configuration for minions

 [main]
log_level = INFO
acl_dir = /etc/func/minion-acl.d listen_addr =
listen_port =
minion_name = node1
method_log_dir = /var/log/func/methods/

    5)  启动func服务

 $ sudo systemctl start funcd
$ sudo systemctl enable funcd

    6)  开放51234端口

$ sudo iptables –I INPUT –s 172.16.1.0/24 –p tcp - -dport 51234 –j ACCEPT

  至此,被控端配置完毕。两台被控端配置相似,另一台不再赘述。

  3、 证书签名

    1) 获取主机清单

$ sudo certmaster-ca --list

  2) 证书签名

$ sudo certmaster-ca --sign node1
$ sudo certmaster-ca --sign node2

 #一键完成所有主机的签名

$ sudo certmaster-ca –sign `certmaster-ca --list`

    3) 查看已签名的主机名

 $ sudo func “*” list_minions

    4) 删除主机签名

 $ sudo certmaster-ca –c node1

    5) Func也可使用自动签名机制

$ sudo vim /etc/certmaster/certmaster.conf

------------------------------------------------------------------>

autosign=yes

三、Func常用模块及API

  1、 command模块

$ sudo func ‘node1’ call command run “hostname”

centos7部署func的更多相关文章

  1. gRPC学习之一:在CentOS7部署和设置GO

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  2. [原]CentOS7部署osm2pgsql

    转载请注明原作者(think8848)和出处(http://think8848.cnblogs.com) 部署Postgresql和部署PostGis请参考前两篇文章 本文主要参考GitHub上osm ...

  3. centos7 部署ssserver

    centos7 部署shadowsocks服务端 为什么要选centos7? 以后centos7 肯定是主流,在不重要的环境还是尽量使用新系统吧 centos7 的坑 默认可能会有firewall 或 ...

  4. centos7 部署 docker compose

    =============================================== 2019/4/10_第1次修改                       ccb_warlock == ...

  5. centos7 部署 docker ce

    =============================================== 2019/4/9_第1次修改                       ccb_warlock === ...

  6. centos7 部署 open-falcon 0.2.0

    =============================================== 2019/4/29_第3次修改                       ccb_warlock 更新 ...

  7. centos7 部署 docker、shipyard

    =============================================== 2019/4/9_第3次修改                       ccb_warlock 更新说 ...

  8. centos7 部署 docker swarm

    =============================================== 2019/4/9_第3次修改                       ccb_warlock 更新说 ...

  9. CentOS7部署Nginx

    CentOS7部署Nginx 1.准备工作 Nginx的安装依赖于以下三个包,意思就是在安装Nginx之前首先必须安装一下的三个包,注意安装顺序如下: 1 SSL功能需要openssl库,直接通过yu ...

随机推荐

  1. R语言基础入门之二:数据导入和描述统计

    by 写长城的诗 • October 30, 2011 • Comments Off This post was kindly contributed by 数据科学与R语言 - go there t ...

  2. 深度学习—BN的理解(一)

    0.问题 机器学习领域有个很重要的假设:IID独立同分布假设,就是假设训练数据和测试数据是满足相同分布的,这是通过训练数据获得的模型能够在测试集获得好的效果的一个基本保障.那BatchNorm的作用是 ...

  3. 使用memcache 心得和注意事项

    内存分配机制:首先要说明的是Memcached支持最大的存储对象为1M.它的内存分配比较特殊,但是这样的分配方式其实也是对于性能考虑的,简单的分配机制可以更容易回收再分配,节省对于CPU的使用.这里用 ...

  4. Handsontable 的数据保存(增删改查+导出excel)

    项目用到handsontable 插件 根据官网 API写的handsontable初始化, 数据展示, ajax请求, 参数封装, Controller参数接受 全局容器 var AllData = ...

  5. ES6环境配置

    1.电脑有node环境,运行npm init 2.cnpm i -D babel-core babel-preset-es2015 babel-preset-latest 3.创建.babelrc文件 ...

  6. app-前端性能测试

    前端性能测试,主要分为七个部分: 启动时间.CPU.流量.电量.内存.FPS(每秒钟的帧数).过度渲染 主要测试的内容: 启动时间:主要测试app在启动过程中的耗时情况 CPU:主要测试app在使用过 ...

  7. LeetCode OJ:Serialize and Deserialize Binary Tree(对树序列化以及解序列化)

    Serialization is the process of converting a data structure or object into a sequence of bits so tha ...

  8. HTML实用案例(1)—— 左侧菜单,右侧内容的布局(带左侧菜单点击隐藏显示效果)

    效果图 代码部分 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" ...

  9. libmodbus相关资料整理

    /****************************************************************************** * libmodbus相关资料整理 * ...

  10. java06-数组动手动脑

    1.阅读QiPan.java示例程序了解如何利用二维数组和循环语句绘制五子棋盘. 定义了一个私有的二维数组作为棋盘.并定义了长度.之后打印符号使之连接起来作为棋盘在控制台显示.建立缓冲区用来读取输入的 ...