Tlačiť (Ctrl+P)

Tento článok obsahuje popis niektorých prvkov správy systému 1C:Enterprise, ktoré sú typické pre verziu klient-server systému so systémom Microsoft SQL Server 2012:

Vytvorenie záložnej kópie vo verzii klient-server

Správa klastra serverov

Pomôcka na správu konzoly alebo klastra 1cv8 servers.msc je zásuvný modul MMC (Microsoft Management Console) a možno ho použiť na počítačoch, ktoré majú softvér. Štandardne je nainštalovaný v priečinku C:\Program Files (x86)\1cv8\common

Pomôcka na správu klastra navrhnuté na riešenie nasledujúcich problémov:

  • vytváranie, úprava a odstraňovanie serverových klastrov;
  • modifikácia existujúcich klastrov: vytváranie, zmena parametrov a mazanie pracovných serverov, priraďovanie požiadaviek na funkčnosť funkčným serverom;
  • nastavenie úrovne tolerancie chýb klastra;
  • manuálne nastavenie záťaže na jednotlivých pracovných serveroch;
  • správa zoznamov správcov centrálnych klastrových serverov a zoznamov správcov klastrov;
  • Monitorovanie pripojení používateľov k informačným základniam a pripojení služieb;
  • odpojenie používateľov od informačnú základňu;
  • monitorovanie zámkov objektov 1C:Enterprise 8 a zámkov pripojenia klienta;
  • operačná analýza blokov transakcií systému riadenia databáz;
  • správa blokovania pripojení používateľov k infobáze;
  • riadenie blokovania rutinných úloh.

V tomto článku sa budem zaoberať len registráciou novej informačnej základne

Registrácia novej informačnej základne

Ak chcete zaregistrovať novú informačnú bázu pomocou pomôcky na správu klastra serverov, vyberte požadovaný centrálny server, požadovaný klaster zaregistrovaný na tomto serveri, vetvu Infobázy v strome centrálnych serverov a vykonajte príkaz z kontextového menu Vytvoriť – Infobázu alebo podobný príkaz v hlavné menu pomôcky.

V dôsledku vykonania príkazu sa na obrazovke zobrazí dialógové okno s vlastnosťami informačnej databázy.

Parametre informačnej databázy sú ekvivalentné parametrom novej informačnej databázy vytvorenej pomocou spúšťacieho okna 1C:Enterprise.

Typ DBMS: Microsoft SQL Server.

Databázový server: názov servera. Môže byť špecifikovaný názvom počítača (ak je na počítači nainštalovaná jedna inštancia servera) alebo názvom konkrétnej inštancie (ak je nainštalovaných niekoľko inštancií). Napríklad Server/inštancia. Ak sú server 1C:Enterprise a Microsoft SQL Server umiestnené na rovnakom počítači a pre Microsoft SQL Server je nainštalovaný Native Client (native klient), potom je možné na komunikáciu medzi servermi použiť protokol SHARED MEMORY. Ak to chcete urobiť, musíte zadať predponu lpc: pred názvom servera Microsoft SQL Server. V tomto prípade bude názov servera DBMS vyzerať takto: lpc:Server/instance

Názov databázy: Prvý znak názvu databázy môže byť písmeno latinskej abecedy, ako aj znak „_“. Nasledujúce znaky môžu byť písmená latinskej abecedy, čísla, ako aj symboly „_“, „$“. Dĺžka názvu je obmedzená na 63 znakov. Medzery v názve nie sú povolené. Názov nemôže byť vyhradené slovo v jazyku dotazu databázového servera. V názve databázy nemožno použiť nasledujúce znaky: "<», «>"", "#", "%", """, "(", ")", "[", "]", "|", "\", "^", "`", ako aj znaky s kódmi od 0 do 31 a 127

Užívateľ databázy: meno používateľa databázového servera, v mene ktorého sa bude k databáze pristupovať. Je nevyhnutné, aby zadaný používateľ bol buď správcom databázového servera (sa) alebo vlastníkom databázy (ak už existuje), aby bolo možné v budúcnosti voľne upravovať štruktúru vybranej databázy. V druhom prípade musí mať tento používateľ prístup na čítanie do hlavnej databázy a úplný prístup k databáze tempdb. Okrem vyššie uvedeného musí byť určený používateľ členom s pevnou rolou servera processadmin alebo sysadmin.

Používateľské heslo: heslo používateľa, v mene ktorého sa bude pristupovať k databáze.

Posun dátumu– 0 alebo 2000. Tento parameter určuje počet rokov, ktoré sa pridajú k dátumom, keď sa uložia do databázy Microsoft SQL Server, a odpočítajú sa pri ich získaní. Prítomnosť tohto parametra je určená zvláštnosťami ukladania dátumu na serveri Microsoft SQL Server. Typ DATETIME používaný v Microsoft SQL Server vám umožňuje ukladať dátumy v rozsahu od 1. januára 1753 do 31. decembra 9999. A ak pri práci s informačnou bázou môže byť potrebné uložiť dátumy pred spodnou hranicou tohto rozsahu, potom by ste mali zvoliť hodnotu parametra 2000. Ak sa takéto dátumy nevyskytnú, môžete ako dátum vybrať 0 offset Po vytvorení infobase, hodnota tohto parametra nie podlieha zmenám.

