kubeadmin 安装k8s集群

系统设置

  • CentOS Linux release 7.6.1810 (Core)
修改主机名
vim /etc/hostname 
k8s-master
   
hostname -F /etc/hostname
 设置本地解析
 vim /etc/hosts
 172.16.227.40    k8s-master
    
关闭防火墙
systemctl disable firewalld
关闭selinux
 sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config
设置启动参数
cat <<EOF >  /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

sysctl --system

安装docker,kubeadm, kubelet and kubectl

安装docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates | sort -r
yum install docker-ce-18.06.3.ce-3.el7
systemctl start docker
systemctl enable docker
kubeadm, kubelet and kubectl
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[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 install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet
# 添加--image-repository参数,默认镜像下载会失败,你懂的
kubeadm init --kubernetes-version=v1.14.2 --pod-network-cidr=10.244.0.0/16 --image-repository registry.aliyuncs.com/google_containers
# docker images 镜像如下:
registry.aliyuncs.com/google_containers/kube-proxy:v1.14.2
registry.aliyuncs.com/google_containers/kube-apiserver:v1.14.2
registry.aliyuncs.com/google_containers/kube-controller-manager:v1.14.2
registry.aliyuncs.com/google_containers/kube-scheduler:v1.14.2
registry.aliyuncs.com/google_containers/coredns:1.3.1
registry.aliyuncs.com/google_containers/etcd:3.3.10 
registry.aliyuncs.com/google_containers/pause:3.1    
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
# 安装网络
kubectl apply -f kube-flannel.yml

#查看集群装填 
kubectl get pods -n kube-system

coredns-8686dcc4fd-2xkmr             1/1     Running   0          4m56s
coredns-8686dcc4fd-6lmlt             1/1     Running   0          4m56s
etcd-k8s-master                      1/1     Running   0          4m3s
kube-apiserver-k8s-master            1/1     Running   0          4m15s
kube-controller-manager-k8s-master   1/1     Running   0          4m1s
kube-flannel-ds-amd64-ptv62          1/1     Running   0          2m33s
kube-proxy-7ffzw                     1/1     Running   0          4m57s
kube-scheduler-k8s-master            1/1     Running   0          4m11s

转载于:https://www.cnblogs.com/histyle/p/10897163.html

### 使用 KubeAdm 安装 Kubernetes 集群 #### 准备工作 为了成功安装 Kubernetes 集群,需先完成一系列准备工作。这包括更新操作系统并安装必要的软件包,如 `kubelet`、`kubeadm` 和 `kubectl`。此外,建议关闭交换分区以优化性能;配置 `/etc/hosts` 文件以便于节点之间的名称解析;设置免密码SSH访问来简化管理操作;选择合适的容器运行时(比如Docker或Containerd),并按照官方指导进行相应配置;最后,添加Kubernetes GPG密钥至系统中,并指定非默认的软件仓库地址用于后续安装过程[^3]。 #### 初始化主控节点 一旦前期准备就绪,在主控节点上执行如下命令初始化集群: ```bash sudo kubeadm init --pod-network-cidr=10.244.0.0/16 ``` 此命令会启动一个全新的Kubernetes集群实例,并返回一段指令帮助用户配置本地环境以便进一步管理和扩展集群规模。注意这里的CIDR范围应根据实际网络规划调整[^1]。 #### 设置 Pod 网络插件 紧接着需要部署一个CNI兼容的Pod网络解决方案,例如Flannel或其他第三方产品。可以通过应用相应的YAML清单文件实现这一点: ```bash kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml ``` 确保所选方案支持当前版本的Kubernetes,并遵循其特定的安装说明。 #### 加入工作节点 获取加入令牌后,将其应用于其他希望成为集群成员的工作节点之上。通常形式如下所示: ```bash kubeadm join <control-plane-host>:<control-plane-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash> ``` 每台新机器都需要重复上述步骤直至全部纳入集群体系之中。 #### 后续配置 随着更多节点的成功接入,还需考虑一些额外的任务,像设定上下文关联、分发管理员证书给各个节点等措施有助于提升日常运维效率。具体做法可参照以下示例代码片段[^5]: ```bash export KUBECONFIG=/etc/kubernetes/admin.conf scp /etc/kubernetes/admin.conf slave1:/etc/kubernetes/ scp /etc/kubernetes/admin.conf slave2:/etc/kubernetes/ ``` 这些动作使得远程服务器也能顺利调用API服务端口,从而达到集中化管控的目的。 #### 升级注意事项 当计划对现有集群实施版本迭代时,请务必提前审阅官方变更记录及相关组件文档,确认所有依赖项均能良好适配新版核心引擎。特别是涉及到网络层面上的变化,往往牵一发动全身,不容忽视[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值