تكامل ServiceNow
يتيح تكامل ServiceNow (الإدارة > الإعدادات > ServiceNow) المزامنة ثنائية الاتجاه بين Turbo EA وقاعدة بيانات الإدارة (CMDB) في ServiceNow الخاصة بك. يغطي هذا الدليل كل شيء بدءًا من الإعداد الأولي وصولًا إلى الوصفات المتقدمة وأفضل الممارسات التشغيلية.

لماذا تُدمج ServiceNow مع Turbo EA؟
تخدم قاعدة بيانات CMDB في ServiceNow وأدوات هندسة المؤسسة أغراضًا مختلفة لكنها متكاملة:
| ServiceNow CMDB | Turbo EA | |
|---|---|---|
| التركيز | العمليات التقنية — ما الذي يعمل، ومن يملكه، وما الحوادث التي وقعت | التخطيط الاستراتيجي — كيف ينبغي أن يبدو المشهد بعد 3 سنوات؟ |
| يُدار بواسطة | العمليات التقنية، إدارة الأصول | فريق هندسة المؤسسة، مهندسو الأعمال |
| نقطة القوة | الاكتشاف الآلي، سير عمل ITSM، الدقة التشغيلية | سياق الأعمال، تخطيط القدرات، تخطيط دورة الحياة، التقييمات |
| البيانات النموذجية | أسماء المضيفين، عناوين IP، حالة التثبيت، مجموعات الإسناد، العقود | الأهمية للأعمال، الملاءمة الوظيفية، الدَّين التقني، خارطة الطريق الاستراتيجية |
Turbo EA هو سجل النظام لمشهد البنية المعمارية لديك — تعيش هنا الأسماء والأوصاف وخطط دورة الحياة والتقييمات وسياق الأعمال. يكمّل ServiceNow أداة Turbo EA ببيانات وصفية تشغيلية وتقنية (أسماء المضيفين، وعناوين IP، وبيانات SLA، وحالة التثبيت) تأتي من الاكتشاف الآلي وسير عمل ITSM. يبقي التكامل هذين النظامين متصلين مع احترام أن Turbo EA هو الرائد.
ما الذي يمكنك فعله
- مزامنة السحب (Pull) — تعبئة Turbo EA بعناصر التكوين (CIs) من ServiceNow، ثم تولّي ملكيتها. لا تُحدّث عمليات السحب اللاحقة سوى الحقول التشغيلية (عناوين IP، الحالة، اتفاقيات SLA) التي يكتشفها SNOW تلقائيًا
- مزامنة الدفع (Push) — تصدير البيانات المنسّقة في هندسة المؤسسة عودةً إلى ServiceNow (الأسماء، والأوصاف، والتقييمات، وخطط دورة الحياة) ليرى فرق ITSM سياق هندسة المؤسسة
- المزامنة ثنائية الاتجاه — يقود Turbo EA معظم الحقول؛ ويقود SNOW مجموعة صغيرة من الحقول التشغيلية/التقنية. ويبقى النظامان متزامنين
- تعيين الهوية — يضمن التتبّع المرجعي المتقاطع المستمر (sys_id ↔ UUID للبطاقة) بقاء السجلات مرتبطة عبر عمليات المزامنة
بنية التكامل
+------------------+ HTTPS / Table API +------------------+
| Turbo EA | <--------------------------------> | ServiceNow |
| | | |
| Cards | Pull: SNOW CIs -> Turbo Cards | CMDB CIs |
| (Application, | Push: Turbo Cards -> SNOW CIs | (cmdb_ci_appl, |
| ITComponent, | | cmdb_ci_server, |
| Provider, ...) | Identity Map tracks sys_id <-> UUID | core_company) |
+------------------+ +------------------+
يستخدم التكامل Table API الخاص بـ ServiceNow عبر HTTPS. تُشفَّر بيانات الاعتماد عند التخزين باستخدام Fernet (AES-128-CBC) المشتق من SECRET_KEY الخاص بك. تُسجَّل جميع عمليات المزامنة كأحداث تحمل source: "servicenow_sync" لتوفير مسار تدقيق كامل.
التخطيط لتكاملك
قبل تكوين أي شيء، أجِب عن هذه الأسئلة:
1. أي أنواع البطاقات تحتاج إلى بيانات من ServiceNow؟
ابدأ بنطاق صغير. نقاط التكامل الأكثر شيوعًا هي:
| الأولوية | نوع Turbo EA | مصدر ServiceNow | السبب |
|---|---|---|---|
| عالية | Application | cmdb_ci_business_app | التطبيقات هي جوهر هندسة المؤسسة — تحتوي CMDB على أسماء ومالكين وحالات موثوقة |
| عالية | ITComponent (Software) | cmdb_ci_spkg | تُغذّي منتجات البرمجيات تتبّع EOL ورادار التقنية |
| متوسطة | ITComponent (Hardware) | cmdb_ci_server | مشهد الخوادم لتعيين البنية التحتية |
| متوسطة | Provider | core_company | سجل المورّدين لإدارة التكلفة والعلاقات |
| أقل | Interface | cmdb_ci_endpoint | نقاط نهاية التكامل (غالبًا ما تُدار يدويًا في هندسة المؤسسة) |
| أقل | DataObject | cmdb_ci_database | مثيلات قواعد البيانات |
2. أي نظام هو مصدر الحقيقة لكل حقل؟
هذا هو القرار الأهم. ينبغي أن يكون الإعداد الافتراضي Turbo EA هو الرائد — فأداة هندسة المؤسسة هي سجل النظام لمشهد البنية المعمارية لديك. ينبغي ألّا يقود ServiceNow سوى مجموعة ضيقة من الحقول التشغيلية والتقنية التي تأتي من الاكتشاف الآلي أو سير عمل ITSM. وكل شيء آخر — الأسماء والأوصاف والتقييمات وتخطيط دورة الحياة والتكاليف — مملوك ومنسَّق بواسطة فريق هندسة المؤسسة في Turbo EA.
النموذج المُوصى به — «Turbo EA يقود، وSNOW يكمّل»:
| نوع الحقل | مصدر الحقيقة | السبب |
|---|---|---|
| الأسماء والأوصاف | Turbo يقود | ينسّق فريق هندسة المؤسسة الأسماء الموثوقة ويكتب أوصافًا استراتيجية؛ وقد تكون أسماء CMDB فوضوية أو مولّدة تلقائيًا |
| الأهمية للأعمال | Turbo يقود | التقييم الاستراتيجي لفريق هندسة المؤسسة — وليس بيانات تشغيلية |
| الملاءمة الوظيفية / التقنية | Turbo يقود | درجات نموذج TIME هي شأن خاص بهندسة المؤسسة |
| دورة الحياة (جميع المراحل) | Turbo يقود | plan وphaseIn وactive وphaseOut وendOfLife — جميعها بيانات تخطيط لهندسة المؤسسة |
| بيانات التكلفة | Turbo يقود | تتتبّع هندسة المؤسسة التكلفة الإجمالية للملكية؛ وقد تحتوي CMDB على بنود عقود لكن هندسة المؤسسة تملك العرض الموحَّد |
| نوع الاستضافة، الفئة | Turbo يقود | تصنّف هندسة المؤسسة التطبيقات بحسب نموذج الاستضافة لأغراض التحليل الاستراتيجي |
| البيانات الوصفية التقنية | SNOW يقود | عناوين IP، إصدارات نظام التشغيل، أسماء المضيفين، الأرقام التسلسلية — بيانات اكتشاف آلي لا تصونها هندسة المؤسسة |
| حالة SLA / الحالة التشغيلية | SNOW يقود | حالة التثبيت، أهداف SLA، مقاييس التوافر — بيانات تشغيلية لـ ITSM |
| مجموعة الإسناد / الدعم | SNOW يقود | الملكية التشغيلية المتتبَّعة في سير عمل ServiceNow |
| تواريخ الاكتشاف | SNOW يقود | أول/آخر اكتشاف، آخر فحص — بيانات وصفية للأتمتة في CMDB |
3. كم مرة ينبغي أن تُجري المزامنة؟
| السيناريو | التواتر | ملاحظات |
|---|---|---|
| الاستيراد الأول ي | مرة واحدة | الوضع الإضافي، راجِع بعناية |
| الإدارة النشطة للمشهد | يوميًا | آلية عبر cron خلال ساعات خارج أوقات الذروة |
| تقارير الامتثال | أسبوعيًا | قبل إنشاء التقارير |
| عند الحاجة | حسب الحاجة | قبل مراجعات أو عروض هندسة المؤسسة الكبرى |
الخطوة 1: متطلبات ServiceNow المسبقة
إنشاء حساب خدمة
في ServiceNow، أنشئ حساب خدمة مخصصًا (لا تستخدم الحسابات الشخصية أبدًا):
| الدور | الغرض | مطلوب؟ |
|---|---|---|
itil | وصول للقراءة إلى جداول CMDB | نعم |
cmdb_read | قراءة عناصر التكوين | نعم |
rest_api_explorer | مفيد لاختبار الاستعلامات | مُوصى به |
import_admin | وصول للكتابة إلى الجداول الهدف | فقط لمزامنة الدفع |
أفضل ممارسة: أنشئ دورًا مخصصًا بوصول للقراءة فقط إلى الجداول المحددة التي تخطط لمزامنتها فقط. دور itil واسع — والدور المخصص ذو النطاق المحدود يحدّ من نطاق التأثير.
المتطلبات الشبكية
- يجب أن تصل الواجهة الخلفية لـ Turbo EA إلى مثيل SNOW الخاص بك عبر HTTPS (المنفذ 443)
- كوّن قواعد جدار الحماية وقوائم السماح لعناوين IP
- صيغة عنوان URL للمثيل:
https://company.service-now.comأوhttps://company.servicenowservices.com
اختيار طريقة المصادقة
| الطريقة | المزايا | العيوب | التوصية |
|---|---|---|---|
| Basic Auth | إعداد بسيط | تُرسَل بيانات الاعتماد في كل طلب | للتطوير/الاختبار فقط |
| OAuth 2.0 | قائمة على الر موز، ذات نطاق، ملائمة للتدقيق | خطوات إعداد أكثر | مُوصى به للإنتاج |
لـ OAuth 2.0:
- في ServiceNow: System OAuth > Application Registry
- أنشئ نقطة نهاية OAuth API جديدة للعملاء الخارجيين
- دوّن Client ID وClient Secret
- بدّل الأسرار في دورة كل 90 يومًا
الخطوة 2: إنشاء اتصال
انتقل إلى علامة تبويب الإدارة > ServiceNow > Connections.
الإنشاء والاختبار
- انقر Add Connection
- املأ:
| الحقل | قيمة المثال | ملاحظات |
|---|---|---|
| الاسم | Production CMDB | تسمية وصفية لفريقك |
| Instance URL | https://company.service-now.com | يجب استخدام HTTPS |
| Auth Type | Basic Auth أو OAuth 2.0 | يُوصى بـ OAuth للإنتاج |
| Credentials | (حسب نوع المصادقة) | مشفّرة عند التخزين عبر Fernet |
- انقر Create، ثم انقر أيقونة الاختبار (رمز wifi) للتحقق من الاتصال
- شريحة «Connected» خضراء — جاهز للانطلاق
- شريحة «Failed» حمراء — تحقّق من بيانات الاعتماد، والشبكة، وعنوان URL
اتصالات متعددة
يمكنك إنشاء اتصالات متعددة من أجل:
- مثيلات الإنتاج مقابل التطوير
- مثيلات SNOW الإقليمية (مثل EMEA، APAC)
- فرق مختلفة بحسابات خدمة منفصلة
يشير كل تعيين إلى اتصال محدد.
الخطوة 3: تصميم تعييناتك
انتقل إلى علامة تبويب Mappings. يربط التعيين نوع بطاقة واحدًا في Turbo EA بجدول واحد في ServiceNow.
إنشاء تعيين
انقر Add Mapping وكوّن:
| الحقل | الوصف | المثال |
|---|---|---|
| Connection | أي مثيل ServiceNow سيُستخدم | Production CMDB |
| Card Type | نوع بطاقة Turbo EA المراد مزامنتها | Application |
| SNOW Table | اسم Table API في ServiceNow | cmdb_ci_business_app |
| Sync Direction | أي العمليات متاحة (انظر أدناه) | ServiceNow -> Turbo EA |
| Sync Mode | كيفية التعامل مع عمليات الحذف | Conservative |
| Max Deletion Ratio | عتبة أمان لعمليات الحذف الجماعية | 50% |
| Filter Query | استعلام ServiceNow المُرمَّز لتقييد النطاق | active=true^install_status=1 |
| Skip Staging | تطبيق التغييرات مباشرة دون مراجعة | إيقاف (مُوصى به للمزامنة الأولية) |
تعيينات جداول SNOW الشائعة
| نوع Turbo EA | جدول ServiceNow | الوصف |
|---|---|---|
| Application | cmdb_ci_business_app | تطبيقات الأعمال (الأكثر شيوعًا) |
| Application | cmdb_ci_appl | عناصر تكوين التطبيقات العامة |
| ITComponent (Software) | cmdb_ci_spkg | حزم البرمجيات |
| ITComponent (Hardware) | cmdb_ci_server | الخوادم الفعلية/الافتراضية |
| ITComponent (SaaS) | cmdb_ci_cloud_service_account | حسابات الخدمة السحابية |
| Provider | core_company | المورّدون / الشركات |
| Interface | cmdb_ci_endpoint | نقاط نهاية التكامل |
| DataObject | cmdb_ci_database | مثيلات قواعد البيانات |
| System | cmdb_ci_computer | عناصر تكوين الحواسيب |
| Organization | cmn_department | الأقسام |
أمثلة على استعلام التصفية
صفِّ دائمًا لتجنّب استيراد السجلات القديمة أو المتقاعدة:
# Only active CIs (minimum recommended filter)
active=true
# Active CIs with install status "Installed"
active=true^install_status=1
# Applications in production use
active=true^used_for=Production
# CIs updated in the last 30 days
active=true^sys_updated_on>=javascript:gs.daysAgoStart(30)
# Specific assignment group
active=true^assignment_group.name=IT Operations
# Exclude retired CIs
active=true^install_statusNOT IN7,8
أفضل ممارسة: أدرِج دائمًا active=true كحدّ أدنى. غالبًا ما تحتوي جداول CMDB على آلاف السجلات المتقاعدة أو المستبعَدة من الخدمة التي ينبغي ألّا تُستورد إلى مشهد هندسة المؤسسة لديك.
الخطوة 4: تكوين تعيينات الحقول
يحتوي كل تعيين على تعيينات حقول تحدد كيفية ترجمة الحقول الفردية بين النظامين. يوفّر حقل إدخال Turbo EA Field اقتراحات إكمال تلقائي بناءً على نوع البطاقة المحدد — بما في ذلك الحقول الأساسية، وتواريخ دورة الحياة، وجميع السمات المخصصة من مخطط النوع.
إضافة الحقول
لكل تعيين حقل، تكوّن:
| الإعداد | الوصف |
|---|---|
| Turbo EA Field | مسار الحقل في Turbo EA (يقترح الإكمال التلقائي خيارات بناءً على نوع البطاقة) |
| SNOW Field | اسم عمود API في ServiceNow (مثل name وshort_description) |
| Direction | مصدر الحقيقة لكل حقل: SNOW يقود أو Turbo يقود |
| Transform | كيفية تحويل القيم: Direct، Value Map، Date، Boolean |
| Identity (مربع اختيار ID) | يُستخدم لمطابقة السجلات أثناء المزامنة الأولية |
مسارات حقول Turbo EA
يجمّع الإكمال التلقائي الحقول حسب القسم. إليك المرجع الكامل للمسارات:
| المسار | الهدف | قيمة المثال |
|---|---|---|
name | اسم عرض البطاقة | "SAP S/4HANA" |
description | وصف البطاقة | "Core ERP system for financials" |
lifecycle.plan | دورة الحياة: تاريخ Plan | "2024-01-15" |
lifecycle.phaseIn | دورة الحياة: تاريخ Phase In | "2024-03-01" |
lifecycle.active | دورة الحياة: تاريخ Active | "2024-06-01" |
lifecycle.phaseOut | دورة الحياة: ت اريخ Phase Out | "2028-12-31" |
lifecycle.endOfLife | دورة الحياة: تاريخ End of Life | "2029-06-30" |
attributes.<key> | أي سمة مخصصة من مخطط حقول نوع البطاقة | تختلف حسب نوع الحقل |
على سبيل المثال، إذا كان نوع Application لديك يحتوي على حقل بالمفتاح businessCriticality، فحدّد attributes.businessCriticality من القائمة المنسدلة.
حقول الهوية — كيف تعمل المطابقة
ضع علامة على حقل واحد أو أكثر باعتباره Identity (أيقونة المفتاح). تُستخدم هذه أثناء المزامنة الأولى لمطابقة سجلات ServiceNow بالبطاقات الموجودة في Turbo EA:
- البحث في خريطة الهوية — إذا كان رابط sys_id ↔ UUID للبطاقة موجودًا بالفعل، فاستخدمه
- مطابقة اسم دقيقة — المطابقة على قيمة حقل الهوية (مثل المطابقة بحسب اسم التطبيق)
- مطابقة تقريبية — إذا لم توجد مطابقة دقيقة، استخدم SequenceMatcher بعتبة تشابه 85%
أفضل ممارسة: ضع دا ئمًا علامة على حقل name كحقل هوية. إذا اختلفت الأسماء بين النظامين (مثلًا، يتضمن SNOW أرقام إصدارات مثل "SAP S/4HANA v2.1" بينما يحتوي Turbo EA على "SAP S/4HANA")، فنظّفها قبل المزامنة الأولى للحصول على جودة مطابقة أفضل.
بعد أن تنشئ المزامنة الأولى روابط خريطة الهوية، تستخدم عمليات المزامنة اللاحقة خريطة الهوية المستمرة ولا تعتمد على مطابقة الأسماء.
الخطوة 5: تشغيل أول مزامنة لك
انتقل إلى علامة تبويب Sync Dashboard.
تشغيل المزامنة
لكل تعيين نشط، ترى أزرار Pull و/أو Push بحسب اتجاه المزامنة المكوَّن:
- Pull (أيقونة تنزيل سحابي) — يجلب البيانات من SNOW إلى Turbo EA
- Push (أيقونة رفع سحابي) — يرسل بيانات Turbo EA إلى ServiceNow
ما الذي يحدث أثناء مزامنة السحب
1. FETCH Retrieve all matching records from SNOW (batches of 500)
2. MATCH Match each record to an existing card:
a) Identity map (persistent sys_id <-> card UUID lookup)
b) Exact name match on identity fields
c) Fuzzy name match (85% similarity threshold)
3. TRANSFORM Apply field mappings to convert SNOW -> Turbo EA format
4. DIFF Compare transformed data against existing card fields
5. STAGE Assign an action to each record:
- create: New, no matching card found
- update: Match found, fields differ
- skip: Match found, no differences
- delete: In identity map but absent from SNOW
6. APPLY Execute staged actions (create/update/archive cards)
عند تفعيل Skip Staging، تندمج الخطوتان 5 و6 — تُطبَّق الإجراءات مباشرة دون كتابة سجلات مرحلية.
مراجعة نتائج المزامنة
يعرض جدول Sync History بعد كل تشغيل:
| العمود | الوصف |
|---|---|
| Started | متى بدأت المزامنة |
| Direction | Pull أو Push |
| Status | completed أو failed أو running |
| Fetched | إجمالي السجلات المُسترجَعة من ServiceNow |
| Created | البطاقات الجديدة المنشأة في Turbo EA |
| Updated | البطاقات الموجودة المُحدَّثة |
| Deleted | البطاقات المؤرشَفة (محذوفة حذفًا ناعمًا) |
| Errors | السجلات التي فشلت في المعالجة |
| Duration | الوقت الزمني الفعلي |
انقر أيقونة القائمة على أي تشغيل لفحص السجلات المرحلية الفردية، بما في ذلك الفرق على مستوى الحقل لكل تحديث.
إجراء المزامنة الأولى المُوصى به
1. Set mapping to ADDITIVE mode with staging ON
2. Run pull sync
3. Review staged records — check creates look correct
4. Go to Inventory, verify imported cards
5. Adjust field mappings or filter query if needed
6. Run again until satisfied
7. Switch to CONSERVATIVE mode for ongoing use
8. After several successful runs, enable Skip Staging
فهم اتجاه المزامنة مقابل اتجاه الحقل
هذا هو المفهوم الأكثر شيوعًا في سوء الفهم. هناك مستويان من الاتجاه يعملان معًا:
مستوى الجدول: اتجاه المزامنة
يُضبط على التعيين نفسه. يتحكم في أي عمليات المزامنة متاحة على Sync Dashboard:
| اتجاه المزامنة | زر Pull؟ | زر Push؟ | يُستخدم عندما... |
|---|---|---|---|
| ServiceNow -> Turbo EA | نعم | لا | تكون CMDB هي المصدر الرئيسي، وأنت تستورد فقط |
| Turbo EA -> ServiceNow | لا | نعم | تُثري أداة هندسة المؤسسة CMDB بالتقييمات |
| Bidirectional | نعم | نعم | يساهم كلا النظامين بحقول مختلفة |
مستوى الحقل: الاتجاه
يُضبط لكل تعيين حقل. يتحكم في أي قيمة لأي نظام تفوز أثناء تشغيل المزامنة:
| اتجاه الحقل | أثناء السحب (SNOW -> Turbo) | أثناء الدفع (Turbo -> SNOW) |
|---|---|---|
| SNOW يقود | تُستورَد القيمة من ServiceNow | تُتخطّى القيمة (لا تُدفَع) |
| Turbo يقود | تُتخطّى القيمة (لا يُكتب فوقها) | تُصدَّر القيمة إلى ServiceNow |
كيف يعملان معًا — مثال
التعيين: Application ↔ cmdb_ci_business_app، Bidirectional
| الحقل | الاتجاه | يفعل السحب... | يفعل الدفع... |
|---|---|---|---|
name | Turbo يقود | يتخطّى (هندسة المؤسسة تنسّق الأسماء) | يدفع اسم هندسة المؤسسة -> SNOW |
description | Turbo يقود | يتخطّى (هندسة المؤسسة تكتب الأوصاف) | يدفع الوصف -> SNOW |
lifecycle.active | Turbo يقود | يتخطّى (هندسة المؤسسة تدير دورة الحياة) | يدفع تاريخ الانطلاق -> SNOW |
attributes.businessCriticality | Turbo يقود | يتخطّى (تقييم هندسة المؤسسة) | يدفع التقييم -> حقل SNOW مخصص |
attributes.ipAddress | SNOW يقود | يستورد IP من الاكتشاف | يتخطّى (بيانات تشغيلية) |
attributes.installStatus | SNOW يقود | يستورد الحالة التشغيلية | يتخطّى (بيانات ITSM) |
رؤية أساسية: يحدد الاتجاه على مستوى الجدول أي الأزرار تظهر. ويحدد الاتجاه على مستوى الحقل أي الحقول تنتقل فعليًا أثناء كل عملية. التعيين ثنائي الاتجاه حيث يقود Turbo EA معظم الحقول ويقود SNOW الحقول التشغيلية/التقنية فقط هو أقوى تكوين.