POZOR! Ak v aplikačné riešenie sa používajú akumulačné registre alebo účtovné registre, potom v poli Date offset musíte nastaviť hodnotu 2000. Ak pri vytváraní databázy bola do tohto poľa zadaná hodnota 0, potom by ste mali nahrať infobázu do súboru, znova vytvorte databázu označujúcu hodnotu 2000 v poli Date offset a stiahnite informačnú základňu

POZOR! Názvy informačnej databázy musia byť jedinečné v rámci toho istého klastra. Pri registrácii novej infobázy systém skontroluje, či na zadanom databázovom serveri existuje databáza s rovnakým názvom. Ak databáza existuje, vytvorí sa spojenie s ňou. Ak existujúca databáza už obsahuje údaje z informačnej bázy 1C:Enterprise, vytvorí sa spojenie s už existujúcou informačnou bázou. A ak databáza neobsahuje údaje infobáz, tak sa v nej inicializuje nová infobáza 1C:Enterprise.

Chyba pri vykonávaní operácie s informačnou bázou

Pri pripájaní k SQL databáze môže dochádzať k rôznym chybám pri vytváraní alebo pripájaní. Napríklad, ak sa vyskytne nasledujúca chyba:

V tomto prípade došlo k pokusu o vytvorenie informačnej databázy a podnikový server nemohol nadviazať spojenie so serverom Microsoft SQL Server. Je potrebné skontrolovať:

  • Parametre autentifikácie používateľa (meno, heslo a práva na vytvorenie databázy);
  • Spĺňa názov databázy konvencie pomenovania?
  • Je názov databázového servera nastavený správne?
  • Zodpovedá typu overenia používateľa. Možno je používateľ prihlásený pod používateľským menom sql servera a v nastaveniach SQL je nastavený nesprávny typ overenia používateľa.

Po vydaní novej platformy 1C verzie 8.3.5 a funkčnejšej konfigurácii 1C: Accounting 8.3 (verzia 3.0) vývojári pokračovali v práci na zlepšovaní nielen používateľskej, ale aj administratívnej funkčnosti, a preto v najnovšom Vo vydaniach programu sa objavili zmeny v bloku správy systému a používateľov.

V tomto článku sa pozrieme na hlavné zmeny v administračnom bloku zamerané na zvýšenie efektivity práce so softvérovým riešením.

Organizácia administračných sekcií menu

Obráťme sa na sekciu "Správa". V ňom sú objekty usporiadané do skupín:

  • Nastavenia programu
  • servis
  • Informácie

Súbor a zloženie každej skupiny sa môže u rôznych používateľov líšiť, pretože rozhranie „Taxi“ sa dá ľahko nakonfigurovať a počiatočná dodávka konfigurácie obsahuje iba položky ponuky, ktoré sú štandardne poskytované. Ak chcete pridať nová pozícia, musíte kliknúť na tlačidlo „Nastavenia navigácie“ v časti „Správa“, nachádza sa v pravom hornom rohu (pod panelom nástrojov).

Skupina „Nastavenia programu“ obsahuje podskupinu „Podpora a údržba“, ktorá zahŕňa všetky hlavné mechanizmy určené na monitorovanie stavu programu, zálohovanie a obnovu, aktualizáciu verzií a optimalizáciu výkonu.


Systém obsahuje aj nové zostavy pre správu programu. Zoznam týchto prehľadov otvoríte kliknutím na riadok “Správcovské prehľady” v bloku “Výkazy a spracovanie”

Pred vami sa otvorí okno so zoznamom hlavných správ určených na analýzu aktivity používateľa a sledovanie denníka, v ktorom sa zaznamenávajú akcie používateľa


Protokol obsahuje kritické položky, ktoré by mohli viesť k chybám v systéme. Aby ste ich mohli zobraziť, budete musieť vygenerovať správu „Kontrola denníka“


Ak chcete monitorovať aktivitu používateľov týkajúcu sa ich práce so systémovými objektmi, budete musieť vygenerovať správu „Analýza aktivity používateľa“

Zálohovanie a obnovenie

Medzi „inováciami“ správy v „1C: Accounting 8.3“ stojí za zmienku schopnosť obnoviť kópie systému a nastavenia zálohovania. Dostanete sa k nim cez skupinu „Podpora a údržba“, kde sa tieto nastavenia nachádzajú v bloku „zálohovanie a obnova“

Teraz môžete okrem toho, že môžete priamo z používateľského režimu kontrolovať aktívnych používateľov, aj ukladať údaje.

V tomto prípade môžete nakonfigurovať spustenie plánu ukladania databázy. Tento parameter sa nachádza v ponuke „Nastavenia zálohovania“, kde môžeme zadať potrebné hodnoty

Hodnotenie výkonu

