免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Centos 8安裝Kubernetes 1.16.3 環(huán)境搭建實戰(zhàn)(ipvs篇)

Centos 8安裝Kubernetes 1.16.3 環(huán)境搭建實戰(zhàn)(ipvs篇)

原創(chuàng) 置頂 engchina 最后發(fā)布于2019-12-01 02:11:32 閱讀數(shù) 221
分類專欄: Kubernetes
版權(quán)聲明:本文為博主原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接和本聲明。

使用 kubeadm 搭建Kubernetes 1.16.3單節(jié)點集群實戰(zhàn)(基于Centos 8)

詳細(xì)步驟:

1,修改hosts

vi /etc/hosts

追加enp0s8的ip和hostname,例如

192.168.56.163 k8stest

2,創(chuàng)建install-k8s.sh

  1. #!/bin/bash
  2. echo "Start"
  3. export IP_ADDR=$(ip addr show enp0s8 | grep -Po 'inet \K[\d.]+')
  4. echo $IP_ADDR
  5. sudo su - << FOE
  6. # Stop firewall and selinux
  7. sudo systemctl disable --now firewalld
  8. sudo /usr/sbin/setenforce 0
  9. sudo sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config
  10. # Ignore Swap Error while installing kubernetes cluster with Swap
  11. cat<<EOF > /etc/sysconfig/kubelet
  12. KUBELET_EXTRA_ARGS=--fail-swap-on=false
  13. EOF
  14. # Install neccessary system tools
  15. sudo yum install -y dnf-utils
  16. # Open ipvs
  17. cat <<EOF >/etc/sysconfig/modules/ipvs.modules
  18. modprobe -- ip_vs
  19. modprobe -- ip_vs_rr
  20. modprobe -- ip_vs_wrr
  21. modprobe -- ip_vs_sh
  22. modprobe -- nf_conntrack_ipv4
  23. EOF
  24. sudo chmod 755 /etc/sysconfig/modules/ipvs.modules
  25. sudo bash /etc/sysconfig/modules/ipvs.modules
  26. sudo lsmod | grep -e ip_vs -e nf_conntrack_ipv4
  27. sudo dnf install ipset ipvsadm -y
  28. # Config iptables
  29. echo "br_netfilter" > /etc/modules-load.d/br_netfilter.conf
  30. cat<<EOF > /etc/sysctl.d/k8s.conf
  31. net.bridge.bridge-nf-call-ip6tables = 1
  32. net.bridge.bridge-nf-call-iptables = 1
  33. net.ipv4.ip_forward = 1
  34. EOF
  35. sudo modprobe br_netfilter
  36. sudo sysctl --system
  37. # Add Docker Repo
  38. sudo dnf config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  39. # Install Docker-CE
  40. sudo dnf makecache timer
  41. sudo dnf -y install --nobest docker-ce
  42. # Enable Docker
  43. sudo systemctl enable --now docker
  44. # Config Docker
  45. if [ ! -d "/etc/docker" ]; then
  46. mkdir /etc/docker
  47. fi
  48. cat<<EOF > /etc/docker/daemon.json
  49. {
  50. "exec-opts": ["native.cgroupdriver=systemd"],
  51. "log-driver": "json-file",
  52. "log-opts": {
  53. "max-size": "100m"
  54. },
  55. "storage-driver": "overlay2",
  56. "storage-opts": [
  57. "overlay2.override_kernel_check=true"
  58. ],
  59. "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
  60. }
  61. EOF
  62. sudo systemctl daemon-reload
  63. sudo systemctl restart docker
  64. # Add Kubernetes Repo
  65. cat <<EOF > /etc/yum.repos.d/kubernetes.repo
  66. [kubernetes]
  67. name=Kubernetes
  68. baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
  69. enabled=1
  70. gpgcheck=1
  71. repo_gpgcheck=1
  72. gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
  73. EOF
  74. sudo dnf install -y kubeadm kubectl kubelet
  75. sudo systemctl enable kubelet
  76. # Create Kubernetes Cluster
  77. kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=$IP_ADDR --kubernetes-version stable-1.16 --ignore-preflight-errors=Swap --image-repository registry.aliyuncs.com/google_containers
  78. FOE
  79. sleep 10s
  80. # Add User to docker group
  81. sudo usermod -a -G docker $(id -nu)
  82. # Create .kube folder
  83. if [ -f $HOME/.kube/config ]; then
  84. rm -rf $HOME/.kube/config
  85. fi
  86. if [ ! -d $HOME/.kube ]; then
  87. mkdir $HOME/.kube
  88. fi
  89. # Copy Kubernetes config file
  90. sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  91. sudo chown $(id -u):$(id -g) $HOME/.kube/config
  92. # Apply network plugin
  93. result=1
  94. while [ $result -ne 0 ]
  95. do
  96. kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
  97. result=$?
  98. sleep 10s
  99. done
  100. #kubectl apply -f https://docs.projectcalico.org/v3.10/manifests/calico.yaml
  101. # Taint master node
  102. kubectl taint nodes --all node-role.kubernetes.io/master-
  103. echo "Complete"

