首页 > 其他 > 详细

k8s-学习笔记1-架构与部署

时间:2020-05-03 16:20:12      阅读:47      评论:0      收藏:0      [点我收藏+]

https://blog.csdn.net/wenjianfeng/article/details/93347306

 https://www.cnblogs.com/python-cat/p/10831419.html

master部署

前提条件:docker已部署

添加yum源

vi /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

  

安装

kubelet 运行在 Cluster 所有节点上,负责启动 Pod 和容器。

kubeadm 用于初始化 Cluster。

kubectl 是 Kubernetes 命令行工具。通过 kubectl 可以部署和管理应用,查看各种资源,创建、删除和更新各种组件。

yum install kubelet kubeadm kubectl -y

  

检查swap和桥接

cat /proc/sys/net/bridge/bridge-nf-call-iptables
1

free -m
              total        used        free      shared  buff/cache   available
Mem:            991         151         365           7         475         674
Swap:             0           0           0

  

初始化

--image-repository string:这个用于指定从什么位置来拉取镜像

--kubernetes-version string:指定kubenets版本号(看一下之前安装的版本)

--apiserver-advertise-address 指明用 Master 的哪个 interface 与 Cluster 的其他节点通信。如果 Master 有多个 interface,建议明确指定,如果不指定,kubeadm 会自动选择有默认网关的 interface。

--pod-network-cidr指定 Pod 网络的范围。Kubernetes 支持多种网络方案,而且不同网络方案对  --pod-network-cidr有自己的要求,这里设置为10.244.0.0/16 是因为我们将使用 flannel 网络方案,必须设置成这个 CIDR。

kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.2 --apiserver-advertise-address 10.0.0.80 --pod-network-cidr=10.244.0.0/16

  

成功的话是以下信息,按照提示,先配置集群信息

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

You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
  https://kubernetes.io/docs/concepts/cluster-administration/addons/

Then you can join any number of worker nodes by running the following on each as root:

kubeadm join 10.0.0.80:6443 --token 7yasz7.oouxo59ravh4eitz     --discovery-token-ca-cert-hash sha256:545678e30451193c605e170ba3f8b8e500b9a5c7d0bb54bd00eb7c7113a4308d

  

配置完,kubectl就能用了

kubectl get cs
NAME                 STATUS    MESSAGE             ERROR
scheduler            Healthy   ok                  
etcd-0               Healthy   {"health":"true"}   
controller-manager   Healthy   ok  

  

为了使用更便捷,启用 kubectl 命令的自动补全功能。

echo "source <(kubectl completion bash)" >> ~/.bashrc

  

配置flannel网络

# kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

  

部署node

添加yum,安装kubelet kubeadm kubectl,检查桥接是否为1。

然后按照master部署好之后给出的提示,运行kubeadm join。

这时在master上跑kubectl get nodes,node已经有,但是还未ready

node上启动kubelet,就会ready

systemctl restart kubelet
systemctl enable kubelet 

  

 

 

k8s-学习笔记1-架构与部署

原文:https://www.cnblogs.com/jabbok/p/12822114.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!