Ak chcete analyzovať a vyhodnotiť výkon systému, budeme musieť začiarknuť políčko vedľa položky „Hodnotenie výkonu“ v časti Podpora a údržba a potom prejsť na nastavenia výpočtu metrík.

Oboznámili sme sa teda s hlavnými zmenami, ktoré boli implementované v bloku pre správu systému 1C:Accounting 8.3 (verzia 3.0) na základe rozhrania Taxi.

Automatizovaný systém 1C Enterprise vám umožňuje vykonávať správu, obchodovať, účtovať a prijímať potrebné správy. Existujú dva typy prevádzky programu:

  • Súbor - 1C je nainštalovaný iba na jednom počítači, žiadny manažér nemôže pracovať s databázami. Táto možnosť je vhodná pre malé spoločnosti s malým obchodným obratom.
  • Verzia klienta. Pri práci s 1C je zapojený systém používateľov, databázy sú umiestnené na jednom počítači, ku ktorému sú pripojené všetky ostatné. Pracovná možnosť má trojúrovňovú architektúru, ktorá pozostáva z klientskej aplikácie, servera 1C Enterprise a databáz vo formáte MS SQL Server alebo PostgreSQL. V tomto prípade sa na zabezpečenie správnej konfigurácie používa správa servera 1C.

Konzola na správu servera 1C:hlavné funkcie

Server 1C nemá vstavané rozhranie na správu, takže sa používa konzola. Je súčasťou štandardného balíka dodávky zodpovedajúcej verzie 1C Enterprise. Tento štandardný nástroj je nainštalovaný na každom lokálny počítač, pričom databázy môžu byť umiestnené tu alebo na vzdialenom serveri.

Pomocou konzoly na správu servera 1C Enterprise môžete vyriešiť nasledujúce úlohy:

  • Vykonajte zmeny vo fungovaní servera, vytvorte nové, odstráňte nepotrebné. Môžu hostiť databázy a definovať interakcie medzi rôznymi používateľmi.
  • Vytvorte správcov. Sú to používatelia, ktorí majú prístupové práva na vykonávanie zmien na serveroch. Každý administrátor môže spravovať len priradený server. Ak nepridáte jedného správcu, server 1C môže spravovať každý registrovaný používateľ.
  • Vytvorenie klastrových pracovných postupov 1C. Pridanie pracovných procesov umožňuje ovplyvniť výkon konkrétneho používateľa v systéme. Vo vlastnostiach môžete nastaviť maximálnu hodnotu výkonu (až 1000). Začaté relácie sú pripojené k procesu s maximálny výkon. Systém systematicky nezávisle analyzuje a prerozdeľuje tieto hodnoty na optimalizáciu.
  • Tvorba databáz v 1C Enterprise. Môžete nastaviť, aby sa k nemu používatelia mohli pripojiť alebo povoliť, aby fungoval iba lokálne.
  • Nútené ukončenie relácií. Niekedy vás správa servera informuje, že práca sa už vykonáva pod zadaným používateľským menom. Systém tento proces nie vždy sám ukončí, takže administrácia umožňuje násilne ukončiť reláciu pre ktoréhokoľvek používateľa.

Ako začať pracovať v 1C?

Klientska aplikácia 1C Enterprise je prázdna platforma. Aby to začalo fungovať, musíte vykonať niekoľko postupných krokov:

  • Konzola je nainštalovaná. Umožňuje následnú správu serverov 1C.
  • Vytvorenie centrálneho servera. Potom na jeho základe môžete vytvárať štruktúry, ktoré sa k nemu hlásia. Ak to chcete urobiť, použite kontextové menu na zadanie názvu, použitého protokolu a čísla portu používaného na komunikáciu.
  • Vytvorenie klastra. V tomto prípade pomôže aj kontextové menu. Je potrebné vyplniť požadované informácie (názov klastra, použitý počítač, port pripojenia, ktorý sa nemusí zhodovať s portom uvedeným vyššie).
  • Vytvorenie informačnej databázy. V príslušnej vetve musíte použiť aj kontextové menu. Zadávajú sa tam požadované parametre (názov, popis, typ pripojenia, umiestnenie, typ DBMS, meno používateľa a heslo). Po potvrdení správnosti zadaných údajov sa vytvorí databáza. Teraz do nej môžete zadať potrebné údaje.

Správa 1C Enterprise je na prvý pohľad jednoduchý proces, no bez správneho nastavenia nebude systém správne fungovať, používateľ nebude môcť využívať jeho možnosti na maximum. Možné sú aj ďalšie technické problémy.

Administráciaod profesionálov: hlavné výhody

Klientsku verziu 1C využívajú stredne veľké a veľký biznis, ktoré je potrebné prepojiť jednotný systém všetky počítače vrátane vzdialených štrukturálne členenia. To vám umožní vziať manažérske rozhodnutia, dostávať konsolidované výkazy, viesť všeobecné účtovníctvo.

