准备
1、我这里用的是阿里云托管版k8s,挂载两个work节点。
2、首先work节点需要上网,通过阿里云NAT绑定EIP做公网地址,添加DNAT和SNAT实现登陆服务器和服务器访问公网;
3、因为业务需要发送邮件,所以为EIP地址申请25端口权限,通过云盾申请;
4、挂载NAS存储,我将tomcat后台程序文件放置到阿里云极速版NAS存储中,但是我发现通过pod挂载普通NAS可以,挂载极速版NAS却不行,所以我直接将NAS挂载到work节点上;
安装nfs客户端
#yum install nfs-utils
提高同时发起nfs请求数量
#echo "options sunrpc tcp_slot_table_entries=128" >> /etc/modprobe.d/sunrpc.conf
#echo "options sunrpc tcp_max_slot_table_entries=128" >> /etc/modprobe.d/sunrpc.conf
创建挂载目录
# mkdir /data-app
挂载
# mount -t nfs -o vers=3,noacl,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport 0004c42a-1m31.cn-hangzhou.extreme.nas.aliyuncs.com:/share /data-app/
5、调整安全组,目的是让k8s下程序能访问到数据库及其他NFS;
6、配置kubectl,这里我直接挑选一台work节点,并配置补全;
1.安装bash-completion工具
yum install bash-completion -y
2.执行bash_completion
source /usr/share/bash-completion/bash_completion
3.加载kubectl completion
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~/.bashrc
7、定义yaml存储放置路径,我这里也放到了NAS存储下
ok 万事具备,编辑yaml部署即可
这里有个小插曲:
准备买k8s托管版的时候最高版本1.18版本,我测试环境也是1.18,等我真正买的时候发现出了1.20,本着尝鲜的想法干了一套1.20,结果出现了一个很奇怪的问题,就是我访问部署的服务页面时,会有一部分静态图片无法显示,这些静态资源在pod中手动找都能找到,并且刷新几下可能会再出现。。。并没有检查出问题原因,最后切换回1.18,正常了F。。。