一。Foreman环境:

foreman建好后,系统默认创建了3个环境:production,development,common,

1. production:

在puppet.conf里已经定义其调用的路径,是foreman默认使用的环境,通过foreman-proxy验证后的cliente均默认会进入这个环境

2. development:

在puppet.conf里已经定义其调用的路径,新装的foreman的web界面是看不到,其modules目录下有模块后,通过导入模块才能

将此环境导入到foreman

3. common:

在puppet.conf里没有定义,如果需要用到common这个环境,则可以在puppet.conf里创建其调用的路径,如下:

vi /etc/puppet/puppet.conf,添加以下:

[common]
          modulepath = /etc/puppet/environments/common/modules:/etc/puppet/environments/common:/usr/share/puppet/modules
          config_version =

新装的foreman的web界面是看不到,其modules目录下有模块后,通过导入模块才能将此环境导入到foreman

二。 建模块:

1. 进入 development 环境的模块目录

# cd /etc/puppet/environments/development/modules

2. 创建"修改root密码"模块的三个组成目录:

# mkdir -p chpasswd/{manifests,templates,files}

注意: 此处的 chpasswd文件夹的名字必须和后面新建的类的名字一致,否则client会报找不到类的错误提示

3. 进入写puppet类的目录:

# cd chpasswd/manifests/

4. 创建init.pp文件:

# touch init.pp,并添加以下文件:

class chpasswd {

user { "root":
                                             password  => '$6$6TXhJimPoQrOe52Y$XxFjwJ6s5LZ1',

}

                                  }

5. 检查语法

# puppet parser validate init.pp

6. 客户端模拟执行:

puppet agent --test  --noop

三。 把"修改root密码"模块导入到foreman里面

1. 从“环境”处导入:点击“更多”-》配置-》环境

2. 点击右上角的 “从server1.xxx.com导入”按钮

备注:此处我用了两个环境,development是测试环境,production是生产环境,在这个另个环境里

我均创建了"chpasswd模块",所以截图上foreman的两个环境里都会检测到puppet新建的类

3. 选中,点击更新,并到 puppet类里去查看:

Foreman--Puppet类导入的更多相关文章

  1. tp5.1 phpspreadsheet- 工具类 导入导出(整合优化,非原创,抄一抄,加了一些自己的东西,)

    phpspreadsheet-工具类 导入导出(整合优化,非原创,抄一抄,加了一些自己的东西)1. composer require phpoffice/phpspreadsheet2. 看最下面的两 ...

  2. Eclipse构建Activiti项目,类导入提示功能不能使用

    Eclipse新建一个新的Activiti项目(Activiti项目默认使用Maven管理项目),接着配置好pom.xml添加需要的jar包依赖,引入依赖之后发现在测试类中没有提示导入所需要的包的选项 ...

  3. Python 学习笔记16 类 - 导入

    我们在编码的过程中,可能会给对象添加越来越多的功能,即使我们使用了继承,也不可避免的使文件越来越臃肿. 为了避免这种情况, Python允许将对象存储在模块中,并且可以在其他模块中进行导入. 其实这和 ...

  4. python 类 --导入类

    导入类 1.1.导入单个类 如何导入单个类 以上一节为例,编写一个car.py程序 编写一个新程序my_car.py 希望在my.car.py文件中直接使用car.py中的函数,使用from car ...

  5. Centos 7 Puppet之foreman介绍安装测试

    一.简介 1.前言(引用一下网上的资料) 随着企业的 Linux 系统数量越来越多,管理问题便成为一个相对麻烦并需要急 迫解决的问题,这里有 2 个 Key Message:1)统一管控体系非常重要, ...

  6. Centos7+puppet+foreman,实现部署OS

    一.简介 1. 需要实现操作系统的部署 foreman提供了一个基于kickstart的部署工具,输入一台服务器的部署网卡的mac地址和hostname.ip等信息,就能自动的帮我们部署完,并且,还可 ...

  7. 【Python】导入类

    导入单个类 随着不断添加类,可能会使文件变得很长,那么此时,需要将类存储在模块中,然后在主程序导入类即可 book.py class Book(): '''模拟一本书''' def __init__( ...

  8. JAVA导入支持类

    导入支持类(可以是JDK基础类或者自己编写的类),可以供本类调用方法和属性. java中import用法: 1.单类型导入(single-type-import),例如import java.io.F ...

  9. MinGW dll导入导出类

    dll不仅可以导入导出函数,还可以导入导出类.这篇文章就来介绍如何将类导入dll中并导出. 首先我们建立一个名为dll.cpp的文件(又是这种破名字),里面写上: #include <iostr ...

随机推荐

  1. windows下tomcat切割日志按照日期输出

    windows下tomcat默认不会把应用的日志信息输出在日志文件中的,只会在控制台打印. 解决方法: 1,下载工具cronolog-1.6.1-win32.zip,并解压. 2,把cronolog. ...

  2. CMakeLists实战解读--YouCompleteMe

    原文转载自:Ricky.K http://www.cnblogs.com/rickyk/p/3877238.html 个人一直有一个想法,就是想出一系列关于CMakeLists.txt国外经典例子的实 ...

  3. java中的synchronized关键字

    参考:http://www.cnblogs.com/devinzhang/archive/2011/12/14/2287675.html 多线程并发问题的根因: 在一个对象中有一个变量i=0,有两个线 ...

  4. C# Json数据反序列化为Dictionary并根据关键字获取指定值

    Json数据: { "dataSet": { "header": { "returnCode": "0", " ...

  5. 数据库降级-从sqlserver 2008 降到 2005

    前天遇到一个问题,是一个数据库是Sqlserver 2008的,而平台数据库库是2005的,需要把2008的数据库附加进来,试了很多办法,现在觉得最好的办法就是导出导入办法. 第一步 新建一个Sqls ...

  6. js中使用使用原型(prototype)定义方法的好处

    经常在前端面试或是和其他同行沟通是,在谈到构造在JS定义构造函数的方法是最好使用原型的方式:将方法定义到构造方法的prototype上,这样的好处是,通过该构造函数生成的实例所拥有的方法都是指向一个函 ...

  7. dapper extensions (predicates)

    https://github.com/tmsmith/Dapper-Extensions/wiki/Predicates The predicate system in Dapper Extensio ...

  8. 2016022601 - redis入门了解

    今天开始学习redis,先从网页上学习,主要学习地址是:易百中的redis和redis中国网站. 此片章学习来自于自:http://www.yiibai.com/redis/redis_quick_g ...

  9. Oracle “CONNECT BY” 使用

    Oracle “CONNECT BY” 使用 功能说明: 语法结构如下: [ START WITH condition ] CONNECT BY [ NOCYCLE ] condition 说明: 1 ...

  10. 利用PHPRPC以及SOAP分别实现PHP的Webserver功能

    服务端:phprpc服务端 <?php /* phprpc 服务端演示 * time:2014-06-23 */ require_once 'phprpc_server.php';//引入服务端 ...