单机k8s环境
基本配置
内容 参数
操作系统 centos7
机器环境 VMware虚拟机
部署目标 Nginx任意版本

虚拟机配置
内容 参数
网卡模式 NAT
CPU核心数 2
内存 4G

基本安装
安装docker
环境准备
[root@ruozedata001 yum.repos.d]# rpm -qa|grep docker
docker-ce-cli-18.09.7-3.el7.x86_64
docker-ce-18.09.7-3.el7.x86_64
[root@ruozedata001 yum.repos.d]# rpm -e docker-ce-cli-18.09.7-3.el7.x86_64
error: Failed dependencies:
docker-ce-cli is needed by (installed) docker-ce-3:18.09.7-3.el7.x86_64
[root@ruozedata001 yum.repos.d]# rpm -e docker-ce-3:18.09.7-3.el7.x86_64
/usr/bin/dockerd has not been configured as an alternative for dockerd
[root@ruozedata001 yum.repos.d]# rpm -e docker-ce-cli-18.09.7-3.el7.x86_64
[root@ruozedata001 yum.repos.d]# rpm -qa|grep docker
[root@ruozedata001 yum.repos.d]# ll /var/lib/docker/
[root@ruozedata001 yum.repos.d]# rm -rf /var/lib/docker/* 这一步一定不要忘
[root@ruozedata001 yum.repos.d]# rm /etc/yum.repos.d/docker*.repo
加粗样式

拉取镜像

// 查看kubeadm镜像
kubeadm config images list

// 结果
k8s.gcr.io/kube-apiserver:v1.22.1
k8s.gcr.io/kube-controller-manager:v1.22.1
k8s.gcr.io/kube-scheduler:v1.22.1
k8s.gcr.io/kube-proxy:v1.22.1
k8s.gcr.io/pause:3.5
k8s.gcr.io/etcd:3.5.0-0
k8s.gcr.io/coredns/coredns:v1.8.4

// 执行如下脚本(没有FQ的同学只能通过阿里云镜像或者其他镜像)
for i in kubeadm config images list; do
imageName=KaTeX parse error: Expected '}', got '#' at position 3: {i#̲k8s.gcr.io/} do…imageName
docker tag registry.aliyuncs.com/google_containers/ i m a g e N a m e k 8 s . g c r . i o / imageName k8s.gcr.io/ imageNamek8s.gcr.io/imageName
docker rmi registry.aliyuncs.com/google_containers/$imageName
done;
开机启动 && 启动服务
systemctl enable kubelet && systemctl start kubelet

初始化安装:
kubeadm init

报错:
重新链接新的终端
初始化时:修改/var/lib/kubelet/config.yaml
修改cgroupDriver: systemd为cgroupfs
sed -i s/systemd/cgroupfs/g /var/lib/kubelet/config.yaml
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown ( i d − u ) : (id -u): (idu):(id -g) $HOME/.kube/config

开启单机模式:
kubectl taint nodes --all node-role.kubernetes.io/master-

安装网卡插件:
kubectl apply -f “https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d ‘\n’)”

完成后查看集群:

k8s增加命令tab功能
安装
yum install -y bash-completion
生效
source /usr/share/bash-completion/bash_completion
设置
source <(kubectl completion bash)
变量
echo “source <(kubectl completion bash)” >> ~/.bashrc

安装nginx测试
kubectl create deployment nginx --image=nginx

kubectl expose deployment nginx --port=80 --type=NodePort

命令删除pod:
1、先删除pod
2、再删除对应的deployment
否则只是删除pod是不管用的,还会看到pod,因为deployment.yaml文件中定义了副本数量
kubectl delete deployment nginx -n default

Kubectl delete svc nginx

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