Pěknou botu jsem dnes vyrobil. Takovou, že si ji raději zapíšu, aby se mi to nepovedlo znovu. Network Load Balancing služba běžící na několika web serverech (a je už jedno, zdali Windows Server 2003 či 2008) dokáže spořádat pěknou porci požadavků od uživatelů. Přesto se však stává, že je občas některý ze serverů velmi zatížen – typicky při “návštěvě” nějakého ne příliš citlivého indexovacího robota. Pokud je afinita NLB pravidla nastavena na Network či Single, směřuje provoz od žádající IP adresy vždy na jeden webový server. Tento server pak může být přetížen. Zkrátka a dobře jsme si řekli, že by bylo dobré nastavit afinitu na None, takže by se load-balancovaly všechny jednotlivé požadavky, tj. i ty, které by pocházely od uživatele se stejnou IP adresou. Více...
Ačkoliv má BlogEngine.NET v sobě zabudovaný skrytý CAPTCHA kód, který celkem úspěšně zabraňuje strojově přidávaným komentářům, vyskytuje se v poslední době další fenomén – lovci SEO zadávají ručně komentáře na dle jejich názoru navštěvované servery, aby si zvýšili svůj pagerank v Googlu, Binqu atd.
Na česky psaném blogu vždy takový komentář vypadá jako pěst na oko, takže to ani moc nezkoušeli. V průběhu posledních dvou týdnů se však situace změnila a těch komentářů – spamů rapidně narostlo. Nechci nastavovat moderování = schvalování komentáře před jeho zveřejněním, proto jsem si nastavil pouze e-mailové anotace, že byl přidán komentář, nicméně si říkám, proč bych měl těmhle podivným existencím tolerovat zneužívání technologií k jejich prospěchu. Začal jsem tedy hledat, co se děje. Pokud by někdo měl blog postavený na BE.NET 1.4 či 1.5, příjde mu třeba tento článek vhod. Více...
Ačkoliv se jedná o vcelku běžnou operaci, stojí za to si srovnat jednotlivé kroky a vyvarovat se případných problémů.
- zkontrolovat převedení FSMO rolí, pokud nepřevedeny, tak převést
netdom query fsmo - zkontrolovat existenci dalšího GC, pokud odstraňovaný AD byl GC
- zkontrolovat převod Licensing Computer (pod ADS&S, Sites, jméno sajty, Licensing Site Settings)
- zkontrolovat TS Licensing server
- pokud byl odstraňovaný AD PDC, zkontrolovat, že nový PDC má nastaven timeserver a má prostup na externí time server
- zkontrolovat pořadí DNS serverů nakonfigurovaných na síťovce odstraňovaného serveru (jako první v pořadí nesmí odkazovat sám na sebe, jinak se odebrání AD nepovede)
- pokud měl odstraňovaný server nakonfigurovány DNS forwarders, zkontrolovat, že jiné AD je mají nakonfigurovány také a že mají povolené prostupy přes firewall
- roli AD odebírat pomocí Správce serveru/Manage your server
- po restartu odebrat DNS roli
- pokud je to žádoucí, vyjmout server z domény
- zkontrolovat na zbylých AD řadičích stav AD a stav DNS – z něj je zpravidla potřeba odmazat u všech zón odstraněný name server, občas i implicitní A záznam domény, odkazující na IP adresu odstraněného serveru
Při pokusu o přihlášení se objevuje tato chybová hláška:
530 User domain\user cannot log in, home directory inaccessible.
Login failed.
Problém je v tom, že izolace uživatelů využívá ještě jedné adresářové struktury (na rozdíl od IIS5) ve tvaru:
\\ftproot\LocalUser\%UserName%
\\ftproot\%DomainName%\%UserName%
Takže místo c:\inetpub\ftproot\user1\ je potřeba mít vytvořenou adresářovou strukturu c:\inetpub\ftproot\domain\user1\.
V článku o IIS6 a Apache jsem si poznamenal použití httpcfg.exe z Windows Serveru 2003 Support Tools. IIS se při spuštění natvrdo "zavěsí" na porty 80 a 443 všech IP adres přidělených danému stroji a to i přesto, že třeba žádnou z nich nemá ve Web či FTP bindings a dokonce i v případě kdy žádný web nemá zvoleno (All Unassigned). Výše popsané funguje zcela shodně v IIS 7. Jen nástroj je k tomu potřeba zvolit jiný. Více...