Centos8安裝部署k8s


 

官方網址:

https://www.kubernetes.org.cn/7189.html

 

系統的准備,網絡的配置

cat /etc/centos-release
cat  <<EOF>> /etc/sysconfig/netowrk-scripts/ifcfg-enp0s3
IPADDR=192.168.1.1
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
DNS1=114.114.114.114
EOF

sed -i 's/BOOTPROTO=dhcp/BOOTPROTO=none' /etc/sysconfig/netowrk-scripts/ifcfg-enp0s3
sed -i 's/ONBOOT=no/ONBOOT=yes' /etc/sysconfig/netowrk-scripts/ifcfg-enp0s3

配置主機名
cat <<EOF>> /etc/hosts
192.168.0.109 k8s.master
EOF


下載 添加阿里雲源
rm -rfv /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo

關閉swap分區

swapoff  -a            #並進行查看

配置內核參數

cat <<EOF>> /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system

安裝常用的包,並安裝docker-ce

yum install vim bash-completion net-tools gcc -y
yum install -y yum-utils device-mapper-persistent-data lvm2

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum -y install docker-ce

如果安裝出錯的話,

wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

yum install containerd.io-1.2.6-3.3.el7.x86_64.rpm
再次進行安裝即可
yum -y install docker-ce

添加阿里雲的加速器

mkdir -p /etc/docker
cat /etc/docker/daemon.json <<-'EOF'
{
 "registry-mirrors": ["https://fl791z1h.mirror.aliyuncs.com"]
}
EOF
systemctl daemon-reload
systemctl restart docker

安裝kubectl kubelet kubeadm

添加阿里雲kubernetes源
cat <<EOF>> /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
EOF


yum install kubectl kubelet kubeadm
systemctl enable kubelet

初始化K8S集群

kubeadm init --kubernetes-version=1.16.0  \
--apiserver-advertise-address=192.168.0.112   \
--image-repository registry.aliyuncs.com/google_containers  \
--service-cidr=10.10.0.0/16 --pod-network-cidr=10.96.0.0/16

根據提示創建kubectl

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

添加一下命令,使kubectl可以自動填充
source <(kubectl completion bash)

安裝calico網絡

kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml

查看pod與節點

kubectl  get pod --all-namespaces

安裝dashboard

下載官方源
wget  https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0-rc7/aio/deploy/recommended.yaml

編輯文檔
vim recommended.yaml
kind: Service
apiVersion: v1
metadata:
  labels:
    k8s-app: kubernetes-dashboard
  name: kubernetes-dashboard
  namespace: kubernetes-dashboard
spec:
  type: NodePort
  ports:
    - port: 443
      targetPort: 8443
      nodePort: 30000
  selector:
    k8s-app: kubernetes-dashboard


創建使用
kubectl create -f recommended.yaml

查看運行的服務
kubectl get svc -n kubernetes-dashboard

創建token值

kubectl describe secrets -n kubernetes-dashboard kubernetes-dashboard-token-t4hxz  | grep token | awk 'NR==3{print $2}'

查看權限問題

kubectl logs -f -n kubernetes-dashboard

解決方法

kubectl create clusterrolebinding serviceaccount-cluster-admin --clusterrole=cluster-admin --group=system:serviceaccount 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM