zoukankan      html  css  js  c++  java
  • 重新记录 ansible操作hadoop用户的问题

    前提是安装ansible

    配置源

    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
    yum install -y ansible

    1. ssh首次链接出现yes/no提示

    需要执行一遍ssh,破除 需要输入yes的问题

    修改文件: /etc/ssh/ssh_config 

    在文件中添加如下信息:StrictHostKeyChecking no

     

    2. 添加 hadoop用户

    首先 test用户,对远程服务器可以进行控制

    准备hosts文件

    hosts

    [hadoop_test_hosts]
    0.0.0.0 ansible_ssh_user=test ansible_ssh_pass=000
    0.0.0.0 ansible_ssh_user=test ansible_ssh_pass=000
    0.0.0.0 ansible_ssh_user=test ansible_ssh_pass=000
    0.0.0.0 ansible_ssh_user=test ansible_ssh_pass=000

    [hadoop_hosts]
    0.0.0.0 ansible_ssh_user=hadoop ansible_ssh_pass=000
    0.0.0.0 ansible_ssh_user=hadoop ansible_ssh_pass=000
    0.0.0.0 ansible_ssh_user=hadoop ansible_ssh_pass=000
    0.0.0.0 ansible_ssh_user=hadoop ansible_ssh_pass=000

    准备添加hadoop playbook

    useradd.yml

    ---
    - hosts: hadoop_test_hosts
      remote_user: test
      sudo: yes
      vars:
        user: hadoop
     
      tasks:
        - name: add user
          action: user name={{ user }}  home=/home/{{ user }}
      tags:
        - user

    ansible-playbook -i hosts useradd.yml

    准备修改hadoop密码

    change_pass_hadoop.yml

    ---
    - hosts: hadoop_test_hosts
      gather_facts: False
      remote_user: test
      sudo: yes
      tasks:  
        - name: change user
          user: name={{ item.name }} password={{ item.new_pass | password_hash('sha512') }} update_password=always
          with_items:
            - { name: 'hadoop',new_pass: '000' }

    hadoop用户下 执行 ssh-keygen 生成 ip_rsa.pub文件(每台hadoop上都需要)

    ansible-playbook -i hosts change_pass_hadoop.yml

    准备 hadoop ssh无秘钥 playbook

    rsync_key.yml

    - hosts: hadoop_hosts
      remote_user: hadoop
      tasks:
      - name: copy ssh key
        authorized_key:
          user: hadoop
          key: "{{ lookup('file', '/home/hadoop/.ssh/id_rsa.pub') }}"

    ansible-playbook -i hosts rsync_key.yml

     

     

    在尝试学习新的语言之前先理解这门语言的设计原理能够让你在探索这门新语言时保持一个清醒而且开发的状态。
  • 相关阅读:
    wireshark 实用过滤表达式(针对ip、协议、端口、长度和内容)
    32:从1到n整数中1出现的次数
    31:连续子数组的最大和
    30:最小的K个数
    29:数组中出现次数超过一半的数字
    28:字符串的排列
    27:二叉搜索树与双向链表
    26:复杂链表的复制
    25:二叉树中和为某一个定值的路径
    24:二叉搜索树的后序遍历序列
  • 原文地址:https://www.cnblogs.com/jackchen001/p/6381270.html
Copyright © 2011-2022 走看看