k8s集群部署详细步骤

初始化环境
系统参数调整# 修改内核参数

cat > /etc/sysctl.d/k8s.conf <<EOF
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 10
net.ipv4.neigh.default.gc_stale_time = 120
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_announce = 2
net.ipv4.ip_forward = 1
net.ipv4.tcp_max_tw_buckets = 5000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 1024
net.ipv4.tcp_synack_retries = 2
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.netfilter.nf_conntrack_max = 2310720
fs.inotify.max_user_watches=89100
fs.may_detach_mounts = 1
fs.file-max = 52706963
fs.nr_open = 52706963
net.bridge.bridge-nf-call-arptables = 1
vm.swappiness = 0 #最大限度使用物理内存,然后才是 swap空间
vm.overcommit_memory=1
vm.panic_on_oom=0
EOF
sysctl --system

开启ipvs
modprobe – ip_vs
modprobe – ip_vs_rr
modprobe – ip_vs_wrr
modprobe – ip_vs_sh
modprobe – nf_conntrack_ipv4
#查看是否加载
lsmod | grep ip_vs
#配置开机自加载
cat >> /etc/rc.local <<EOF
modprobe – ip_vs
modprobe – ip_vs_rr
modprobe – ip_

### Kubernetes 集群部署指南 Kubernetes 是一个开源的容器编排平台,用于自动化应用的部署、扩展和管理。以下是 Kubernetes 集群详细部署步骤: #### 1. 准备工作 在开始部署之前,需要确保所有节点(Master 和 Node)满足以下条件: - 操作系统:推荐使用 Ubuntu 或 CentOS。 - 网络配置:确保所有节点之间能够互相通信,并且可以访问外部网络。 - 时间同步:确保所有节点的时间一致,可以通过 NTP 服务实现。 #### 2. 安装必要组件 在每个节点上安装 Docker 和其他必要的工具: ```bash sudo apt-get update sudo apt-get install docker.io ``` Docker 是 Kubernetes 的默认容器运行时[^5]。此外,还需要安装 kubeadm、kubelet 和 kubectl: ```bash sudo apt-get update && sudo apt-get install -y kubelet kubeadm kubectl ``` #### 3. 初始化 Master 节点 在 Master 节点上执行以下命令以初始化集群: ```bash sudo kubeadm init --pod-network-cidr=10.244.0.0/16 ``` 此命令会生成一个加入 Token,用于后续 Node 节点的加入。完成后,配置 kubeconfig 文件以便以普通用户身份使用 kubectl: ```bash mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config ``` #### 4. 部署网络插件 Kubernetes 需要一个网络插件来支持 Pod 之间的通信。常用的网络插件包括 Flannel 和 Calico。以 Flannel 为例: ```bash kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml ``` #### 5. 加入 Node 节点 在每个 Node 节点上执行以下命令以加入集群: ```bash sudo kubeadm join <master-ip>:<master-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash> ``` Token 和 Hash 可以从 Master 节点的初始化输出中获取。 #### 6. 验证集群状态 在 Master 节点上执行以下命令以验证集群状态: ```bash kubectl get nodes ``` 确保所有节点的状态为 `Ready`。 #### 7. 部署应用 使用 kubectl 命令部署应用。例如,创建一个简单的 Nginx 部署: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80 ``` 保存上述内容为 `nginx.yaml`,然后执行以下命令: ```bash kubectl apply -f nginx.yaml ``` #### 8. 查看集群事件与性能分析 可以使用以下命令查看集群事件和性能分析: ```bash kubectl get events --sort-by='.metadata.creationTimestamp' # 查看事件 kubectl top nodes # 查看节点性能 kubectl top pods # 查看 Pod 性能 ``` 以上步骤涵盖了从零开始搭建 Kubernetes 集群的完整流程[^2]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

㍿L

你的鼓励是我最大的激励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值