大数据集群-使用docker在ubuntu上配置centos

本文详细介绍了如何在Ubuntu 18.04和CentOS 7.4上配置Docker,包括安装Docker、拉取镜像、创建和配置容器,以及设置SSH免密和构建集群。此外,还提供了Docker常用命令及注意事项,如环境变量保存位置。
摘要由CSDN通过智能技术生成

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 安装所需deb软件

dpkg -i "name".deb

2.安装docker

2.1 从网上下载docker的deb包

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

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

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

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

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 #进入计算机

3.3docker其他简单命令

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

4.其他问题

  • docker的/etc文件会在每次**docker stop后重置,所以最好把环境变量写入/home/hadoop/.bashrc或者/root/.bashrc**下。
  • 其他操作和在vmware上一样。
  • docker上配置集群比在vmware上更加节省电脑资源
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

厨 神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值