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. FreeDOS 实模式 保护模式

    FreeDOS可以运行在实模式或保护模式下,在启动FreeDOS时有4种运行模式选择: 前两种运行在保护模式下, 后两种运行在实模式下. 根据How to tell whether your CPU ...

  2. 2017-03-05 CentOS中配置守护服务(Supervisor)监听dotnet core web程序的运行

    我们继续解决上篇博客的问题,我这个人有个毛病,不喜欢遗留什么问题,也不喜欢问题说不明白,具体要怎么解决一定要详尽,因为经常自己遇到问题的时候,去翻别人的博客,就会遇到这样的问题,很苦恼,又说废话了. ...

  3. Unity 3D 离线协议

    在联网状态下,获得离线协议,然后导入到Untiy的协议管理器里. 以后在断网的情况下,也能离线使用Unity. 步骤: 1.生成 Request 文件.(Unity_v5.3.1f1.alf) 1) ...

  4. LeetCode OJ:Invert Binary Tree(反转二叉树)

    Invert a binary tree. 4 / \ 2 7 / \ / \ 1 3 6 9 to 4 / \ 7 2 / \ / \ 9 6 3 1 Trivia:This problem was ...

  5. hibernate.spring.xml

    <!-- 配置数据库连接池(c3p0) --> <!-- <bean id="dataSource" class="com.mchange.v2. ...

  6. 总结的一些MySQL数据库面试题

    1.sql语句应该考虑哪些安全性? 1.防止sql注入,对特殊字符进行转义,过滤或者使用预编译的sql语句绑定变量. 2.最小权限原则,特别是不要用root账户,为不同的类型的动作或者组建使用不同的账 ...

  7. 用javascript实现base64编码器以及图片的base64编码

    前面的话 base-64作为常见的编码函数,在基本认证.摘要认证以及一些HTTP扩展中得到了大量应用.在前端领域,也常常把图片转换为base-64编码在网络中传输.本文将详细介绍base64的原理及用 ...

  8. Excel合并计算

    office版本为2013,数据来源:我要自学网,曾贤志老师 计算之前,光标定在空白位置,不要定在数据源. 将汇总的类型居于首列(不可以跨区域选择,可以把不需要汇总的移动到其他列). 要有删除原来数据 ...

  9. C# 多线程参数传递

    之前使用多线程的时候,基本没有遇到过参数传递的情况,最近,接连遇到需要进行参数传递的多线程的使用.每次都要重新上网查一下,太麻烦了.为了方便以后的使用,就把经常参阅的网上资料记录下来. 原文地址如下: ...

  10. My97DatePicker 和转换 数据库中日期(/Date(1351699200000)/) 的格式

    一  转换 数据库中日期(/Date(1351699200000)/) 的格式: C#中转换日期格式 var date=com.CREATEDATETIME.ToString(); JavaScrip ...