Kubernetes-环境篇-02-ubuntu开发环境搭建

1、ubuntu基础环境

shell 复制代码
# 更新apt软件源
sudo apt update

# 安装git
sudo apt install git

# 安装python3
sudo apt install -y python3 python3-pip

# 安装vim
sudo apt install vim

2、安装go

2.1 下载go安装包

shell 复制代码
wget https://golang.google.cn/dl/go1.23.2.linux-amd64.tar.gz

2.2 安装go

解压到指定文件中

shell 复制代码
sudo tar -C /usr/local -xzf go1.23.2.linux-amd64.tar.gz

此举相当于把gopath安装到了/usr/local/go。

shell 复制代码
$ ls /usr/local/go/
api  codereview.cfg   doc     lib      misc     pkg        SECURITY.md  test
bin  CONTRIBUTING.md  go.env  LICENSE  PATENTS  README.md  src          VERSION

2.3 设置go环境变量:

sudo vim 打开~/.bashrc文件,追加导出命令

shell 复制代码
export PATH=$PATH:/usr/local/go/bin

生效环境变量:

shell 复制代码
source ~/.bashrc

2.4 验证

查看版本:

shell 复制代码
$ go version
go version go1.23.2 linux/amd64

查看安装位置:

shell 复制代码
$ which go
/usr/local/go/bin/go

3、安装docker

3.1 安装docker依赖

shell 复制代码
sudo apt-get install ca-certificates curl gnupg lsb-release

3.2 添加Docker官方GPG密钥

shell 复制代码
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

3.3 添加Docker软件源

shell 复制代码
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

3.4 安装docker

shell 复制代码
apt-get install docker-ce docker-ce-cli containerd.io

3.5 配置用户组(可选)

默认情况下,只有root用户和docker组的用户才能运行Docker命令。我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo。命令如下:

shell 复制代码
sudo usermod -aG docker $USER

3.6 运行docker

shell 复制代码
systemctl start docker

3.7 安装工具

shell 复制代码
sudo apt -y install apt-transport-https ca-certificates curl software-properties-common

3.8 重启docker

shell 复制代码
service docker restart

3.9 验证

shell 复制代码
$ sudo systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: e>
     Active: active (running) since Thu 2024-10-03 15:06:06 CST; 15s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 14875 (dockerd)
      Tasks: 14
     Memory: 21.8M (peak: 24.1M)
        CPU: 303ms
     CGroup: /system.slice/docker.service
             └─14875 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/con>

4、安装kubectl & helm

shell 复制代码
# 安装 kubectl
sudo snap install kubectl --classic

# 安装 helm
sudo snap install helm--classic

验证kubectl

shell 复制代码
$ kubectl version
Client Version: v1.31.1
Kustomize Version: v5.4.2
The connection to the server localhost:8080 was refused - did you specify the right host or port?

验证helm

shell 复制代码
$ helm version
version.BuildInfo{Version:"v3.16.1", GitCommit:"5a5449dc42be07001fd5771d56429132984ab3ab", GitTreeState:"clean", GoVersion:"go1.22.7"}

5、安装kubebuilder

github仓库:地址

kubebuilder的官方文档:

  • 英文版
  • 中文版
  • 需要注意:英文版目前最新的是v4版本的,中文版还停留在v2版本

推荐书籍:

  • 《Kubenetes Operator 开发进阶》胡涛

安装方法:

  • 官方文档方法:
    • 安装最新发行版本:
shell 复制代码
# download kubebuilder and install locally.
curl -L -o kubebuilder "https://go.kubebuilder.io/dl/latest/$(go env GOOS)/$(go env GOARCH)"
chmod +x kubebuilder && mv kubebuilder /usr/local/bin/
  • 安装github代码仓库中,master分支:
shell 复制代码
curl -L -o kubebuilder "https://go.kubebuilder.io/dl/master/$(go env GOOS)/$(go env GOARCH)"
chmod +x kubebuilder && mv kubebuilder /usr/local/bin/
shell 复制代码
# 查看os
go env GOOS
# 查看架构
go env GOARCH
  • 如果网络ok,也可以直接wget进行下载
shell 复制代码
#!/bin/bash
wget https://github.com/kubernetes-sigs/kubebuilder/releases/download/v4.2.0/kubebuilder_linux_amd64 -O kubebuilder
  • 进行安装
shell 复制代码
mv /Users/king/Downloads/kubebuilder_darwin_arm64 ./kubebuilder
chmod +x kubebuilder && sudo mv kubebuilder /usr/local/bin/
  • 验证安装
shell 复制代码
$ kubebuilder version 
Version: main.version{KubeBuilderVersion:"4.2.0", KubernetesVendor:"1.31.0", GitCommit:"c7cde5172dc8271267dbf2899e65ef6f9d30f91e", BuildDate:"2024-08-17T09:41:45Z", GoOs:"linux", GoArch:"amd64"}

6、安装Kind

官方github仓库地址:https://github.com/kubernetes-sigs/kind.git

国内镜像仓库地址:https://gitcode.com/gh_mirrors/ki/kind/overview

目前最新的tag版本是v0.24.0

shell 复制代码
# 查看os
go env GOOS
# 查看架构
go env GOARCH

7.1 下载Kind

shell 复制代码
curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.24.0/kind-linux-amd64

7.2 安装kind

shell 复制代码
chmod +x ./kind && sudo mv ./kind /usr/local/bin/kind

7.3 验证kind版本

shell 复制代码
 kind --version    
kind version 0.24.0

8、开发工具

  • 必须开启go mod,GO111MODULE=on
  • 代理地址推荐:
  • 开发工具推荐:
    • goland:推荐,但是收费
    • idea:可以装go插件,但是可能没有goland适配的好
    • vscode:比较轻量级,但是开发不太方便
相关推荐
飘逸高铁侠2 小时前
docker export/import 和 docker save/load 的区别
docker·容器·eureka
bestcxx5 小时前
(十八)、登陆 k8s 的 kubernetes-dashboard &更多可视化工具
云原生·容器·kubernetes
小胖胖吖5 小时前
【CKA】二、节点管理-设置节点不可用
云原生·容器·kubernetes·cka
福大大架构师每日一题5 小时前
22.2 k8s中ksm采集的使用的dns解析
云原生·容器·kubernetes
weixin_453965006 小时前
[k8s理论知识]1.runc容器管理工具
云原生·容器·kubernetes
长天一色6 小时前
【Docker从入门到进阶】04.高效实践
运维·docker·容器
binqian6 小时前
【Docker】 进入容器的几种方式
运维·docker·容器
oceanweave8 小时前
【k8s深入理解之csi插件】理解存储 csi 插件的总体逻辑框架
云原生·容器·kubernetes
吴恩达亲传弟子8 小时前
【Bug】解决 Ubuntu 中 “error: Unable to Find Python3 Executable” 错误
linux·ubuntu·bug