Matt Can Code  

https://www.techrepublic.com/article/how-to-install-a-kubernetes-cluster-on-centos-7/

https://www.youtube.com/watch?v=MgXh2HpNBtk&t=30s

 

 

kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended/kubernetes-dashboard.yaml
 

 

 

[Asdf1234@KubernateBox2 ~]$ sudo -i
[sudo] password for Asdf1234:
[root@KubernateBox2 ~]# sudo su
[root@KubernateBox2 ~]# hostname -I
10.0.2.4
[root@KubernateBox2 ~]# hostname
KubernateBox2

[root@Kubernates-Worker Asdf1234]# nano /etc/hosts


[root@Kubernates-Worker ~]# setenforce 0
[root@Kubernates-Worker ~]# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
[root@Kubernates-Worker ~]# swapoff -a


[root@KubernateBox2 ~]# systemctl disble firewalld
Unknown operation 'disble'.
[root@KubernateBox2 ~]# systemctl disable firewalld
[root@KubernateBox2 ~]# systemctl stop firewalld
[root@KubernateBox2 ~]# systemctl status firewalld

 nano /etc/yum.repos.d/kubernetes.repo

     

[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
        https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg

[root@KubernateBox2 ~]# yum install -y kubelet kubeadm kubectl docker docker-compose -y

 

[root@Kubernates-Worker ~]# systemctl restart docker && systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
[root@Kubernates-Worker ~]# systemctl restart kubelet && systemctl enable kubelet

kubeadm init --apiserver-advertise-address=[192.168.1.99]

 

[Asdf1234@KubernateBox2 ~]$ mkdir -p $HOME/.kube
[Asdf1234@KubernateBox2 ~]$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/co nfig
[sudo] password for Asdf1234:
[Asdf1234@KubernateBox2 ~]$ sudo chown $(id -u):$(id -g) $HOME/.kube/config

[Asdf1234@KubernateBox2 ~]$ kubectl get pods -o wide --all-namespaces


NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
kube-system coredns-fb8b8dccf-n54mn 0/1 Pending 0 13m <none> <none> <none> <none>
kube-system coredns-fb8b8dccf-v5njc 0/1 Pending 0 13m <none> <none> <none> <none>
kube-system etcd-kubernatebox2 1/1 Running 0 12m 10.0.2.4 kubernatebox2 <none> <none>
kube-system kube-apiserver-kubernatebox2 1/1 Running 1 12m 10.0.2.4 kubernatebox2 <none> <none>
kube-system kube-controller-manager-kubernatebox2 1/1 Running 0 12m 10.0.2.4 kubernatebox2 <none> <none>
kube-system kube-proxy-nhz5t 1/1 Running 0 13m 10.0.2.4 kubernatebox2 <none> <none>
kube-system kube-scheduler-kubernatebox2 1/1 Running 0 12m 10.0.2.4 kubernatebox2 <none> <none>

Use weave as network 

kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
OR Flannel
$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Untaint the 

kubectl taint nodes --all node-role.kubernetes.io/master-

Create Dashboard
kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/aio/deploy/recommended/kubernetes-dashboard.yaml
 

 

kubectl create serviceaccount dashboard -n default
kubectl create clusterrolebinding dashboard-admin -n default \ --clusterrole=cluster-admin \ --serviceaccount=default:dashboard
kubectl get secret $(kubectl get serviceaccount dashboard -o jsonpath="{.secrets[0].name}") -o jsonpath="{.data.token}" | base64 --decode


[root@Kubernates-Worker ~]# modprobe br_netfilter
[root@Kubernates-Worker ~]# echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables 

Connect the node machine to master 

kubeadm join 10.0.2.6:6443 --token u757d4.mgsabrr45v46b8m5 \

--discovery-token-ca-cert-hash sha256:19454d45273b12bd4cf7604e0ad5212abf6148c52d58a1b53164db6a258c0489

 


[Asdf1234@KubernateBox2 ~]$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
kubernatebox2 Ready master 17m v1.14.1

posted on 2026-01-17 18:51  Matt Yeung  阅读(29)  评论(0)    收藏  举报