kubeflow1.3安装记录-外网环境下

kubeflow安装在能访问外网的情况下十分简单,但是如果不能翻墙就会很困难很多,下面首先在能访问外网的情况下进行,再试着在局域网(公司网络)内进行安装。这里机器使用腾讯云服务器,选择2台香港地区的竞价实例,CentOS7.6,配置为8核16G,根目录磁盘空间300G,网络为1Mbps的按带宽计费模式,2台机器共计每小时¥1.23。安全组选择放通所有端口,登录方式为自定义密码登录

安装docker

首先在两台机器上安装docker

yum -y install yum-utils && \
yum-config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo && \
yum install -y https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.4.3-3.1.el7.x86_64.rpm && \
yum install docker-ce -y
systemctl --now enable docker

yum install -y yum-utils device-mapper-persistent-data lvm2 git

如果因为网络问题无法使用yum安装的话,可以到https://download.docker.com/linux/static/stable/x86_64/ 下载tar.gz文件,解压后将docker/目录下全部文件复制到 /usr/bin 目录下,创建启动文件 /etc/systemd/system/docker.service ,内容如下

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/bin/dockerd --selinux-enabled=false
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target

执行 systemctl daemon-reload && systemctl restart docker 完成docker的安装

PS:默认情况下,docker会将镜像文件存放在 /var 目录下,如果该目录空间不足,docker会自动删除某些镜像,可以在启动中指定 --graph=/root/images 来自定义镜像文件存放的位置

安装Harbor

在kubeflow的使用过程中,我们需要一个私有的镜像仓库来存放执行过程中生成的镜像文件,这里我们选择部署一套harbor作为镜像仓库,也可以选择docker registry,选择一台机器操作即可

安装docker-compose:

wget https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64
mv docker-compose-Linux-x86_64 docker-compose
chmod +x docker-compose
mv docker-compose /usr/bin/

可执行 docker-compose version 验证是否安装成功

wget https://github.com/goharbor/harbor/releases/download/v1.9.2/harbor-offline-installer-v1.9.2.tgz
tar -zxvf harbor-offline-installer-v1.9.2.tgz
cd harbor
vim harbor.yaml
./install.sh

修改harbor.yaml中的hostname和port

 访问 http://43.128.14.116:86/,即可打开harbor页面,43.128.14.116为服务器外网地址、172.19.0.14为其内网地址,默认账号admin,密码为 Harbor12345。登录之后创建一个名为kubeflow的公开项目作为我们的私有仓库。

修改docker配置文件,/etc/docker/daemon.json,加入如下内容,之后重启docker

{ "insecure-registries": ["172.19.0.14:86"] }

docker login -u admin -p Harbor12345 172.19.0.14:86

harbor搭建完成 ,docker-compose up -d 重启

安装Kubernetes

使用kubeadm来安装k8s,kubeflow1.3要求k8s的版本最低为1.15,推荐1.17+,这里选择1.19版本进行安装

sudo setenforce 0         #关闭selinux
sudo swapoff -a           #关闭内存交换

#开启ipvs
modprobe br_netfilter
cat > /etc/sysconfig/modules/ipvs.modules << EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF

chmod  755  /etc/sysconfig/modules/ipvs.modules &&  bash  /etc/sysconfig/modules/ipvs.modules &&  lsmod | grep -e ip_vs

#更新yum源,创建 /etc/yum.repos.d/kubernetes.repo(所有节点)
cat > /etc/yum.repos.d/kubernetes.repo  << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

yum makecache fast -y 

#调整iptables
echo 1 >/proc/sys/net/bridge/bridge-nf-call-iptables    
echo 1 > /proc/sys/net/ipv4/ip_forward

#修改环境变量/etc/profile,加入
export KUBECONFIG=/etc/kubernetes/admin.conf
export GODEBUG=x509ignoreCN=0

source /etc/profile

yum install -y kubelet-1.19.1  kubeadm-1.19.1  kubectl-1.19.1

systemctl enable kubelet && systemctl
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值