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. java从小白到架构师大牛必看书籍

    一.基础类 1.<ThinkingJava>,入门第一位是建立正确的概念. 2.<Core Java>,我没系统读过,这本书更贴近实践,更多API的介绍,同样,更新也更频繁. ...

  2. C++(十四) — 常用快捷键总结

      快捷键设置方法:https://blog.csdn.net/wrzfeijianshen/article/details/53230789 https://blog.csdn.net/wrzfei ...

  3. 项目管理理论与实践(4)——UML应用(上)

    本篇文章介绍UML的相关知识.参考<UML从入门到精通> 一.UML综述 1. UML简介 统一建模语言(UML)是一个通用的可视化建模语言,用于对软件进行描述.可视化处理.构造和建立软件 ...

  4. C#中的线程(二)线程同步

    C#中的线程(二)线程同步   Keywords:C# 线程Source:http://www.albahari.com/threading/Author: Joe AlbahariTranslato ...

  5. New Concept English three (51)

    22 76 Predicting the future is notoriously difficult. Who could have imagined, in the mid 1970s, for ...

  6. Leetcode 969. Pancake Sorting

    每次找到当前最大数,转两下把最大数转到最右边.重复这个操作,直到都转完. 时间复杂度O(n**2) class Solution(object): def pancakeSort(self, A): ...

  7. 安装Aptana时检测不到已经安装的Nodejs

    1.环境前提 已经安装了Git和Nodejs,在安装Aptana时任然提示如下错误: Failed to correctly acquire installer_nodejs_windows.msi ...

  8. ICE的Glacier2使用

    1.使用Glacier2的步骤:   A.编写一个Glacier2的配置文件,参见样例   B.设置Glacier2的访问鉴权(密码或者证书),passwords文件每行样例"test xx ...

  9. tag问题

  10. Django之用户认证系统分析

    Django自带一个用户认证系统,这个系统处理用户账户.组.权限和基于cookie的会话,下面将通过分析django源码的方式仔对该系统进行详细分析 1. 用户模型 在django.contrib.a ...