درحال مشاهده اسناد Apigee Edge هستید.
به
اسناد Apigee X بروید. اطلاعات
این بخش اطلاعات و راهنماییهایی برای عیبیابی مشکلات OpenLDAP ارائه میدهد.
SMTP غیرفعال است و کاربران باید گذرواژه را بازنشانی کنند
نشانه
وقتی SMTP در New Edge UI راهاندازی نشده باشد، کاربران جدیدی که به Edge اضافه میشوند باید راهی برای تنظیم گذرواژه داشته باشند.
پیام های خطا
Unknown username and password combination.

علل احتمالی
کاربران جدید نمیتوانند از پیوند «گذرواژهتان را فراموش کردهاید؟» ایمیلی برای تنظیم گذرواژه دریافت کنند زیرا SMTP راهاندازی نشده است.
وضوح
میتوانید این مشکل را به یکی از روشهای زیر برطرف کنید:
راهحل شماره ۱: پیکربندی سرور SMTP
«سرور SMTP» را پیکربندی کنید تا گذرواژه جدیدی برای کاربر تنظیم کند. برای جزئیات درباره پیکربندی SMTP، به پیکربندی سرور Edge SMTP مراجعه کنید.
راهحل ۲: استفاده از LDAP
اگر نمیتوانید سرور SMTP را پیکربندی کنید، از فرمانهای LDAP زیر برای تنظیم گذرواژه جدید برای کاربر استفاده کنید:
- یکی از سرپرستان سازمان موجود باید کاربر خاص را در
«واسط کاربر Edge» جدید (یا در «واسط کاربر Edge» قدیمی در نسخههای قبلی، همانطور که در
تصویر زیر نشان داده شده است) اضافه کند:

- از فرمان ldapsearch برای پیدا کردن نام متمایز کاربر
(dn) استفاده کنید و برونداد را به فایلی هدایت کنید:
ldapsearch -w Secret123 -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -x -H ldap://localhost:10389 > ldap.txt
در اینجا نمونهای از ورودی dn برای کاربر، بههمراه مشخصههای کاربر آورده شده است:
dn:uid=f7a4a4a5-7c43-4168-a47e-6e9a1417cc29,ou=users,ou=global,dc=apigee,dc=com mail: apigee_validator@apigee.com userPassword:: e1NTSEF9b0FrMFFXVmFjbWRxM1BVaFZzMnllWGZMdkNvNjMwNTJlUDZYN3c9PQ= = uid: f7a4a4a5-7c43-4168-a47e-6e9a1417cc29 objectClass: inetOrgPerson sn: Validator cn: apigee
- فایل ldap.txt را باز کنید و dn کاربر جدیدی را که براساس مشخصه ایمیل کاربر جدید اضافه شده است پیدا کنید.
- فرمان ldappassword را اجرا کنید تا گذرواژهای برای کاربر جدید
بااستفاده از dn آن اضافه کنید. در این مثال، گذرواژه کاربر را روی Apigee123 تنظیم میکنید:
ldappasswd -x -H ldap://localhost:10389 -D "cn=manager,dc=apigee,dc=com" -W -s Apigee123 "uid=f7a4a4a5-7c43-4168-a47e-6e9a1417cc29,ou=users,ou=global,dc=apigee,dc=com"
- با گذرواژهای که در مرحله قبلی تعریف کردید، بهعنوان کاربر جدید به سیستم «واسط کاربر Edge جدید» وارد شوید. کاربر میتواند پساز ورود به سیستم واسط کاربری، گذرواژه جدیدی تنظیم کند.
LDAP تکرار نمیشود
نشانه
بسیاری از نصبهای Edge چندین مرکز داده دارند، برای مثال DC-1 و DC-2. هنگام ورود به سیستم در «واسط کاربر New Edge» در DC-1 بهعنوان سرپرست سازمان، میتوانید فهرست کاربران را مشاهده کنید، اما همان فهرست کاربران در «واسط کاربر New Edge» در DC-2 نشان داده نمیشود.
پیام های خطا
هیچ خطایی ظاهر نمیشود؛ «رابط کاربری Edge جدید» فهرست کاربرانی را که باید در همه سرورهای OpenLDAP تکرار میشدند نشان نمیدهد.
علل احتمالی
معمولاً دلیل این مشکل پیکربندی نادرست تکثیر OpenLDAP است، نه خود نصب. همچنین، اگر شبکه بین سرورهای OpenLDAP اجازه ترافیک در درگاه ۱۰۳۸۹ را ندهد، ممکن است تکثیر متوقف شود.
تشخیص
برای تشخیص مشکل، مراحل زیر را دنبال کنید:
- بررسی کنید که آیا ldapsearch دادهها را از هر سرور OpenLDAP برمیگرداند یا نه:
ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -b "dc=apigee,dc=com" -LLL -H ldap://HOST_IP:10389
- بررسی کنید که آیا میتوانید از گرههای دیگر OpenLDAP در درگاه ۱۰۳۸۹ به هر گره OpenLDAP متصل شوید.
اگر telnet نصب شده است، از فرمان زیر استفاده کنید:
telnet <OpenLDAP_Peer_IP> 10389
-
اگر telnet دردسترس نیست، از netcat برای بررسی اتصال بهصورت زیر استفاده کنید:
nc -vz <OpenLDAP_Peer_IP> 10389
- پیکربندی تکرار زمان اجرا را بااستفاده از
فرمان
ldapsearchبررسی کنید:ldapsearch -o ldif-wrap=no -D cn=admin,cn=config -H ldap://:10389 -LLL -x -w LDAP_ADMIN_PASSWORD -b "cn=config" "(olcSyncrepl=*)" olcSyncrepl
خروجی باید حاوی پیکربندی مشابه زیر باشد:
dn: olcDatabase={2}mdb,cn=config olcSyncrepl: {0}rid=001 provider=ldap://OTHER_LDAP_SERVER:10389/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials=LDAP_PASSWORD searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- پیکربندی زمان اجرا را برای مشخصه
olcMultiProvider(olcMirrorModeسابق) بااستفاده از فرمانldapsearchبررسی کنید تا مطمئن شوید رویTRUEتنظیم شده باشد:ldapsearch -o ldif-wrap=no -D cn=admin,cn=config -H ldap://:10389 -LLL -x -w LDAP_ADMIN_PASSWORD -b "cn=config" "(olcMultiProvider=*)" olcMultiProvider olcMirrorMode
برونداد باید شبیه به موارد زیر باشد:
dn: olcDatabase={2}mdb,cn=config olcMultiProvider: TRUE - قوانین iptables و tcp wrapper را بررسی کنید. لطفاً هر قانونی را که به سرورهای OpenLDAP همتا اجازه نمیدهد با یکدیگر ارتباط برقرار کنند بردارید. برای تنظیم مناسب قوانین، با سرپرست شبکهتان همکاری کنید.
- مطمئن شوید گذرواژه سیستم OpenLDAP در هر گره OpenLDAP یکسان باشد.
- در فایلهای پیکربندی ldif که برای پیکربندی تکثیر N-Way OpenLDAP استفاده میشوند، با اجرای dos2unix روی فایلهای ldif که برای بهروزرسانی پیکربندی ایجاد شدهاند، بهدنبال نویسههای پنهان بگردید. معمولاً فایل ldif که نویسههای نامناسب دارد باعث میشود فرمان ldapmodify اجرا نشود و بنابراین ممکن است تکرار راهاندازی نشود. نویسههای بد را بردارید و فایلهای پیکربندی را ذخیره کنید.
اگر مشکل برطرف نشد، برای دریافت کمک در راهاندازی تکثیر N-Way OpenLDAP با پشتیبانی Apigee تماس بگیرید.
OpenLDAP شروع نشد
نشانه
OpenLDAP شروع نمیشود.
پیام های خطا
SLAPD Dead But Pid File Exists
علل احتمالی
این مشکل معمولاً بهدلیل فایل قفلی است که در سیستم فایل باقی مانده است و باید برداشته شود.
تشخیص
برای تشخیص این مشکل، مراحل زیر را دنبال کنید:
- وجود قفل فرایند slapd الدپ باز یا فایل pid را در مکان زیر بررسی کنید:
/opt/apigee/var/run/apigee-openldap/apigee-openldap.lock /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid
- درصورت وجود، فایل قفل و pid را حذف کنید و openldap را بازراهاندازی کنید.
rm /opt/apigee/var/run/apigee-openldap/apigee-openldap.lockrm /opt/apigee/var/run/apigee-openldap/apigee-openldap.pid - اگر فرایند OpenLDAP slapd شروع شد، از مراحل زیر رد شوید.
- اگر فرایند OpenLDAP slapd شروع نمیشود، سعی کنید slapd را در حالت اشکالزدایی اجرا کنید و
هرگونه خطا را پیدا کنید:
slapd -h ldap://:10389/ -u apigee -F /opt/apigee/data/apigee-openldap/slapd.d -d 255
- خطاها ممکن است به مشکلات منبع اشاره داشته باشند. میزان استفاده از حافظه و واحد پردازش مرکزی را در سیستم بررسی کنید.
- نسخه OpenLDAP را بررسی کنید و اگر قدیمی است آن را ارتقا دهید. نسخههای پشتیبانیشده OpenLDAP را در نرمافزار پشتیبانیشده بررسی کنید.
slapd -V
- از strace برای عیبیابی فرایند slapd و ارائه خروجی strace به پشتیبانی Apigee استفاده کنید:
strace -tt -T -f -F -i -v -e read=all -s 8192 -e write=all -o /tmp/strace.out -p <pid>
خرابی دادههای الدپ باز
نشانه
کاربران دیگر نمیتوانند تماسهای مدیریتی برقرار کنند یا به واسط کاربر New Edge وارد شوند. استفاده از ابزار ldapsearch برای پُرسمان کردن کاربران ممکن است نشان دهد که کاربر در مخزن داده LDAP وجود دارد، یا ممکن است کاربران یا نقشهای احتمالی ازدسترفته را شناسایی کند.
پیام های خطا
Unknown username and password combination.
علل احتمالی
معمولاً این مشکل بهدلیل خراب شدن دادههای OpenLDAP مشاهده میشود. معمولاً دادههای OpenLDAP خراب نمیشوند. اما در موارد نادری که این اتفاق میافتد، خرابی میتواند بهدلیل خرابی دیسک سیستم یا مشکلات فضای دیسک باشد.
تشخیص
- بااستفاده از فرمان زیر، فضای دیسک را در سیستمی که OpenLDAP در آن نصب شده است بررسی کنید:
du -m /opt
- اگر میبینید که فضای دیسک استفادهشده بسیار نزدیک به ۱۰۰٪ است، این نشان میدهد که علت این مشکل تمام شدن فضای دیسک سیستم شما است.
- سازگاری دادهها را در سراسر گرههای LDAP بررسی کنید:
- در هر گره LDAP، تعداد کاربر و نقش را مقایسه کنید. فرمانهای زیر را اجرا کنید و نتایج را مقایسه کنید.
اختلاف در تعداد بین گرهها نشاندهنده خرابی احتمالی دادهها است.ldapsearch -o ldif-wrap=no -b "ou=users,ou=global,dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w PASSWORD|wc -lldapsearch -o ldif-wrap=no -b "ou=resources,ou=global,dc=apigee,dc=com" -D "cn=manager,dc=apigee,dc=com" -H ldap://:10389 -LLL -x -w PASSWORD|wc -l - وضعیت تکثیر LDAP را درستیسنجی کنید. فرمان زیر را در هر گره LDAP اجرا کنید.
اگر مقدارldapsearch -x -LLL -H ldap://ldap_ip:10389 -s base -b 'dc=apigee,dc=com' contextCSN dn: dc=apigee,dc=com -D "cn=manager,dc=apigee,dc=com" -w PASSWORD dn: dc=apigee,dc=com
contextCSNدر همه گرهها یکسان باشد، تکرار LDAP بهدرستی کار میکند.
- در هر گره LDAP، تعداد کاربر و نقش را مقایسه کنید. فرمانهای زیر را اجرا کنید و نتایج را مقایسه کنید.
وضوح
اگر فضای دیسک سیستم شما تمام شده است یا درحال تمام شدن است، فضای دیسک بیشتری اضافه کنید تا از دردسترس بودن فضای کافی مطمئن شوید.
پساز اینکه فضای دیسک کافی داشتید، از یکی از راهحلهای زیر برای رفع مشکل خرابی دادههای LDAP استفاده کنید:
- دادههای OpenLDAP را از نسخه پشتیبان بازیابی کنید.
-
پایگاه داده OpenLDAP را بااستفاده از مراحل زیر پاکسازی کنید:
- Management Server 2 و LDAP2 را ازکار بیندازید.
- LDAP1 را از نسخه پشتیبان VM (یا نسخه پشتیبان Apigee) بازیابی کنید.
- سرور مدیریت ۱ را برای راهاندازی و بازیابی بررسی کنید.
- پساز اینکه سرور مدیریت ۱ و LDAP1 بهدرستی کار کردند، LDAP2 را از ابتدا دوباره نصب کنید (با ایجاد یک صفحه کاملاً خالی).
- LDAP2 را در حالت محدود به خواندن راهاندازی کنید تا LDAP1 بتواند در LDAP2 تکرار شود.
- از
ldapsearchاستفاده کنید تا مطمئن شوید تعداد خطوط در LDAP1 و LDAP2 مطابقت دارد. - سرور مدیریت ۲ و رابط کاربری Edge جدید را در گره ۲ بازراهاندازی کنید و مطمئن شوید که با موفقیت شروع میشوند.
برای دستورالعملهای دقیق، به ردیاب مشکلات عمومی مراجعه کنید.
راهحل شماره ۱ بازیابی دادههای LDAP از نسخه پشتیبان
در گره OpenLDAP فعال، پشتیبانگیری کنید. پشتیبانگیری باید بهطور منظم انجام شود. برای روالهای مطلوب درباره پشتیبانگیری، راهنمای عملیات Apigee Private Cloud را ببینید:
slapcat -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
از مراحل زیر میتوان برای بازیابی دادههای OpenLDAP از نسخه پشتیبان سالم استفاده کرد.
- گره OpenLDAP را که دادههای آن باید بازیابی شود متوقف کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- دایرکتوری را به دایرکتوری داده OpenLDAP تغییر دهید:
cd /opt/apigee/data/apigee-openldap
- بااستفاده از فرمان move، از دادههای OpenLDAP موجود پشتیبانگیری کنید:
mv ldap ldap_orig
- به کاربر apigee بروید:
su apigee
- از فهرست راهنمای
/opt/apigee/data/apigee-openldap، فهرست راهنمای داده OpenLDAP جدیدی با نام اصلی ایجاد کنید:mkdir ldap
- نسخه پشتیبان زیرفهرست راهنمای ldap_orig/DB_CONFIG را از مرحله ۳ بگیرید و آن را در فهرست راهنمای openldap کپی کنید.
cp ldap_orig/DB_CONFIG ldap
- برای بازیابی دادهها از پشتیبانگیری انجامشده با slapcat، از slapadd برای وارد کردن ldif که
حاوی دادههای خوب است استفاده کنید:
slapadd -F /opt/apigee/data/apigee-openldap/slapd.d -l /tmp/ldap-backup.ldif
- فرایند OpenLDAP را شروع کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
راهحل شماره ۲: پاکسازی پایگاه داده LDAP
مراحل زیر پایگاه داده OpenLDAP را پاک میکند تا شروعی تازه داشته باشید. اگر نسخه پشتیبان دادهای از آخرین وضعیتی که دادههای OpenLDAP کار میکردند وجود نداشته باشد، میتوان از این راهحل استفاده کرد.
- سرویس OpenLDAP را متوقف کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- دایرکتوری را به دایرکتوری دادههای OpenLDAP تغییر دهید:
cd /opt/apigee/data/apigee-openldap
- بااستفاده از فرمان move، از دادههای OpenLDAP موجود پشتیبانگیری کنید:
mv ldap ldap_orig
- به کاربر apigee جابهجا شوید:
su apigee
- فهرست راهنمای داده OpenLDAP جدیدی با نام اصلی ایجاد کنید:
mkdir ldap
- زیرفهرست راهنمای پشتیبان ldap_orig/DB_CONFIG را از مرحله ۳ بگیرید و آن را در فهرست راهنمای openldap کپی کنید:
cp ldap_orig/DB_CONFIG ldap
- فرایند OpenLDAP را بازراهاندازی کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap start
- «سرور مدیریت» را بازراهاندازی کنید تا اتصالات به OpenLDAP بهاجبار بازآوری شود:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
راهکار شماره ۳: بازنشانی «الدپ باز» به نصب پایه
اگر «راهحل ۲» مشکل را برطرف نکرد، میتوانید الدپ باز را به نصب پایه بازنشانی کنید، همانطور که در این بخش توضیح داده شده است.
پیشنیازها
برای بازنشانی OpenLDAP، به پیشنیازهای زیر نیاز دارید:
- امکان اجرای راهاندازی با اطلاعات کاربری LDAP ریشه و سرپرست سیستم.
- دسترسی به ابزار کمکی
ldapadd. - فایل پیکربندی بیصدای اصلی ذخیرهشده برای گره مدیریت/LDAP.
برای بازنشانی OpenLDAP، مراحل زیر را انجام دهید:
- OpenLDAP و «سرور مدیریت» را دوباره نصب کنید.
- سرور
openldapرا متوقف کنید:apigee-service apigee-openldap stop
- پوشه دادههای خراب
openldapرا حذف کنید:rm -rf /opt/apigee/data/apigee-openldap
- حذف نصب عنصر
openldap:apigee-service apigee-openldap uninstall
- مؤلفه
openldapرا بااستفاده از همان فایل پیکربندی که برای نصب اولیه استفاده شده بود دوباره نصب کنید: که/opt/apigee/apigee-setup/bin/setup.sh -p ld -f configfile
configfileنام فایل پیکربندی است. - «سرور مدیریت» را بااستفاده از فایل پیکربندی اصلی بازنصب کنید:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f configfile
پساز انجام این مراحل، تماسهای Management API باید دوباره فقط بااستفاده از حساب
sysadminکار کند. بااینحال، ورود به سیستم New Edge UI امکانپذیر نیست و فراخوانیهای Management API با هیچ کاربر دیگری کار نخواهد کرد. - سرور
- ورودیهای
openldapجاافتاده را برای سازمانهایی که قبلاز خرابی وجود داشتند اضافه کنید.پساز تکمیل مرحله بالا،
openldapورودیهای سازمانهایی را که هنگام وقوع خرابی وجود داشتهاند ازدست خواهد داد. بیشتر دادههای واقعی سازمان مثل دستههای پراکسی در Cassandra یا Zookeeper ذخیره میشود و ازدست نمیرود. بااینحال، اجرای اسکریپت setup-org بهطور خودکار دادههای openldap را برای سازمانهایی که ازقبل در Cassandra و Zookeeper وجود دارند اضافه نمیکند. این دادهها باید بهصورت دستی برای هر سازمانی که قبلاز خرابی وجود داشته است بااستفاده از مراحل زیر اضافه شود:- فایل ldif با نام
missingLDAP.ldifو محتوای زیر ایجاد کنید:# orgname, organizations, apigee.com dn: o=orgname,ou=organizations,dc=apigee,dc=com objectClass: organization O: orgname # userroles, orgname, organizations, apigee.com dn: ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com ou: userroles objectClass: organizationalUnit # orgadmin, userroles, orgname, organizations, apigee.com dn: cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com objectClass: organizationalRole cn: orgadmin roleOccupant: uid=admin,ou=users,ou=global,dc=apigee,dc=com # resources, orgadmin, userroles, orgname, organizations, apigee.com dn: ou=resources,cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com ou: resources objectClass: organizationalUnit # @@@, resources, orgadmin, userroles, orgname, organizations, apigee.com dn: cn=@@@,ou=resources,cn=orgadmin,ou=userroles,o=orgname,ou=organizations,dc=apigee,dc=com roleOccupant: ou=delete,ou=permissions,dc=apigee,dc=com roleOccupant: ou=get,ou=permissions,dc=apigee,dc=com roleOccupant: ou=put,ou=permissions,dc=apigee,dc=com labeledURI: / objectClass: organizationalRole objectClass: labeledURIObject cn: @@@
که در آن orgname سازمانی است که میخواهید بازسازی کنید.
- بااستفاده از فرمان زیر، نهادهای LDAP مفقود را اضافه کنید:
ldapadd -x -w "OPENLDAP_ROOT_PASSWORD" -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f missingLDAP.ldif
مراحل بالا ورودیهای مفقودشده را برای سازمان موجود و اجازههای
orgadminبرای آن سازمان ایجاد میکند. مراحل را برای هر سازمانی که باید دوباره ایجاد شود تکرار کنید. در این مرحله، میتوانیدorgadminکاربر را به سازمان اضافه کنید، اما نقشهای پیشفرض دیگر هنوز وجود ندارند، بنابراین باید آنها را بااستفاده از مرحله بعدی اضافه کنید. - فایل ldif با نام
افزودن نقشها و اجازههای پیشفرض ازقلمافتاده به سازمان موجود.
بااستفاده از همان فایل پیکربندی که در ابتدا برای راهاندازی هریک از سازمانهای موجود استفاده شده است، فرمان زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-roles -f configfile
- بااستفاده از «میانای کاربر Edge جدید» یا «میانای برنامهسازی کاربردی مدیریت»، هر نقش سفارشی را که قبلاز خرابی وجود داشته است اضافه کنید،
- کاربران را به نقشهای کاربری مربوطه اضافه کنید.
(اختیاری) پیکربندی اصالتسنجی برونسپاریشده را در «مدیریت» دوباره برقرار کنید.
اگر پیکربندی تغییر نکرده است،
/opt/apigee/customer/application/management-server.propertiesرا بازیابی کنید. چون «میانای کاربر New Edge» بازنصب نشده است،/opt/apigee/customer/application/management-ui.propertiesپساز بازیابی اطلاعات کاربری حسابsysadminبا نصب جدید Management Server، همان باقی میماند.(اختیاری) Apigee mTLS را در گره «مدیریت» بازنصب کنید.
اگر Apigee mTLS قبلاً نصب شده است، «راهنمای نصب Apigee mTLS» را دنبال کنید تا آن را در گره سرور مدیریت دوباره نصب کنید.
پساز دنبال کردن این رویه، باید بهصورت دستی:
اگر مشکل برطرف نشد، برای دریافت راهنمایی بیشتر با پشتیبانی Apigee تماس بگیرید.