Hrá dôležitú úlohu správne nastavenie a neustála údržba platformy, vytváranie používateľov, klastrov, správcov, vykonávanie zmien v databázach. Na to potrebujete určitý personál špecialistov. K tomu môžete najímať nových zamestnancov, neustále školiť existujúcich ľudí alebo službu outsourcovať. Každá spoločnosť sa sama rozhodne, ktorá metóda je vhodná v konkrétnych prevádzkových podmienkach.

Bola vykonaná správa platformy 1C profesionálnych špecialistov, má niekoľko výhod:

  • Správna konfigurácia systému, ktorá vám umožňuje zaručiť primeranú prevádzku 1C bez technických porúch.
  • Neustále zmeny a sledovanie bezpečnosti. Činnosť spoločnosti je dynamická, jej cieľom je automatizovaný systém nové úlohy pre prijímanie manažérskych a strategických rozhodnutí.
  • Inštalácia nových modulov, správne rozdelenie prístupových práv, vytvorenie podsystémov. Zvlášť dôležité pre veľké spoločnosti s pobočkami a vzdialenými jednotkami.
  • Monitorovanie zaťaženia systému, rozdelenie zaťaženia medzi rôzne serverové počítače.

1C pracuje s rôznymi umiestneniami architektonických komponentov, môžu byť umiestnené na rovnakých alebo rôznych počítačoch. Na zabezpečenie maximálnej ochrany sa odporúča umiestniť každý prvok na iné počítače.

  • Návod

Vylúčenie zodpovednosti


Tento článok vyjadruje osobný názor autora, jeho víziu sveta, jeho cestu, a to všetko sa netvári ako absolútne správne a objektívne. Autor nenesie žiadnu zodpovednosť za následky použitia týchto informácií, len dúfa, že tieto informácie pomôžu niekomu uľahčiť život.


Predslov


Najprv som chcel napísať krátky článok o tom, ako sme distribuovali databázy medzi služby, ale keď sme sa ponorili hlbšie do tohto procesu, pridali sme rôzne druhy vecí (monitorovanie služieb, potom monitorovanie používateľov v 1C, potom sme pridali Zabbix a konečne prišiel na CI /CD na základe 1C). Vo výsledku chápem, že vtesnať to do jedného článku by bolo priveľa – rozhodol som sa to rozdeliť do viacerých. Názov je inšpirovaný sériou článkov „siete pre najmenších“, ktoré mi priniesli veľa príjemných chvíľ a na ktoré odkazujem každého, kto sa „chce naučiť siete“. Tak ideme!


Keď priznáš problém, znamená to, že si už napoly vyliečený (c) jedného psychiatra, ktorého poznám


V tomto článku sa chcem podeliť o svoje skúsenosti so správou veľkého množstva 1C systémov v podnikovom sektore. Všetky databázy sú rôzne, existuje vývoj, testovanie, všetko je rovnaké ako u všetkých ostatných. Ale je ich jednoducho pomerne veľa. A všetko bolo v poriadku, ale v určitom bode bolo mimoriadne ťažké a riskantné vykonávať nejakú prácu správcu.


Aké ťažkosti sme mali:

  1. Zamrznutá databáza mala za následok reštart služby, čo znamenalo, že utrpeli nevinní ľudia (používatelia iných databáz).
  2. Bolo ťažké pochopiť, kto je dnes „hrdinom dňa“ – ktorá základňa zabrala všetky zdroje
  3. Aktualizácia vydaní - aktualizácia jedného znamenala automatickú aktualizáciu všetkých databáz na tejto službe
  4. Manuálne pripojenie databáz k užívateľom, manuálne zmeny v prípade presunov
  5. Monitorovanie
    A až teraz som pochopil, že to bola len špička ľadovca...

Prvý čin, nulový čin