3,執(zhí)行install-k8s.sh

./install-k8s.sh

4,查看nodes

kubectl get nodes

結(jié)果

  1. NAME STATUS ROLES AGE VERSION
  2. k8stest Ready master 2m58s v1.16.3

5,查看所用pods

kubectl get pods -A

結(jié)果

  1. NAMESPACE NAME READY STATUS RESTARTS AGE
  2. kube-system coredns-58cc8c89f4-7nrwd 1/1 Running 0 2m56s
  3. kube-system coredns-58cc8c89f4-bfqbl 1/1 Running 0 2m56s
  4. kube-system etcd-k8stest 1/1 Running 0 2m12s
  5. kube-system kube-apiserver-k8stest 1/1 Running 0 115s
  6. kube-system kube-controller-manager-k8stest 1/1 Running 0 118s
  7. kube-system kube-flannel-ds-amd64-5z9l2 1/1 Running 0 2m54s
  8. kube-system kube-proxy-twc54 1/1 Running 0 2m56s
  9. kube-system kube-scheduler-k8stest 1/1 Running 0 112s

6,kube-proxy開啟ipvs
修改ConfigMap的kube-system/kube-proxy中的config.conf,mode: “ipvs”

kubectl edit cm kube-proxy -n kube-system

之后重啟各個節(jié)點上的kube-proxy pod:

kubectl get pod -n kube-system | grep kube-proxy | awk '{system("kubectl delete pod "$1" -n kube-system")}'

7,發(fā)布一個nginx deployment,進(jìn)行檢證。使用centos用戶執(zhí)行。???????

發(fā)布

kubectl create deployment nginx --image=nginx

查看deployments

kubectl get deployments

查看deployments的結(jié)果

  1. NAME READY UP-TO-DATE AVAILABLE AGE
  2. nginx 1/1 1 1 2m13s

查看pods

kubectl get pods -o wide

查看pods的結(jié)果

  1. NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
  2. nginx-86c57db685-pgmwq 1/1 Running 0 2m25s 10.244.0.4 k8stest <none> <none>

用curl訪問nginx應(yīng)用(IP是查看pods的結(jié)果的IP值)

curl 10.244.0.4

curl的結(jié)果

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>Welcome to nginx!</title>
  5. <style>
  6. body {
  7. width: 35em;
  8. margin: 0 auto;
  9. font-family: Tahoma, Verdana, Arial, sans-serif;
  10. }
  11. </style>
  12. </head>
  13. <body>
  14. <h1>Welcome to nginx!</h1>
  15. <p>If you see this page, the nginx web server is successfully installed and
  16. working. Further configuration is required.</p>
  17. <p>For online documentation and support please refer to
  18. <a >nginx.org</a>.<br/>
  19. Commercial support is available at
  20. <a >nginx.com</a>.</p>
  21. <p><em>Thank you for using nginx.</em></p>
  22. </body>
  23. </html>

8,為了操作方便,在~/.bashrc中加入如下內(nèi)容

  1. source <(kubectl completion bash)
  2. alias k=kubectl
  3. complete -F __start_kubectl k

然后執(zhí)行

source ~/.bashrc

這樣就可以用k代替kubectl命令了。

恭喜,kubernetes 1.16.3正常安裝完成。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
k8s搭建部署(超詳細(xì))
基于容器微服務(wù)的 PaaS 云平臺設(shè)計(二)通過kubernetes實現(xiàn)微服務(wù)容器管理
《基于Kubernetes的容器云平臺實戰(zhàn)》讀書筆記
Docker集群管理工具-Kubernetes部署記錄
Kubernetes(k8s)底層網(wǎng)絡(luò)原理刨析
Kubernetes 運維學(xué)習(xí)筆記
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服