Kubernetes简化安装

Kubernetes安装

master节点的组成

1. kube-apiserver
2. kube-controller-manager
3. kube-scheduler
4. etcd (存储)

node节点的组成

1. kubelet
2. kube-proxy
3. docker (容器引擎)

K8S搭建环境准备
节点名 节点网络
master 10.10.10.0/24
node 10.244.0.0/16
service网络 10.96.0.0/12
K8S repos文件(CentOS7.X)

$ cd /etc/yum.repos.d
$ wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
$ cat kubernetes.repo
[KUBERNETES]
name=kubernetes el7 x86_64
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubern etes-el7-x86_64/
gpgcheck=0
enabled=1

安装docker,kubernetes
master节点安装docker,kubelet,kubeadm,kubectl

$ yum install -y docker-ce kubeadm kubelet kubectl
image

node节点安装

$ yum install -y docker-ce kubelet kubeadm

修改docker代理并启动docker

$ vim /usr/lib/systemd/system/docker.service
[Service]
Environment="HTTPS_PROXY=http://vps.sarehart.com:28888"
Environment="NO_PROXY=127.0.0.0/8,10.10.10.0/24"
$ systemctl daemon-reload
$ systemctl enable docker
$ systemctl start docker
$ echo 1 > /proc/sys/net/bridge/bridge-nf-call-ip6tables
$ echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables
$ systemctl enable kubelet (设置为开机自启动即可,后面再行配置)

初始化kubeadm

修改配置文件

$ vim /etc/sysconfig/kubelet
KUBELET_EXTRA_ARGS="--fail-swap-on=false"
$ kubeadm init --kubernetes-version=v1.13.4 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/16 --ignore-preflight-errors=swap
# 检查下载进度
$ docker image ls
# 初始化完成后保存生成的join信息
$ cat kubernetes.txt
kubeadm join 10.10.10.30:6443 --token s11oss.o6gmj8xzhpacsodz --discovery-token-ca-cert-hash sha256:4681e7e076350f6492fceef9bae89870f0485342a845b3b17689a05c1cc0ae18 --ignore-preflight-errors=Swap
# 根据提示创建
$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u)😒(id -g) $HOME/.kube/config
image

部署flannel

kubernetes v1.7+ 可以使用此方法安装

$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
# 检查flannel启动情况
$ kubectl get pods -n kube-system # 指明所属名称空间

kubectl使用

$ kubectl get cs(componentstatus) # 查看组件健康状态信息
$ kubectl get nodes # 查看节点信息
$ kubectl get ns(namespace) # 查看名称空间

posted @ 2019-03-26 17:24  Hadeian  阅读(185)  评论(0)    收藏  举报