ubuntu

Ubuntu SSH集群搭建与管理

小樊
45
2025-09-02 12:55:17
栏目: 智能运维

一、集群基础搭建

  1. 安装SSH服务
    在所有节点执行:

    sudo apt update && sudo apt install openssh-server
    sudo systemctl enable --now ssh  # 启动并设置开机自启
    
  2. 配置免密登录

    • 生成密钥对(管理节点执行):
      ssh-keygen -t rsa -b 4096  # 按回车生成默认密钥
      
    • 分发公钥到所有节点
      ssh-copy-id user@node1  # 替换为实际节点IP/主机名
      
      或通过脚本批量分发:
      for IP in node1 node2 node3; do
        sshpass -p "密码" ssh -o StrictHostKeyChecking=no user@$IP "mkdir -p ~/.ssh && echo '$(cat ~/.ssh/id_rsa.pub)' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
      done
      
  3. 网络配置

    • 静态IP规划:为节点分配固定IP(如管理网段192.168.1.0/24),编辑/etc/netplan/01-netcfg.yaml
      network:
        version: 2
        ethernets:
          eth0:
            addresses: [192.168.1.101/24]
            gateway4: 192.168.1.1
            nameservers:
              addresses: [8.8.8.8]
      
    • 开放防火墙
      sudo ufw allow 22/tcp  # 允许SSH通信
      sudo ufw enable
      

二、集群管理工具

  1. Ansible自动化管理

    • 安装Ansible(管理节点):
      sudo apt install ansible
      
    • 配置主机清单/etc/ansible/hosts):
      [cluster]
      node1 ansible_host=192.168.1.101
      node2 ansible_host=192.168.1.102
      
    • 执行批量任务
      ansible cluster -m ping  # 测试连通性
      ansible-playbook deploy.yml  # 运行Playbook(需提前编写YAML文件)
      
  2. 其他工具(按需选择)

    • Pacemaker/Corosync:用于高可用性集群,配置心跳检测和资源管理。
    • NFS:共享存储集群数据,安装后配置挂载点。

三、管理与维护

  1. 批量操作

    • 执行命令
      echo "node1 node2" | xargs -I {} ssh user@{} "uptime"  # 使用xargs
      parallel ssh user@{} ::: node1 node2  # 使用parallel工具
      
    • 同步文件
      rsync -avz /local/path/ user@node1:/remote/path/
      
  2. 监控与日志

    • 查看远程日志
      ssh user@node1 "tail -f /var/log/syslog"
      
    • 安装监控工具:如Prometheus+Grafana,或使用htopnmon监控节点状态。
  3. 安全维护

    • 定期更新系统
      sudo apt update && sudo apt upgrade -y
      
    • 强化SSH安全:修改默认端口、禁用root登录(在/etc/ssh/sshd_config中设置#PermitRootLogin prohibit-password)。

四、常见问题与解决

参考来源

0
看了该问题的人还看了