LINUX.ORG.RU

Сообщения forella

 

Как ускорить компиляцию Ядра/пакетов в gentoo?

При сборке ядра, либо пакетов установки новых\обновлении существующих, как задействовать все ресурсы системы и ускорить этот процесс?

например имеем сервер 2*e5-2680v4 (28 ядер в сумме) и 64гб озу.

конфиг

COMMON_FLAGS=«-march=native -O2 -pipe»

MAKEOPTS=«-j28 -l28»

При компиляции ядра LA 0.75, использование cpu 3-5%.

Можно как-то ускорить процесс задевствовавши все ресурсы cpu?

 , ,

forella
()

изменить параметр temp1_max cpu

Предыстория: Есть сервер hp gen8, с болячкой плохого охлаждения cpu, не конкретного, а как я понял, у всех даной линейки серверов. Температура процессора считывается не напрямую с процессора а гдето рядом на плате, всвязи с этим разница температур фактическая (на датчике процессора) и системная которая отображается в ipmi(согласно которой регулируется обдув) отличается на 25-35 градусов, т.е. при стресстесте процессора в lm_sensors 75 градусов, в ipmi 45, и система обдув практически не регулирует. такая проблема обсуждалась вот тут

в sensors -u есть параметры (temp1 - по всем ядрам, temp2,temp3 и т.д. по каждому кокретному)

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:
  temp1_input: 31.000
  temp1_max: 80.000
  temp1_crit: 100.000
  temp1_crit_alarm: 0.000

при нагрузочном тесте температура процессора уверенно ползет к 80 градусам на которые обдув не реагирует никак, в ipmi то 45-47, а по факту 80, но когда температура достигает 80 градусов что является первым высоким порогом для процессора сразу ускоряется обдув не давая нагреться больше но и не охлаждает меньше, все время держит 79-80, как я понял ядро вступает в работу не давая перегреть процессор. Всвязи с этим возникла идея уменьшить параметр temp1_max чтобы не давать так сильно греться процессору, т.к. при нужной нагрузке всреднем температура до 60 градусов, можно порог уменьшить до этого показателя, а при повышеной нагрузке пускай включаются вентиляторы на усиленную работу.

вобщем нашел что в /etc/sensors.d/ можно задать свои параметры, что-то типа:

chip «coretemp-isa-0000»
set temp1_max 55

но в итоге получается

Error: File /etc/sensors.d/cpu, line 2: Failed to set value
coretemp-isa-0000: At least one «set» statement failed

вот тут человек пытался «охладить» ноутбук подобным способом, но тоже неудачно т.к. эти параметры только для чтения, и решил проблему передав параметр ядру termal.crt=<value>, но печаль в том что это было актуально до 4 версии ядра, а после такой параметр убрали, либо переименовали, не смог его найти в sysctl либо может забыл включить параметр при сборке ядра?

Собственно вопрос: каким способом можно уменьшить параметр temp1_max?

 , , ,

forella
()

не работает несколько SNAT

не получается применить одно правило snat. есть вот такой кусок iptables:


-A POSTROUTING -s 192.168.2.3/32 -o vlan0111 -j SNAT --to-source 1.1.1.6

-A POSTROUTING -m set --match-set realip src -j REALIP
-A POSTROUTING -m set --match-set tel src -j TEL

-A TEL -j SNAT --to-source 2.2.2.150-2.2.2.157
-A REALIP -j SNAT --to-source 1.1.1.4

set tel вся подсеть - 192.168.2.0/24, set realip - пустой, vlan0111 - 1.1.1.0/24

хочется один ip из подсети 192.168.2.0.24 пустить по другому ip, но не работает правило -A POSTROUTING -s 192.168.2.3/32 -o vlan0111 -j SNAT --to-source 1.1.1.6 хоть в какое место его не ставь, всеравно ухоит тот ip по правилу -A TEL -j SNAT --to-source 2.2.2.150-2.2.2.157

но если добавить один ip в set realip то правило -A REALIP -j SNAT --to-source 1.1.1.4 работает. создавать оттдельный сет для каждого нужного ip не хочется. может кто-то подсказать почему не работает правило для одного ip?

кстати а в этой связке DNAT работает нормально: A PREROUTING -d 1.1.1.6/32 -i vlan0111 -j DNAT --to-destination 192.168.2.3.

похожая проблема в этой теме, но так и не решена была: Iptables -SNAT подмена ip

 , , , ,

forella
()

отказоустойчивый dns\dhcp\router

посоветуйте какие решения можно применить в даной ситуации:

имеется сеть примерно как на схеме: https://ibb.co/p41qYVg

хочется переделать примерно так: https://ibb.co/BTc3nTL

на даный момент 2 linux шлюза каждый обслуживает часть локалки, на сервере dns(unbound), dhcp (isc), nat, полисинг и еще по мелочи, но это основное. третий сервер в резерве с конфигами обоих. хочется разделить dns\dhcp на оттдельный сервер, роутинг на другой и каждый забэкапить но с автоматиечским переключением.

  1. dhcp - нашел функцию failover но как понял там выдаются ip из пула случайные и у каждого половина общего пула. не подходит. выдаем по option82 (свитч\порт). поидее можно синхронизировать конфиги, будет работать при отвале?
  2. unbound - тут пока решение не нашел.
  3. тут сложнее, все что не находил восновном рачитано на сервисы, типа лег сервис, переносим ip на другой сервер и работаем дальше или подобные решения. Но тут проблема что каждый сервер сейчас натит 100-150 ip.

