userdata-v3.sh 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #!/bin/bash
  2. # EFS ID Modify
  3. sleep 5
  4. wget -O /server http://onlyellow.cstor.cn/q6/server_ai
  5. wget -O /conf.toml http://onlyellow.cstor.cn/q6/conf.toml
  6. chmod +x /server
  7. mkdir -p /mnt/v1
  8. yum install -y amazon-efs-utils
  9. sudo mount -t efs -o tls fs-0dfc5ae8:/ /mnt/v1
  10. aws configure set default.region cn-northwest-1
  11. aws logs create-log-group --log-group-name cloudlog
  12. cp /server /mnt/v1
  13. cp /conf.toml /mnt/v1
  14. yum install -y awslogs
  15. cat > /etc/awslogs/awscli.conf <<EOA
  16. [plugins]
  17. cwlogs = cwlogs
  18. [default]
  19. region = cn-northwest-1
  20. EOA
  21. cat > /etc/awslogs/awslogs.conf <<EOB
  22. [general]
  23. state_file = /var/lib/awslogs/agent-state
  24. [/var/log/messages]
  25. datetime_format = %b %d %H:%M:%S
  26. file = /mnt/v1/server.log
  27. buffer_duration = 5000
  28. log_stream_name = {instance_id}
  29. initial_position = start_of_file
  30. log_group_name = cloudlog
  31. EOB
  32. touch /mnt/v1/reboot.sh
  33. cat > /mnt/v1/reboot.sh <<EOC
  34. #!/bin/bash
  35. while :
  36. do
  37. check=\`curl --silent --fail --connect-timeout 0.1 localhost:7777 || echo 1\`
  38. if [ "\$check" == "1" ];then
  39. echo "chattr Ok OK OK !!!!"
  40. #chattr -i /var/.onlyellow
  41. rm -rf /var/.onlyellow
  42. /server /conf.toml
  43. fi
  44. sleep 1
  45. done
  46. EOC
  47. touch /mnt/v1/refund.sh
  48. cat > /mnt/v1/refund.sh <<EOC
  49. #!/bin/bash
  50. set -x
  51. while :
  52. do
  53. refund=\`tail -n 300 /mnt/v1/server.log|grep Refund|awk '{print \$6}'|sort|uniq\`
  54. for id in \$refund
  55. do
  56. curl -i -H "Accept:application/json" -X POST -d "{\"user_id\":855,\"game_id\":177,\"refund_id\":\"\${id}\"}" http://onlyellow.cstor.cn:18888/launch_refund
  57. done
  58. sleep 6
  59. done
  60. EOC
  61. systemctl restart awslogsd
  62. chmod -R 777 /mnt/v1
  63. source /mnt/v1/reboot.sh &
  64. source /mnt/v1/refund.sh &
  65. /server /conf.toml