K8S 开发环境搭建
文章目录准备虚拟机安装K8S 开发环境切换 rootGNU 开发工具DockerGoKubernetes 仓库克隆etcd构建 K8S参考准备物理机 1 台CPU x86_64内存 > 16G硬盘 > 70G虚拟机Virtual Box 6.0Linux 镜像CentOS Linux 8Kernel:Linux 4.18.0-305.3.1.el8.Go:1.16Kubernetes
·
准备
- 物理机 1 台
- CPU x86_64
- 内存 > 16G
- 硬盘 > 70G
- 虚拟机
- Virtual Box 6.0
- Linux 镜像
- CentOS Linux 8
- Kernel:Linux 4.18.0-305.3.1.el8.
- Go:1.16
- Kubernetes 1.20.4+
- CentOS Linux 8
虚拟机安装
Virtual Box 6.0 下载并安装
https://www.virtualbox.org/wiki/Download_Old_Builds_6_0
CentOS 8 x86_64 镜像下载
https://www.centos.org/download/
K8S 开发环境
切换 root
sudo su
GNU 开发工具
yum update
yum groupinstall "Development Tools"
Docker
Docker 是容器执行环境
由于 Redhat 旗下 CentOS 预装了 Podman 同 docker-ce 冲突,需要先卸载 podman、buildah
yum erase podman buildah
设置 yum 仓库
yum install -y yum-utils
yum-config-manager \
--add--repo \
https://download.docker.com/linux/centos/docker-ce.repo
安装 Docker 环境
yum install docker-ce docker-ce-cli containerd.io
手动启动 Docker
dockerd
Go
Kubernetes 是用 Go 写的,构建和开发 k8s 需要版本接近的 Go,详细版本对应情况可以参考 k8s 开发指导
wget https://golang.org/dl/go1.16.5.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.16.5.linux-amd64.tar.gz
GOPATH 设置
export PATH=$PATH:/usr/local/go/bin
GOBIN 默认的设置为 GOPATH 的子目录 bin
go env -w GOBIN=/usr/local/go/bin
Kubernetes 仓库克隆
使用贡献者克隆方式
- Fork 仓库,访问 https://github.com/kubernetes/kubernetes,点击 Fork 按钮
- 克隆 Fork 仓库
export working_dir="/usr/local/go/src/k8s.io"
export user=kerwindong
mkdir -p $working_dir
cd $working_dir
git clone https://github.com/$user/kubernetes.git
cd $working_dir/kubernetes
git remote add upstream https://github.com/kubernetes/kubernetes.git
git remote set-url --push upstream no_push
git remote -v
- 分支
本地 master 更新
cd $working_dir/kubernetes
git fetch upstream
git checkout master
git rebase upstream/master
创建分支
git checkout -b learning
etcd
本地安装
./hack/install-etcd.sh
export PATH="$GOPATH/src/k8s.io/kubernetes/third_party/etcd:${PATH}"
构建 K8S
cd $working_dir/kubernetes
build/run.sh make
参考
title | location |
---|---|
k8s 开发指导 | https://github.com/kubernetes/community/blob/master/contributors/devel/development.md |
构建 k8s | https://github.com/kubernetes/kubernetes/blob/master/build/README.md |
更多推荐
已为社区贡献2条内容
所有评论(0)