Malé rozptýlenie k základným postulátom, ktorých realizácia prišla s množstvom krvi a bolesti.

  1. Staré verzie 1C (až 8.3.11+) majú výkonnostný zásah pri práci vo virtualizovanom prostredí. (Zdroj – Gilev a vlastné testy)
  2. Existuje zhluk, ale s ním je všetko mimoriadne ťažké. Možno to bude dokončené neskôr, ale zatiaľ je to hlavne na ukážku. (zdroj - vlastnú skúsenosť)
  3. Pri výbere procesora stačí sa pozrieť na frekvenciu. Procesor so 6 jadrami na 3,4 GHz roztrhá na kusy procesor s 20 jadrami na 2 GHz. Problém je v tom, že 1C nevie vôbec nič o paralelnom výpočte. V podstate to funguje takto – na každú službu máme určitý počet pracovníkov, sú roztrúsení po procesoroch a ak v niektorom pracovníkovi používateľ spustí nejaký ťažký report, tak sa v systéme načíta len jedno jadro procesora. Presne ten, na ktorom beží pracovník so spustenou úlohou... Pri databáze je mimochodom situácia presne opačná. (zdroj - Gilev, vlastné skúsenosti, skúsenosti kolegov)
  4. Nepoužívajte protokoly v „novom“ formáte (záznam v SQLLite) - veľmi rýchlo zistíte, že výkon tohto riešenia je ešte horší ako verzia súboru. (Zdroj – vlastné skúsenosti, skúsenosti kolegov).
    Podľa tipov z komentárov existuje možnosť preniesť protokoly do samostatnej inštancie.
    V 8.3.12 sľubovali normálne polená!!!
  5. 1C naozaj nemá rád IPv6. Na všetkých serveroch s 1C je lepšie okamžite znížiť prioritu IPv6 na minimum. (Zdroj – Gilev, osobná skúsenosť)
  6. Pre virtuálne servery použite virtuálne sieťové karty E1000. So zvyškom je problém s výkonom (Zdroj - Gilev, ale z vlastnej skúsenosti to nebolo potvrdené, hoci sme to nijako zvlášť netestovali)
  7. Údržba databáz poskytuje dobré zvýšenie výkonu, najmä pravidelné prepočítavanie súčtov, ako aj udržiavanie indexov SQL (Zdroj - vlastné skúsenosti, Gilev)
  8. Hľadanie príčin pádu 1C je podobné ako jedenie neošúpaného kaktusu. Naozaj sa dá niečo zistiť len cez bolesť, ponižovanie a utrpenie. (zdroj - vlastná skúsenosť)
  9. Pre žiadny hypervízor neexistuje jediný oficiálny obrázok. Vo všeobecnosti o Dockerovi mlčím. (Zdroj – web 1C)
  10. Softvérová licencia pre server je viazaná na - prekvapenie, prekvapenie - sériové číslo procesora (a tiež obrovské číslo parametre servera). V ére všadeprítomnej virtualizácie je tento krok úžasný. Dovoľte mi vysvetliť - aktivovali sme server, presunuli sme sa do iného uzla, reštartovali sme počítač - 1C sa nespustí. Odhaľte nový aktivačný kód. (Zdroj - osobná skúsenosť, konverzácia technickú podporu 1C =))
  11. 1C je účtovný systém, nie systém podávania správ. Ak chcete veľa normálnych, odvážnych správ a rýchlo, vezmite to za rámec 1C. (zdroj - vlastná skúsenosť)
  12. 1C má dve nepopierateľné výhody, vďaka ktorým bude dlho prekvitať:
    • náklady na produkt/vývojárov
    • rýchlosť vývoja
      a bohužiaľ pre Ruské podnikanie sú prvou prioritou. A často jediná vec, na ktorú sa vôbec pozerajú. (Zdroj - smutná realita)
  13. Nikdy nepoužívajte zdieľanie súborov ako miesto na ukladanie konfigurácií 1C. Iba servis. Inak, nadávajúc zo strany vývoja o padlých, bohvie, kedy sa sklad stane vaším stálym spoločníkom v živote. (Zdroj - vlastné skúsenosti, skúsenosti kolegov)

Prvé dejstvo, prvé dejstvo

Po prvé krátka scénka z firemného života


Na pódiu - správca (A), programátor 1C (P1S) a obchodný zástupca (PB)
PB - Náš program pomaly beží!
A - v mojom systéme je všetko v poriadku!
P1S - všetko som napísal správne, na mojom počítači všetko funguje rýchlo!
PB (nesmelo a zmätene) - ale trvalo jej to dlho...
A P1S unisono - u nás je všetko v poriadku, problém je na vašej strane!


Problémy sa vždy dejú v nesprávny čas (c) (5-ročný filozof)


A potom sme si jedného krásneho slnečného rána (v skutočnosti bola hlboká zimná noc) uvedomili, že zajtra musíme spustiť novú základňu. Zajtra príde ten nádherný deň, ktorý už mnohokrát opísali tisíce autorov a volá sa légia! Uf, prepáč, nechal som sa uniesť. Názov tohto dňa bol konečným termínom. Je jedna hodina ráno, zajtra by mala byť spustená nová databáza na 200 počítačoch." Žiadny problém, všetky počítače máme v doméne! Teraz si rýchlo vytvoríme prihlasovací skript a je hotovo!" možno si myslíte. A budete mať pravdu - mysleli sme si to isté. A urobili. Len, ako to už býva, sme sa popálili na maličkostiach – do prihlasovacieho skriptu som napísal %filename%. netopier a kolega uverejnili %filename%. cmd.


No jasné, ráno bežal helpdesk robiť všetko ručne a ja som sa za takéto hlúpe zlyhanie veľmi hanbil. Ospravedlnil som sa chalanom tortou.


Myšlienka automatizácie tohto procesu mi však veľmi pevne utkvela v hlave a dokonca sa začal rodiť plán implementácie.


V dôsledku toho sme dospeli k nasledujúcej ideológii:

  • Všetko je distribuované cez AD - vytvoria sa skupiny ako 1cbases-%verzia platformy%-%base name% a tam sa pomocou helpdestu pridajú používatelia, ktorí potrebujú databázu.
    • jedna skupina - jedna základňa
    • 1cbases je predpona, podľa ktorej je vhodné vyhľadávať skupiny
    • verzia platformy 81, 82 a 83 (vydanie nie je dôležité)
    • názov databázy zodpovedá názvu súboru s nastaveniami
  • je pridelené spoločné zdieľanie súborov, kde sú všetky súbory usporiadané s nastaveniami pre pripojenie k databázam (jedna databáza - jeden súbor)
  • keď je počítač uzamknutý, zavolá sa skript, ktorý prečíta skupiny používateľov a na ich základe pridá používateľom potrebné databázy 1C

