侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

k8s-安装文档-03-node节点添加-nginx/kube-proxy/csr

Docker  /  管理员 发布于 3年前   909

需master3个节点的hosts表添加node节点的主机名关系。或者后面节点配置直接使用IP互联。


####安装docker(17-03CE)

yum localinstall https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
yum localinstall https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm


####安装api代理的nginx

- nginx配置文件

# cat /etc/nginx/nginx.conf 

error_log stderr notice;
worker_processes auto;

events {
  multi_accept on;
  use epoll;
  worker_connections 1024;
}

stream {
    upstream kube_apiserver {
        least_conn;
        server 10.0.1.157:6443;
        server 10.0.1.158:6443;
        server 10.0.1.159:6443;
    }
    server {
        listen        0.0.0.0:6443;
        proxy_pass    kube_apiserver;
        proxy_timeout 10m;
        proxy_connect_timeout 1s;
    }
}


- nginx服务

# cat /etc/systemd/system/nginx-proxy.service 

[Unit]
Description=kubernetes apiserver docker wrapper
Wants=docker.socket
After=docker.service
[Service]
User=root
PermissionsStartOnly=true
ExecStart=/usr/bin/docker run -p 127.0.0.1:6443:6443 \
                              -v /etc/nginx:/etc/nginx \
                              --name nginx-proxy \
                              --net=host \
                              --restart=on-failure:5 \
                              --memory=512M \
                              nginx:1.13.5-alpine
ExecStartPre=-/usr/bin/docker rm -f nginx-proxy
ExecStop=/usr/bin/docker stop nginx-proxy
Restart=always
RestartSec=15s
TimeoutStartSec=30s
[Install]
WantedBy=multi-user.target


##重载配置文件 启动反向代理 并设置开机启动

systemctl daemon-reload && systemctl start nginx-proxy && systemctl enable nginx-proxy


#### 安装kubelet、kube-proxy

- scp 文件

scp kubelet kube-proxy  10.0.1.109:/usr/local/bin/
scp ca.pem kube-proxy.pem kube-proxy-key.pem 10.0.1.109:/etc/kubernetes/ssl/
scp bootstrap.kubeconfig kube-proxy.kubeconfig 10.0.1.109:/etc/kubernetes/


- 添加kubelet kube-proxy服务

# cat /etc/systemd/system/kubelet.service 
[Unit]
Description=Kubernetes Kubelet
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=docker.service
Requires=docker.service
[Service]
WorkingDirectory=/var/lib/kubelet
ExecStart=/usr/local/bin/kubelet \
  --cgroup-driver=cgroupfs \
  --hostname-override=k8s-n-109 \
  --pod-infra-container-image=10.0.1.147/k8s/pause-amd64:3.0 \
  --experimental-bootstrap-kubeconfig=/etc/kubernetes/bootstrap.kubeconfig \
  --kubeconfig=/etc/kubernetes/kubelet.kubeconfig \
  --cert-dir=/etc/kubernetes/ssl \
  --cluster_dns=10.254.0.2 \
  --cluster_domain=cluster.local. \
  --hairpin-mode promiscuous-bridge \
  --allow-privileged=true \
  --fail-swap-on=false \
  --serialize-image-pulls=false \
  --logtostderr=true \
  --max-pods=512 \
  --network-plugin=cni \
  --v=2
[Install]
WantedBy=multi-user.target


# cat /etc/systemd/system/kube-proxy.service 
[Unit]
Description=Kubernetes Kube-Proxy Server
Documentation=https://github.com/GoogleCloudPlatform/kubernetes
After=network.target
[Service]
WorkingDirectory=/var/lib/kube-proxy
ExecStart=/usr/local/bin/kube-proxy \
 --bind-address=10.0.1.109 \
 --hostname-override=k8s-n-109 \
 --cluster-cidr=10.254.0.0/16 \
 --kubeconfig=/etc/kubernetes/kube-proxy.kubeconfig \
 --logtostderr=true \
 --v=2
Restart=on-failure
RestartSec=5
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target


- 创建目录启动服务

mkdir /var/lib/kube-proxy
mkdir /var/lib/kubelet
systemctl daemon-reload
systemctl start  kube-proxy
systemctl start  kubelet
systemctl enable   kubelet
systemctl enable  kube-proxy


####M端添加csr

[root@k8s-m-158 img]# kubectl get csr
NAME                                                   AGE       REQUESTOR           CONDITION
node-csr-4PmD6FFUUFBZ0K9QtFCAs4knlH77mUcJAcz27VGmTAM   55d       kubelet-bootstrap   Approved,Issued
node-csr-59Dk8EytDSpMzlHnHSFOoqxRZOvg-XaRLRqEMA8DeEw   55d       kubelet-bootstrap   Approved,Issued
node-csr-5MoD7QJhfh7qBvlKBNr2YbJjOKYFTYwrjefnTYAKSGM   55d       kubelet-bootstrap   Approved,Issued
node-csr-m4ozqvMPPeu6uIF6qy-YzG9zUR4LtHTWYhINqjkzg38   14s       kubelet-bootstrap   Pending

[root@k8s-m-158 img]# kubectl certificate approve node-csr-m4ozqvMPPeu6uIF6qy-YzG9zUR4LtHTWYhINqjkzg38
certificatesigningrequest "node-csr-m4ozqvMPPeu6uIF6qy-YzG9zUR4LtHTWYhINqjkzg38" approved

[root@k8s-m-158 img]# kubectl get csr
NAME                                                   AGE       REQUESTOR           CONDITION
node-csr-4PmD6FFUUFBZ0K9QtFCAs4knlH77mUcJAcz27VGmTAM   55d       kubelet-bootstrap   Approved,Issued
node-csr-59Dk8EytDSpMzlHnHSFOoqxRZOvg-XaRLRqEMA8DeEw   55d       kubelet-bootstrap   Approved,Issued
node-csr-5MoD7QJhfh7qBvlKBNr2YbJjOKYFTYwrjefnTYAKSGM   55d       kubelet-bootstrap   Approved,Issued
node-csr-m4ozqvMPPeu6uIF6qy-YzG9zUR4LtHTWYhINqjkzg38   57s       kubelet-bootstrap   Approved,Issued

[root@k8s-m-158 img]# kubectl get no
NAME        STATUS     ROLES     AGE       VERSION
k8s-m-157   Ready      <none>    55d       v1.8.6
k8s-m-158   Ready      <none>    55d       v1.8.6
k8s-m-159   Ready      <none>    55d       v1.8.6
k8s-n-109   NotReady   <none>    10s       v1.8.6

[root@k8s-m-158 img]# kubectl get no
NAME        STATUS    ROLES     AGE       VERSION
k8s-m-157   Ready     <none>    55d       v1.8.6
k8s-m-158   Ready     <none>    55d       v1.8.6
k8s-m-159   Ready     <none>    55d       v1.8.6
k8s-n-109   Ready     <none>    22s       v1.8.6




  • 上一条:
    k8s-安装文档-02-网络组件安装-calico网络部署(线上版本)
    下一条:
    k8s-安装文档-04-kube-dns插件安装-服务发现实现
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在docker环境中实现Laravel项目执行定时任务和消息队列流程步骤(0个评论)
    • 在MacBook下laravel项目多php版本docker开发环境配置方案(0个评论)
    • 在docker环境中部署docker部署elk架构流程步骤(1个评论)
    • docker compose跟Dockerfile的区别浅析(0个评论)
    • Ubuntu 22.04系统中安装podman流程步骤(1个评论)
    • 近期文章
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2017-11
    • 2020-06
    • 2021-05
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-03
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-11
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2024-03
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客