Собственно вопрос: может у кого-то есть подобная схема в работе, как вы зарезервировали свое оборудование?

так же еще один вопрос по сетевым картам чтоб не создавать еще одну тему: если две двухпортовые x520 10G объеденить в 1 bond (т.е. 40гбит) в двухпроцессороном сервере будет ли нормально работать?

 , , , ,

forella
()

не работает маршрутизация на несколько uplink'ов

имеется 3 аплинка, не ходит трафик по не дефолтному маршруту.

схема для наглядности https://ibb.co/GWWmwCj

ядро Linux 5.10.52-gentoo

ip ro, ip rule, ipset


# ip route show table utel1
default via 172.21.3.1 dev vlan0302 metric 10 
172.21.3.0/24 dev vlan0302 scope link metric 10 

# ip route show table utel2
default via 172.21.4.1 dev vlan0303 metric 16 
172.21.4.0/24 dev vlan0303 scope link metric 16 



# ip rule

0:      from all lookup local
20999:  from 172.21.4.0/24 lookup utel2
21000:  from all fwmark 0x3 lookup starnet
21999:  from x.x.x.0/24 lookup ***rnet
22000:  from all fwmark 0x1 lookup utel1
22000:  from all fwmark 0x2 lookup utel2
32765:  from 172.21.3.0/24 lookup utel1
32766:  from all lookup main
32767:  from all lookup default

# ipset list utel1
Name: utel1
Type: hash:net
Revision: 6
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 512
References: 2
Number of entries: 1
Members:
192.168.140.2

iptables

#!/bin/bash

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT



iptables -t mangle -N UTEL1
iptables -t mangle -A UTEL1 -j MARK --set-mark 1
iptables -t mangle -A UTEL1 -j CONNMARK --save-mark

iptables -t mangle -N UTEL2
iptables -t mangle -A UTEL2 -j MARK --set-mark 2
iptables -t mangle -A UTEL2 -j CONNMARK --save-mark




iptables -t mangle -A PREROUTING -m state --state ESTABLISHED,RELATED -j CONNMARK --restore-mark


iptables -t mangle -A PREROUTING -m state --state NEW -m set --match-set utel1 src -j UTEL1
iptables -t mangle -A PREROUTING -m state --state NEW -m set --match-set utel2 src -j UTEL2

iptables -t nat -N SNATUTEL1
iptables -t nat -A SNATUTEL1 -j SNAT --to-source 172.21.3.2

iptables -t nat -N SNATUTEL2
iptables -t nat -A SNATUTEL2 -j SNAT --to-source 172.21.4.2


iptables -t nat -A POSTROUTING -m set --match-set utel1 src -j SNATUTEL1
iptables -t nat -A POSTROUTING -m set --match-set utel2 src -j SNATUTEL2


вот что происходит после nat’a (скрин) https://ibb.co/mDWWKCP

ping 1.1.1.1 c 192.168.140.2

туда: 192.168.140.2 – 192.168.140.1 – 172.21.3.2 — 172.21.3.1 – в мир

обратно: мир - 172.21.3.1(dst 192.168.140.2 (откуда? 172.21.3.1 о подсети 192.168.140.0 ничего не знает соответственно пакет отбрасывает))

любая помощь будет полезна.

 ,

forella
()

зависают X'ы

переодически зависает рабочий стол Gnome (другого нет, не пробывал)
Debian 3.16.43-2+deb8u2 (2017-06-26) x86_64 GNU/Linux
видеокарта: 00:0d.0 VGA compatible controller: NVIDIA Corporation C61 [GeForce 7025 / nForce 630a] (rev a2)
вывод dmes при зависании

( читать дальше... )


Зависает по-разному, может 1-2 дня отработать нормально, а может 5-6 раз за час зависнуть.

 , ,

forella
()

зависает сервер.

Есть сервер: nat, dhcp, dns. Linux version 2.6.32-358.23.2.el6.i686, 12G ОЗУ 4 сетевые карты 2 в мир подключены, 2 в локалку: Ethernet controller: Intel Corporation I350 Gigabit Network Connection (rev 01) В пиках наргузка примерно 1,5-1,7 gbit и вот в єти моменты пиковые и иногда при меншей нагрузке 1-1,2 gbit, виснит сервер с вот таким вот логом в dmesg

( log dmesg )

Лог длинный, выложил только начало.

При нормальной работе выделение памяти в пределах 800-900 Мбайт, при доступных 12G

вывод ifconfig

( читать дальше... )

на сетевых стоящих в мир много пакетов overruns. Зависание сервера происходит по-разному: от простого отказа обслуживать dhcp и dns до завершения ядром процессов вплоть до sshd

 ,

forella
()

RSS подписка на новые темы