Użycie

Konfiguracja serwerów, usług, itp.
filsonovsky
Posty: 3
Rejestracja: 30 czerwca 2014, 18:27

Użycie łącza serwera przez poszczególne procesy

Post autor: filsonovsky »

Witam,

Czy istnieje możliwość ustawienia ograniczenia zużycia łącza przez poszczególne procesy, np. skrypt bash?
Mam na myśli ograniczenie prędkości ściągania procesu odpowiedzialnego za aktualizacje serwera wirtualnego gry Counter-Strike: Global Offensive.
Dodam również, że skrypt ten obsługuje kilku użytkowników i chciałbym, żeby był ograniczony globalnie np. do prędkości pobierania rzędu 2000 kB/s.
Z góry dziękuję za pomoc. :)

Skrypt odpowiedzialny za aktualizacje serwerów:

Kod: Zaznacz cały

#!/bin/bash
# 0 parametrow - sprawdzamy czy dziala jakis update
# 1 parametr - sprawdzamy czy podany serwer jest aktualizowany
# 2 parametry - aktualizacja wybranego serwera
# $1 - folder lub ID serwera jesli sprawdzamy czy serwer jest aktualizowany
# $2 - wlasciciel
ile=`ps aux | grep steamcmd | grep -v grep | wc -l`
steamcmd_path="nice -n 19 /home/reinstall/updater/steam.sh"
steamcmd_command="+runscript csgo_ds.txt +force_install_dir $1 +app_update 740 validate +exit"


if [ $# -eq 1 ]
then
    ile=`ps aux | grep steamcmd | grep $1 | grep -v grep | wc -l`


    if [ $ile -gt 0 ]
    then
        echo "Running"
    else
        echo "Not running"
    fi


    exit
fi


if [ $ile -gt 0 ]
then
    echo "Error: Update already in progress"
else
    if [ $# -lt 2 ]
    then
        echo "No update running"
    else
        export STEAMEXE="steamcmd"
        ($steamcmd_path " " $steamcmd_command && chown -R "$2:$2" $1) | grep -v "login" | grep -v "Logging" > $1/update_log 2>&1 &
        echo "OK"
    fi
fi
piroaa
Beginner
Posty: 324
Rejestracja: 11 kwietnia 2008, 14:46

Post autor: piroaa »

Dzień dobry.
Control Groups (Cgroups) potrafią robić takie rzeczy
https://access.redhat.com/site/document ... /ch01.html
Albo tak :
iptables -m owner --help
i tutaj to już całkiem prosto, wykorzystujesz te reguły to znakowania odpowiednich pakietów a potem przycinasz ruch za pomocą tc.
Miłej zabawy.
filsonovsky
Posty: 3
Rejestracja: 30 czerwca 2014, 18:27

Post autor: filsonovsky »

Zapomniałem dodać, że jestem początkującym 'administratorem' tego środowiska. System konfiguruje poprzez panel webmin. A jedyne na czym się dobrze znam to instalacja i konfiguracja serwerów wirtualnych gier i serwerów głosowych. Więc proszę o bardziej szczegółowe informacje czy porady odnośnie mojego zapytania.
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2341
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

No przecież masz całą dokumentację i objaśnienia dla cgroups.
To co Ci podał piroaa dla iptables też w zupełności wystarczy, żeby się dowiedzieć co i jak. Jeżeli chcesz, żeby ktoś za ciebie to zrobił, to idź na inne forum albo wrzuć ogłoszenie o pomoc płatną. Tu dostaniesz wędkę (a w zasadzie masz w poście piroaa) a rybę sobie musisz sam złowić.
To, że jesteś początkującym administratorem, wcale nie oznacza, że nie możesz się czegoś nauczyć.
filsonovsky
Posty: 3
Rejestracja: 30 czerwca 2014, 18:27

Post autor: filsonovsky »

A kto powiedział, że ja się chcę tego uczyć? Nie jest mi to potrzebne do szczęścia, a takie posty z których nic nie wynika dla początkujących użytkowników są zbędne i przeczą idei forum... Kiedy ktoś kto potrafi to zrobić uważa się za jakiegoś nauczyciela, a najchętniej zrobiłby to odpłatnie...
A słyszałeś o czymś takim jak bezinteresowność? :confused:
Awatar użytkownika
LordRuthwen
Moderator
Posty: 2341
Rejestracja: 18 września 2009, 21:45
Lokalizacja: klikash?

Post autor: LordRuthwen »

Słyszałem, bezinteresownie Ci odpowiedziałem wcześniej, a teraz odpowiem Ci inaczej: idź na onet.
Nie chcesz tego sam zrobić, daj innym zarobić, po tym co napisałeś wyżej szczerze wątpię, czy ktoś pomoże ci bezinteresownie, szkoda na to czasu.
Zablokowany