专栏首页TA码字二进制安装k8s集群(13)-安装kube-proxy

二进制安装k8s集群(13)-安装kube-proxy

上一篇文章里我们主要介绍worker组件kubelet的安装,这里我们开始介绍安装另一个worker组件kube-proxy,这里我们采用下载二进制binary制作linux systemd的方式安装。这个组件也在下载的kubenetes包里(1.15.1版本),在以前文章里已经下载过,这里就不再重复。另外kube-proxy与kube-apiserver交互我们开启ssl,所以请提前制作好相关ssl证书(可以参考以前文章里制作docker的证书),并copy到配置目录里。

copy二进制文件:

cp /opt/sw/kubernetes/install/kubernetes/server/bin/kube-proxy /usr/bin/
whereis kube-proxy

创建配置目录:

mkdir -p /etc/kubernetes/kube-proxy
touch  /etc/kubernetes/kube-proxy/k8s-kube-proxy.conf

创建配置文件:

kube-proxy需要和kube-apiserver交互,这个交互可以利用kubeconfig文件做为配置文件。所以与kube-controller-manager一样,我们可以利用在kubectl安装过程中我们创建的kubeconfig文件。另外kube-proxy负责从kube-apiserver读取service和endpoints的信息,在host上创建iptable规则来实现k8s集群内部的负载均衡。对于kube-proxy的工作模式有iptable模式和ipvs模式,这里我们配置采用iptable模式。当然ipvs模式对于k8s内部service非常多的时候效率更高,对于实际应用具体选用那种模式请根据实际需求来定。对这块感兴趣的同学可以多了解一下iptable,ipvs(LVS负载均衡就是用的这个),以及在k8s里创建的相应规则,这里就不展开细节,扩展起来也可以写一个系列了。

cat >  /etc/kubernetes/kube-proxy/k8s-kube-proxy.conf<<EOF
KUBE_CONFIG_FILE="--kubeconfig=/etc/kubernetes/kubeconfig/config"
KUBE_PROXY_ARGS=""
EOF

source /etc/kubernetes/kube-proxy/k8s-kube-proxy.conf

创建systemd unit文件:

touch /usr/lib/systemd/system/kube-proxy.service

cat > /usr/lib/systemd/system/kube-proxy.service<<EOF
[Unit]
Description=Kubernetes Proxy Service
After=network.target network-online.target docker.service
Wants=network-online.target docker.service

[Service]
Type=simple
EnvironmentFile=-/etc/kubernetes/kube-proxy/k8s-kube-proxy.conf
ExecStartPre=-source /etc/kubernetes/kube-proxy/k8s-kube-proxy.conf
ExecStart=/usr/bin/kube-proxy ${KUBE_CONFIG_FILE} ${KUBE_PROXY_ARGS}

Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target
EOF

cat /usr/lib/systemd/system/kube-proxy.service

reload服务并设置开机启动:

systemctl daemon-reload
systemctl enable kube-proxy

启动服务并检查状态:

systemctl start kube-proxy
systemctl status kube-proxy

本文分享自微信公众号 - TA码字(gh_b08803f39249),作者:TA码字

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-10-24

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 二进制安装k8s集群(15)-安装kube-dashboard

    在上一篇文章里我们主要介绍安装k8s集群内的基础服务coredns,这里我们继续介绍安装k8s集群内基础服务kube-dashboard,这个基础服务也创建在k...

    TA码字
  • 二进制安装k8s集群(11)-安装kube-scheduler

    在上一篇文章里我们主要介绍master组件kube-controller-manager的安装,这里我们主要介绍安装另外一个master组件kube-sched...

    TA码字
  • k8s集群网络(10)-flannel vxlan overlay网络setup

    在上一篇文章里我们对基于iptable和ipvs模式下cluster ip类型的service和node port类型的service做了总结和对比,在这里我们...

    TA码字
  • consul服务中心

    2.1. 添加 maven 依赖 2.2. springboot 配置 application.yml 注册服务

    suveng
  • 基于 Docker for MAC 的 Kubernetes 本地环境搭建与应用部署

    下载最新的 Docker for Mac 或者 Edge 版本,即可以看到内置的 Kubernetes 集群,直接点击安装即可在本地搭建好单节点的 Kubern...

    王下邀月熊
  • K8S 生态周报| cilium 1.6 发布 100% kube-proxy 的替代品

    Kind(Kubernetes In Docker) 已经广泛的应用于 Kubernetes 上游及相关项目的 CI 环境中,作为个人本地的测试环境也很方便,推...

    Jintao Zhang
  • 二进制安装k8s集群(15)-安装kube-dashboard

    在上一篇文章里我们主要介绍安装k8s集群内的基础服务coredns,这里我们继续介绍安装k8s集群内基础服务kube-dashboard,这个基础服务也创建在k...

    TA码字
  • 大数据:大机遇还是大忽悠?

    大数据文摘
  • 生产环境使用kubeadm1.5版本证书到期解决方案

    生产环境使用k8s-1.5版本并且使用kubeadm直接安装后,出现证书一年到期,整个集群无法使用的情况。

    kubernetes中文社区
  • WatchBog新型变种分析

    近日发现新版本的WatchBog:自2018年底开始运行的加密货币挖掘僵尸网络。自6月初开始已有超过4,500台Linux机器遭到破坏。在新的Linux漏洞利用...

    FB客服

扫码关注云+社区

领取腾讯云代金券