deployVNET.sh 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. #!/bin/bash
  2. #VNET 一键部署脚本
  3. function check_system(){
  4. if [[ -f /etc/redhat-release ]]; then
  5. release="centos"
  6. elif cat /etc/issue | grep -q -E -i "debian"; then
  7. release="debian"
  8. elif cat /etc/issue | grep -q -E -i "ubuntu"; then
  9. release="ubuntu"
  10. elif cat /etc/issue | grep -q -E -i "centos|red hat|redhat"; then
  11. release="centos"
  12. elif cat /proc/version | grep -q -E -i "debian"; then
  13. release="debian"
  14. elif cat /proc/version | grep -q -E -i "ubuntu"; then
  15. release="ubuntu"
  16. elif cat /proc/version | grep -q -E -i "centos|red hat|redhat"; then
  17. release="centos"
  18. fi
  19. bit=`uname -m`
  20. if [[ ${release} == "centos" ]] && [[ ${bit} == "x86_64" ]]; then
  21. echo -e "当前系统为[${release} ${bit}],\033[32m 可以搭建\033[0m"
  22. else
  23. echo -e "当前系统为[${release} ${bit}],\033[31m 不可以搭建 \033[0m"
  24. echo -e "\033[31m 脚本停止运行(●°u°●)​ 」,请更换centos7.x 64位系统运行此脚本 \033[0m"
  25. exit 0;
  26. fi
  27. }
  28. function install_vnet(){
  29. # 检测依赖
  30. if ! [ -x "$(command -v wget)" ]; then
  31. echo "缺少wget,自动安装"
  32. yum install wget -y
  33. fi
  34. echo '设置每天几点几分重启节点'
  35. read -p " 按下回车默认0时, 小时(0-23): " -r -e -i 7 hour
  36. read -p " 按下回车默认30分,分钟(0-59): " -r -e -i 30 minute
  37. read -p " 面板地址: " -r -e -i https://example.com api_host
  38. read -p " 面板通讯密钥: " -r -e -i xxxxx api_key
  39. read -p " 节点id: " -r -e -i 1 node_id
  40. cd /root/
  41. #清理上次下载
  42. rm -rf vnet_latest.tar.gz vnet
  43. #下载vnet最新版本压缩包
  44. wget https://kitami-hk.oss-cn-hongkong.aliyuncs.com/vnet_v4.tar.gz -O vnet_latest.tar.gz
  45. mkdir -p /root/vnet
  46. tar -xzvf vnet_latest.tar.gz -C vnet
  47. cd /root/vnet
  48. chmod +x vnet
  49. # 生成配置文件
  50. cat > config.json << EOF
  51. {
  52. "node_id":$node_id,
  53. "key": "$api_key",
  54. "api_host": "$api_host"
  55. }
  56. EOF
  57. echo "配置已生成"
  58. # 服务安装
  59. ln -P vnet.service /etc/systemd/system/
  60. systemctl daemon-reload
  61. systemctl enable vnet
  62. systemctl start vnet
  63. echo "服务已安装"
  64. # 关闭防火墙
  65. systemctl stop firewalld
  66. systemctl disable firewalld.service
  67. echo "防火墙已关闭"
  68. echo "$minute $hour * * * root /sbin/reboot" >> /etc/crontab
  69. echo "已设置自动重启"
  70. }
  71. check_system
  72. install_vnet