使用 kubeadm 创建master节点,init中的参数和其他
使用 kubeadm 创建master节点
方式一:使用参数指定
kubeadm init --apiserver-advertise-address=本机IP \
--apiserver-bind-port=6443 --kubenetes-version=v版本 \
--pod-network-cidr=10.100.0.0/16 \
--serverce-cidr=10.200.0.0/16 \
--service-dns-domain=自定义 \
--image-repository=镜像源 \
--ignore-preflight-errors=swap
方式二:制定使用 yaml 文件
这就需要配置 yaml
文件
kubeadm config print init-defaults > kubeadm.yaml
使用 kubeadm init --config
应用
kubeadm init --config=kubeadm.yaml --ignore-preflight-errors=SystemVerification
init参数
选项 | 含义 |
---|---|
--apiserver-advertise-address string | k8s API Server将要监听的本机IP |
--apiserver-bind-port int32 | API Server绑定的端口,默认是6443 |
--control-plane-endpoint string | 为控制平面指定一个稳定的IP地址或DNS名称,即配置一个可以长期使用且是高可用的VIP域名,k8s中的高可用就是就是基于此实现 |
--ignore-preflight-errors string | 忽略检查过程中出现的错误信息,忽略swap |
--image-repository string | 设置一个镜像仓库 |
--kubenetes-versions | 指定版本 |
--pod-network-cidr | 设置 pod ip 地址 |
--server-cidr | 设置service网路地址 |
--server-dns-domain | 设置k8s内部域名 |
准备镜像
kubenetes config images list --kubenetes version v1.19.1
镜像默认是谷歌的地址,所以要
kubeadm config images pull \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version=v1.28.13
这样用于选择现在国内的镜像。
创建成功后
8080
是api server的非安全端口,这个非安全端口不需要进行验证,这就需要进行下面的操作。
当成功安装后会有:
Your Kubernetes control-plane has initialized successfully!
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Alternatively, if you are the root user, you can run:
有了这些文件就能对k8s进行监听,这相当是有admin权限,只有专用的节点才有这些文件,有了这些文件才能执行kubectl命令访问k8s进行操作。
验证当前的kubenetes的版本
kubenetes version