Ako sme to urobili:

  1. Prostredníctvom skupinových politík sa do plánovača pridá nová úloha (úlohou plánovača je priradiť používateľovi cestu k súboru pripojenia k databáze):
    • spustiť ako používateľ
    • udalosť - odomknutie počítača
    • akcia - spustite náš skript
  2. V AD vytvoríme potrebné skupiny a naplníme ich používateľmi
  3. Vytvárame potrebné súbory na spustenie samotného 1C. Pôjdem tu trochu podrobnejšie. Spočiatku sme dlho potrápili internet svojimi požiadavkami a našli sme kompletný popis štruktúry *.v8i súborov. Potom sa však našiel jednoduchší a dômyselnejší spôsob.
    • spustiť 1C
    • nastavenie pripojenia k databáze
    • skontrolujte, či všetko funguje
    • kliknite pravým tlačidlom myši na názov databázy a vyberte „Uložiť odkaz na súbor“


Kód skriptu:

#Prvým krokom je vytvorenie miesta pre protokoly if (Test-Path "$env:HOMEDRIVE\!script_report\add_1c_bases_report.txt") (Odstrániť-položku "$env:HOMEDRIVE\!script_report\add_1c_bases_report.txt" -Force - ErrorAction SilentlyContinue ) New-Item "$env:HOMEDRIVE\!script_report\add_1c_bases_report.txt" -ItemType file -Force -ErrorAction SilentlyContinue; Add-Content -Value ("Dátum posledného spustenia: " + (Get-Date -Format F)) -Path "$env:HOMEDRIVE\!script_report\add_1c_bases_report.txt"; if ((gwmi Win32_OperatingSystem | vyberte Caption, CSDVersion) -nie ako "*server*") # zakázať spustenie na serverovom OS ( Add-Content -Value " operačný systém rozpoznaný ako klient" -Cesta "C:\!script_report\add_1c_bases_report.txt"; if (!(Test-Path "$env:APPDATA\1C\1CEstart\ibases.v8i")) #ak tento súbor neexistuje 1C stiahne údaje zo zoznamu databáz 8.1 a ignoruje zoznam databáz 8.2 ( New-Item "$env:APPDATA\1C\1CEstart\ibases.v8i" -ItemType file -Force; # Vytvorte tento súbor, ak neexistuje Add-Content - Hodnota "File $env:APPDATA\1C\1CEstart\ibases.v8i sa nenašla, bola vytvorená" -Path "C:\!script_report\add_1c_bases_report.txt"; } if (Test-Path "$env:APPDATA\1C\1CEstart\1CEStart.cfg") { Remove-Item "$env:APPDATA\1C\1CEstart\1CEStart.cfg" -Force #-ErrorAction SilentlyContinue #удаление старого конфигурационного файла для 8.1 } New-Item "$env:APPDATA\1C\1CEstart\1CEStart.cfg" -ItemType file -Force #создание нового конфигурационного файла для 8.2 $GroupList = ("samaccountname=$($env:USERNAME)").Findone().Properties.memberof -replace "^CN=([^,]+).+$","$1" # Создание списка групп пользователя foreach ($Group in $GroupList) # генерация списка !} spoločné databázy na základe názvu skupiny ( if ($Group.Length -gt 6) # Kontrola dĺžky názvu skupiny ( If ($Group.Substring(0,7) -eq "1cbases") # výpočet skupiny ukazujúcej na 1C base ( Switch ($Group .Substring(8,2)) # vyberte platformu 8.1 alebo 8.2 ( "81" (Add-Content "$env:APPDATA\1C\1Cv81\ibases.v8l" -Value ("\\gold585. int\TechFiles\CommonBases\ " + $Group.Substring(11) +.v8i") # Vytvorte riadok zo súboru so zoznamom bežných databáz pre 8.1 "82" (Add-Content "$env:APPDATA\ 1C\1CEstart\1CEStart.cfg" -Value ("CommonInfoBases=\\gold585.int\TechFiles\CommonBases\" + $Group.Substring(11) +.v8i") # Vytvorte riadok zo súboru so zoznamom spoločných základov pre 8.2 "83" (Add-Content "$ env:APPDATA\1C\1CEstart\1CEStart.cfg" -Value ("CommonInfoBases=\\gold585.int\TechFiles\CommonBases\" + $Group.Substring(11) ) +".v8i")) # Vytvorte riadok zo súboru so zoznamom spoločných báz pre 8.3) Add-Content -Value ("Používateľ patrí do $Group") -Cesta "C:\!script_report\add_1c_bases_report.txt" ; Add-Content -Value ("Pridaná hodnota: CommonInfoBases=\\gold585. int\TechFiles\CommonBases\" + $Group.Substring(11) +.v8i") -Cesta "C:\!script_report\add_1c_bases_report.txt ";" -Path "C:\!script_report\add_1c_bases_report.txt"; }!}


) ) ) ) else ( Add-Content -Value "Operačný systém je rozpoznaný ako server

  1. Čo sme dostali:
  2. Databázy by sme mohli jednoducho preniesť kamkoľvek jednoduchou zmenou konfigurácie v súbore s nastaveniami pre pripojenie k databáze (ako prax ukázala, je to veľmi pohodlné)
  3. Helpdesk uložených topánok

Prvé dejstvo, druhé dejstvo

Druhá krátka scéna z korporátneho života


Na pódiu - administrátor (A), programátor 1C (P1C), rozhovor po odchode obchodného zástupcu
A - Váš tento 1C - $#% ale!!! Koľko problémov architektúry a úrovne vývojárov sa dá vyriešiť hardvérom!
P1S - áno, toto sú vaše servery #$@ale! V mojej lokálnej databáze súborov všetko funguje dobre! Nastavte si farmu ako zvyčajne!
Dišputanti odchádzajú z javiska s návalom vzájomného obviňovania, opona padá, svetlá zhasínajú.


A z tejto strany to nie je o nič lepšie... (c) Smutný Eeyore na jeho vlastné narodeniny


Len si to predstavte - sedíte v pohodlnom kresle, v jednej ruke šálka lahodného čaju, v druhej buchta prekypujúca teplom a sviežosťou z lahôdok najbližšieho obchodu, za oknom je príjemná vôňa jari.. A toto je, samozrejme, najlepší čas zavolať s problémom! Kolega - Bajkonur, máme %@pa!


Ja - ako tomu dobre rozumiem, už sme úspešne prešli etapou v Houstone s problémami?
Kolega - áno. Databáza %base name% je zamrznutá, vôbec nereaguje, TOPky sa už trhajú a hádžu. Už mi volali 3x. Musíte reštartovať službu.
Ja - v tejto službe je tiež veľa databáz!!!
Kolega - áno, preto sa aj druhá polovica TOPiek trhá a ponáhľa sa, že budú vypnuté...


Nakoniec sa samozrejme všetko dohodlo a reštartovalo, ale usadenina zostala.


Ideológia:

  1. V produktovom prostredí sa musíme riadiť pravidlom – jedna základňa – jedna služba, distribuované cez porty
  2. Služby musia byť spúšťané výlučne z doménových účtov. Jedna služba - jeden účet. To je vhodné na distribúciu práv na plesy, prístup do škôl atď. Ak máte implementovaný RBAC, potom môžete veľmi rýchlo zistiť, kam má prístup konkrétna inštancia 1C
  3. Protokoly je potrebné presunúť na samostatný disk a pre tieto priečinky by mala byť povolená kompresia (pri rozdelení podľa dní to ušetrí veľa miesta a zrýchli (mierne) vyhľadávanie v protokoloch)
  4. Každá služba má v DNS pridelený alias, aby sa oddelil vývoj od ip a/alebo dns servera (v tomto prípade sa vývoj vôbec nestará o to, kde sa server skutočne nachádza – fyzika, virtuálny stroj v súkromnom cloude alebo aj vo verejnom cloude)
  5. Každej službe prideľujeme 500 portov na pripojenie používateľov (naše interné riešenie)

Ako sme to urobili (pre nový server. Pre existujúci server nie sú niektoré kroky relevantné):

  1. Pre každú službu sú vytvorené účty
  2. Na stroji, na ktorom budú pracovať, dostanú práva „bežať ako službu“
  3. Nainštalujte MS office, nevyhnutne s aktiváciou cez kľúč MAK
  4. Nainštalujte sqlncli - utilitu zo sady MS SQL Native Client. Zapnuté momentálne neobjavila sa nad rokom 2012
  5. Vytvorí sa priečinok C:\Windows\SysWOW64\config\systemprofile\Desktop - inak sú problémy s nahrávaním do Wordu/Excelu
  6. Pre Windows 2016 a 1C 8.1 musíte skopírovať stará verzia dll (V priečinku C:\Program Files\Common Files\System\Ole DB musíte nahradiť dva súbory sqloledb.dll a sqloledb.rll prevzaté zo starých serverov)
  7. Ak sa potrebujete pripojiť k MySQL/PostgreSQL, nainštalujú sa ďalšie ovládače ODBC

Nastavenie priečinka pre službu a denníky:

  1. Priečinok sa vytvorí na samostatnom disku s názvom vo formáte 1C Server%basename% (v štandardnom prípade to robí samotná služba, pretože má cestu k protokolom v nastaveniach spustenia)
  2. Ak sa údaje z iného adresára (iná služba, iný server) prenesú do adresára novovytvorenej služby, potom je potrebné vymeniť vlastníkov (inak k nim služba nezíska prístup) a nahradiť vlastníka subkontajnerov
  3. Vlastník priečinka je vyrobený účtu služby

Popis konfigurácie služby

@echo off chcp 1251 nastavenie sady kódovania base=%base_name% názov databázy bez medzier v angličtine – pre adresár s protokolmi nastavený dsce=%base name% názov databázy s medzerami v angličtine – pre názov služby set dscr=%Názov databázy% názov databázy v ruštine – pre reprezentáciu služby set sver=8.3 skrátená verzia – pre názov a reprezentáciu služby set fver=1cv8\8.3.9.2170 časť cesty k verzii platformy 1C, ktorú potrebujeme nastaviť port=8040 nastaviť riadiaci port regp=8041 nastaviť hlavný port rnge=8060 :8491 rozsah portov pre sadu služieb name="1C:Enterprise %sver% Server Agent (x86-64) %dsce% " názov služby (pre register) podobný štandardným, pridáva sa len základný názov pre jedinečnosť nastavených názvov bpth=\" C:\Program Files\%fver%\bin\ragent.exe\" -srvc -agent cesta k spustiteľnému súboru na spustenie služby set logs=D:\1C_Server_%base% adresár pre logy set user="%login%@% domain_name%" tento formát umožňuje použiť prihlásenia dlhšie ako 20 znakov heslo nebolo; špecifikované kdekoľvek počas vytvárania, pretože potom ho musíte znova zadať, až potom bude mať používateľ práva na spustenie služieb; set view="1C:Enterprise Server Agent %sver% (x86-64) %dscr%" reprezentácia služby v module sc create %name% binPath= "%bpth% -regport %regp% -port %port % -rozsah %rnge % -d \"%logs%\"" type= "vlastné" štart= "auto" error= "závažné" depend= "Tcpip/Dnscache/lanmanworkstation/lanmanserver" obj= %user%DisplayName= % zobraziť% tu: type = "vlastné" – typ služby, čo tam je, hľadajte sami štart= "auto" – chyba automatického spustenia= "severe" – nepamätám si, čo to znamená, ale nastavuje správny kľúč hodnota v registri ErrorControl = 2 depend= "Tcpip/Dnscache/lanmanworkstation /lanmanserver" – závislosti (uvedené na štvrtej karte, nie sú manuálne nakonfigurované) sc popis %name% %view% nastavuje zobrazenie v module snap-in, nešpecifikované okamžite po vytvorení sc zlyhanie %name% reset= 0 akcií= nastavenie "reštart/0" na záložku obnovy – reštart vo všetkých prípadoch, po 0 minútach; reset počítadla po 0 dňoch To isté bez komentárov: @echo off chcp 1251 set base=%base_name% set dsce=%base name% set dscr=%base name% set sver=8.3 set fver=1cv8\8.3.9.2170 set port = 8040 set regp=8041 set rnge=8060:8491 set name="1C:Enterprise %sver% Server Agent (x86-64) %dsce%" set bpth=\"C:\Program Files\%fver%\bin\ ragent .exe\" -srvc -agent set logs=D:\1C_Server_%base% set user="%login%@domain.company" set view="1C:Enterprise Server Agent %sver% (x86-64) %dscr % " sc create %name% binPath= "%bpth% -regport %regp% -port %port% -range %rnge% -d \"%logs%\"" type= "vlastné" štart= "auto" error= " závažné" depend= "Tcpip/Dnscache/lanmanworkstation/lanmanserver" obj= %user% DisplayName= %view% sc popis %name% %view% zlyhanie sc %name% reset= 0 akcií= "reštart/0"


  1. Aby sa zabezpečilo, že služby neobsahujú crocasibra
    • v cmd zadajte príkaz chcp 1251
    • súbor musí byť uložený v kódovaní ANSI
  2. Nezabudnite skontrolovať absenciu duplicitných kľúčov v spúšťacom riadku - služba sa s nimi nespustí!!!
  3. Ak chcete odstrániť službu, môžete použiť príkaz - sc delete „Názov zadaný v premennej názvu“
  4. Pridajte porty používané 1C k povoleniam vo bráne firewall
  5. Potrebujete iba jeden fyzický kľúč na server - všetky služby budú aktivované ním

Po vykonaní všetkých činností sme nakoniec dospeli k:

  1. Databázy je možné bezpečne znova načítať bez toho, aby ste sa dotkli iných databáz
  2. Vždy môžete nájsť „hrdinu“ - základňu, ktorá pohltí všetky zdroje
  3. Akákoľvek práca s databázou sa týka len jednej konkrétnej databázy

V nasledujúcich článkoch plánujem povedať (ak sa ľuďom páči tento článok):

  • ako sme preniesli autorizáciu v MSSQL na kerberos a celkovo sme optimalizovali prístup
  • ako sme robili monitoring služieb – kto koľko zdrojov zobral
  • ako sme monitorovaním v rámci služby 1C identifikovali blokády zo strany používateľov rýchlejšie, ako volajú
  • ako sme skúšali implementovať CI pre 1C a čo z toho vzišlo

UPD. Niečo pridal do komentárov

Štítky: Pridajte štítky