kube-scheduler在集群中的作用

kube-scheduler是以插件形式存在的组件,正因为以插件形式存在,所以其具有可扩展可定制的特性。kube-scheduler相当于整个集群的调度决策者,其通过预选和优选两个过程决定容器的最佳调度位置。

kube-scheduler源码中的关键性调用链

k8s之kube-scheduler - 图1

1 hdss7-21上部署

  1. vi /opt/kubernetes/server/bin/kube-scheduler.sh
  2. #!/bin/sh
  3. ./kube-scheduler \
  4. --leader-elect \
  5. --log-dir /data/logs/kubernetes/kube-scheduler \
  6. --master http://127.0.0.1:8080 \
  7. --v 2
  8. chmod +x /opt/kubernetes/server/bin/kube-scheduler.sh
  9. mkdir -p /data/logs/kubernetes/kube-scheduler
  10. vi /etc/supervisord.d/kube-scheduler.ini
  11. [program:kube-scheduler-7-21]
  12. command=/opt/kubernetes/server/bin/kube-scheduler.sh ; the program (relative uses PATH, can take args)
  13. numprocs=1 ; number of processes copies to start (def 1)
  14. directory=/opt/kubernetes/server/bin ; directory to cwd to before exec (def no cwd)
  15. autostart=true ; start at supervisord start (default: true)
  16. autorestart=true ; retstart at unexpected quit (default: true)
  17. startsecs=30 ; number of secs prog must stay running (def. 1)
  18. startretries=3 ; max # of serial start failures (default 3)
  19. exitcodes=0,2 ; 'expected' exit codes for process (default 0,2)
  20. stopsignal=QUIT ; signal used to kill process (default TERM)
  21. stopwaitsecs=10 ; max num secs to wait b4 SIGKILL (default 10)
  22. user=root ; setuid to this UNIX account to run the program
  23. redirect_stderr=true ; redirect proc stderr to stdout (default false)
  24. stdout_logfile=/data/logs/kubernetes/kube-scheduler/scheduler.stdout.log ; stderr log path, NONE for none; default AUTO
  25. stdout_logfile_maxbytes=64MB ; max # logfile bytes b4 rotation (default 50MB)
  26. stdout_logfile_backups=4 ; # of stdout logfile backups (default 10)
  27. stdout_capture_maxbytes=1MB ; number of bytes in 'capturemode' (default 0)
  28. stdout_events_enabled=false ; emit events on stdout writes (default false)
  29. # supervisorctl update
  30. # supervisorctl status
  31. # ln -s /opt/kubernetes/server/bin/kubectl /usr/bin/kubectl
  32. # kubectl get cs
  33. 同理22同步操作

image.pngimage.png