ฉันพยายามที่จะทดสอบกับกลุ่มเสมือนจริงของเครื่องเพื่อเรียนรู้ Hadooop ฉันใช้ LXD เพื่อจุดประสงค์นี้ ฉันได้ติดตั้งเซิร์ฟเวอร์ ssh ในแต่ละ vm และตอนนี้ต้องเชื่อมต่อจาก vm หนึ่งไปยังอีก ใช้ IP ที่ฉันได้รับจาก lxc list
ฉันไม่สามารถเชื่อมต่อ (รับข้อผิดพลาด 'ปฏิเสธการเชื่อมต่อ')
นี่คือชุดคำสั่งที่ทำซ้ำได้:
สร้างเครื่องจักร
for n in 1 2 3 4 5;do
sudo lxc launch images:centos/7/amd64 hadoop$n
done
ติดตั้ง OpenSSH
for n in 1 2 3 4 5;do
sudo lxc exec hadoop$n -- apt-get update
sudo lxc exec hadoop$n -- apt-get upgrade -y
sudo lxc exec hadoop$n -- yum -y install openssh openssh-server openssh-clients openssl-libs;
done
รีสตาร์ทเครื่อง
for n in 1 2 3 4 5;do
sudo lxc stop hadoop$n
sudo lxc start hadoop$n
done
สร้างการเชื่อมต่อ ssh น้อยรหัสผ่าน
บนตัวติดตั้งโฮสต์ของเครื่อง (hadoop1)
(MapR 5.1 ต้องการให้สคริปต์การติดตั้งทำงานจากโหนดใดโหนดหนึ่งที่มีการติดตั้ง hadoop ซึ่งเป็นสาเหตุที่ฉันใช้งานสคริปต์นี้จากหนึ่งใน VM ไม่ใช่โฮสต์แล็ปท็อป)
ssh-keygen
โฮสต์ระบบปฏิบัติการ
sudo lxc file pull hadoop1/root/.ssh/id_rsa.pub .
for n in 2 3 4 5;do
sudo lxc file push ./id_rsa.pub hadoop$n/root/.ssh/authorized_keys -p
sudo lxc exec hadoop$n -- chmod 600 /root/.ssh/authorized_keys
sudo lxc exec hadoop$n -- sudo chown root: /root/.ssh/authorized_keys;
done
ssh root@<ip from lxc list>
...Connection refused