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