当前位置:   article > 正文

大数据集群-使用docker在ubuntu上配置centos_大数据集群操作系统ubuntu18.04和docker-ce20.10

大数据集群操作系统ubuntu18.04和docker-ce20.10

docker组件配置

软件名称软件包名
docker最新版
ubuntuUbuntu18.04 64位
CentOSCentOS 7.4(mini 英文版本)

1.配置ubuntu

1.1 下载源

来源:yum配置

apt update && apt upgrade -y
apt-get install curl
service fwupd start
wupdmgr refresh
fwupdmgr update
apt-get update
udo apt-get --fix-broken install
sudo apt-get install -f
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

1.2 安装所需deb软件

dpkg -i "name".deb
  • 1

2.安装docker

2.1 从网上下载docker的deb包

dpkg -i docker-desktop-4.9.0-amd64.deb
  • 1

2.2 配置docker源

#删除原有docker---安装所需组件--配置docker安装源--按照配置的安装源更新--安装docker
sudo apt-get remove docker docker-engine docker.io containerd runc

sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common

curl -fsSL https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.cloud.tencent.com/docker-ce/linux/ubuntu/  \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

apt-get update
apt-get  install docker-ce docker-ce-cli containerd.io

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

3.使用docker

# 拉取镜像--生成系统--查看--进入系统
docker pull centos:centos7  
docker run -itd --name serverA --privileged  centos:centos7  /usr/sbin/init

docker run -itd --name server1 --network hadoopNet -v /export/software:/export/software -v /sys/fs/cgroup:/sys/fs/cgroup --privileged  myhadoop   /usr/sbin/init
docker ps
docker exec -it master /bin/bash
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

3.1 简单配置一下docker的ssh免密,可以不配置

yum -y install net-tools
ifconfig
useradd hadoop
passwd hadoop
vi /etc/hostname
hostname master && bash
yum install -y openssh-server
yum install -y openssh-clients
yum install centos-release-scl scl-utils-build
yum install -y devtoolset-8-toolchain
scl enable devtoolset-8 bash

vi /etc/ssh/sshd_config
        Port 22
        PubkeyAuthentication yes
systemctl enable sshd
systemctl start sshd
systemctl enable sshd.service
ps -e | grep sshd
netstat -an | grep 22
ssh-keygen -t rsa
cat id_rsa.pub >> authorized_keys     #全都分发,每个都一样,包括不同用户
systemctl stop sshd
systemctl start sshd
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

3.2 根据简单配置的centos配置集群

docker network create -d bridge hadoopNet  #创建网络
docker network ls
ifconfig 查看网络网段
docker commit -p 40afbb92a913 myhadoop #做成镜像

docker run -itd --name slave1 \ 
--network hadoopNet  \  
-v /export/software:/export/software  \
-v /sys/fs/cgroup:/sys/fs/cgroup  \
--privileged  myhadoop  /usr/sbin/init
--ip 静态ip
-p 10000:10000 \
-p 3306:3306 \
-p 6379:5379
'''
-p 表示对外访问的端口
-v 表示绑定的文件夹,不设置/sys/fs/cgourp会导致mysql弄不了
--provileged 表示使用的系统镜像是刚才简单配置的,也可以使用centos:centos7
--network 表示所属网络,在一个网络的计算机可以互相通信,当然无论在哪个网络都可以和ubuntu主机通信,但ubuntu外面的不行,需要 设置-p
--name 表示镜像生成的容器名
--ip 表示静态网络 不然的话docker容器每次重启都会重新分配
'''

docker exec -it slave1 /bin/bash #进入计算机
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

3.3docker其他简单命令

docker ps
docker stop containerId / containerName
docker rm containerID
docker rename oldname newname

  • 1
  • 2
  • 3
  • 4
  • 5

4.其他问题

  • docker的/etc文件会在每次**docker stop后重置,所以最好把环境变量写入/home/hadoop/.bashrc或者/root/.bashrc**下。
  • 其他操作和在vmware上一样。
  • docker上配置集群比在vmware上更加节省电脑资源
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/477266
推荐阅读
相关标签
  

闽ICP备14008679号