Edge for Private Cloud نسخه ۴.۱۷.۰۵
نمای کلی نصب
After you install the Edge the apigee-setup utility on a node, use that utility to install one or more BaaS components on the node.
ابزار apigee-setup این فرم را دارد:
> sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
فایل پیکربندی را به ابزار کمکی apigee-setup که حاوی اطلاعات مربوط به نصب است ارسال کنید. اگر فایل پیکربندی فاقد هرگونه اطلاعات لازم باشد، ابزار کمکی apigee-setup از شما میخواهد آن را در خط فرمان وارد کنید.
تنها شرط این است که فایل پیکربندی باید برای کاربر «apigee» قابلدسترسی یا خواندن باشد.
برای مثال، از فرمان زیر برای نصب API BaaS Stack استفاده کنید:
> sudo /opt/apigee/apigee-setup/bin/setup.sh -p b -f myConfig
مشخص کردن مؤلفهها برای نصب
برنامه کمکی Apigee setup.sh از چندین گزینه برای نصب مؤلفههای API BaaS پشتیبانی میکند. دستورالعملهای زیر از گزینههای مستقل (c، e، b، و p) استفاده میکنند، اما میتوانید براساس پیکربندی گره خود از گزینههای مختلفی استفاده کنید:
|
گزینه |
شرح |
|---|---|
|
e |
فقط ElasticSearch را نصب کنید. |
|
b |
فقط API BaaS Stack را نصب کنید که Tomcat را نیز نصب میکند. |
|
p |
فقط API BaaS Portal را نصب کنید، که روتر Nginx را نیز برای استفاده بهعنوان سرور وب نصب میکند. |
|
c |
فقط Cassandra را نصب کنید. |
|
eb |
ElasticSearch، API BaaS Stack، و Tomcat را روی گره نصب کنید. |
|
ebp |
ElasticSearch، درگاه API BaaS، پشته API BaaS، و Tomcat را نصب کنید اما Cassandra را نصب نکنید. این درگاه آنقدر سبک است که به هیچ منبع اضافی برای این کار نیاز نیست. |
|
asa |
همه مؤلفههای API BaaS را در یک گره نصب کنید (Cassandra، Elasticsearch، API BaaS Stack، API BaaS Portal، Tomcat). از این گزینه فقط برای توسعه و آزمایش استفاده کنید، نه برای تولید. |
ایجاد فایل پیکربندی
فایل پیکربندی حاوی همه اطلاعات لازم برای نصب API BaaS است. اغلب میتوانید از همان فایل پیکربندی برای نصب همه مؤلفهها در نصب BaaS استفاده کنید.
هر توپولوژی نصب شرحدادهشده در زیر یک فایل پیکربندی نمونه برای آن توپولوژی نشان میدهد. برای مرجع کامل فایل پیکربندی، به مرجع فایل پیکربندی BaaS مراجعه کنید.
نصب API BaaS در یک گره
فایل پیکربندی برای نصب API BaaS در یک گره در زیر نشان داده شده است. این فایل را درصورت لزوم برای پیکربندیتان ویرایش کنید. برای مرجع کامل فایل پیکربندی، به مرجع فایل پیکربندی BaaS مراجعه کنید.
IP1=192.168.56.101 # IP address of single node # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Define the API BaaS administrator account. AS_ADMIN="superuser" # User name - default is "superuser". AS_ADMIN_EMAIL=stackAdmin@email.com AS_PASSWD=stackAdminPWord # Because you are installing Cassandra, # specify Cassandra data center and rack suffix. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1" # Specify the Cassandra region. REGION=dc-1 # Cassandra uname/pword. # Even if Cassandra authentication is disabled, # you must still pass values for these properties. CASS_USERNAME=cassandra # Default value CASS_PASSWORD=cassandra # Default value # Specify Cassandra data center name. BAAS_CASS_LOCALDC=dc-1 # For a single data center, specify the same value as BAAS_CASS_LOCALDC. BAAS_CASS_DC_LIST=dc-1 # Replication is in the form "dataCenterName:#CassandraNodes". # For dc-1 with one Cassandra node, it is dc-1:1. BAAS_CASS_REPLICATION=dc-1:1 # Defines the initial contact points for members of the BaaS cluster. # For a single node install, specify the IP address of the node. BAAS_CLUSTER_SEEDS="dc-1:$IP1" # Single ElasticSearch IP. ES_HOSTS="$IP1" # API BaaS Stack information. # Default cluster name is "apigee_baas" BAAS_USERGRID_CLUSTERNAME="apigee_baas" # IP/DNS and port 8080 of a single Stack node. BAAS_USERGRID_URL="http://$IP1:8080" # URL and port of the BaaS Portal node. BAAS_PORTAL_URL="http://$IP1:9000" # Portal port. Default value is 9000. BAAS_PORTAL_LISTEN_PORT=9000 # SMTP information. BaaS requires an SMTP server. SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y
برای نصب API BaaS در گره خودش:
- برنامه کمکی Edge apigee-setup را بااستفاده از روش اینترنتی یا غیر اینترنتی در گره نصب کنید. برای اطلاعات بیشتر، نصب ابزار کمکی apigee-setup در Edge را ببینید.
- At the command prompt, run the setup script:
> /opt/apigee/apigee-setup/bin/setup.sh -p asa -f configFile
The “-p asa” option specifies to install all API BaaS components on a single node (Cassandra, Elasticsearch, API BaaS Stack, API BaaS Portal, Tomcat).
فایل پیکربندی باید برای کاربر «apigee» قابلدسترسی یا خواندن باشد. - چون ElasticSearch را روی گره مستقل نصب کردهاید، گزینه حافظه پیشفرض را تنظیم کنید تا حافظه اختصاصیافته به ElasticSearch از ۴ گیگابایت به ۶ گیگابایت افزایش یابد:
- /opt/apigee/customer/application/elasticsearch.properties را در ویرایشگر باز کنید. اگر این فایل وجود ندارد، آن را ایجاد کنید.
- ویژگی setenv_elasticsearch_max_mem_size را
روی 6g تنظیم کنید (پیشفرض 4g است):
setenv_elasticsearch_max_mem_size=6g - فایل را ذخیره کنید.
- فرمان زیر را اجرا کنید:
> /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
- سازمانی را همانطور که در زیر در آمادهسازی سازمان جدید شرح داده شده است آماده کنید.
پیکربندی راهاندازی را در گره باموفقیت تکمیل میکند.
نصب API BaaS در ۷ یا ۱۰ گره
روال نصب نسخه ۷ یا ۱۰ گرهای API BaaS بسیار مشابه است. تنها تفاوت این است که برای:
- نصب ۱۰ گره، سه مؤلفه ElasticSearch و سه مؤلفه API BaaS Stack را در گرههای جداگانه نصب میکنید، درمجموع شش گره. این پیکربندی برای بالاترین عملکرد توصیه میشود زیرا ElasticSearch به مقدار زیادی ورودی/خروجی دیسک و حافظه نیاز دارد.
- نصب ۷ گره، سه مؤلفه ElasticSearch و سه مؤلفه API BaaS Stack را روی همان گرهها نصب میکنید، درمجموع سه گره.
برای هر دو نسخه ۷ و ۱۰ گره API BaaS، باید به خوشه Cassandra متصل شوید. اگر قبلاً Edge را نصب کردهاید، میتوانید به خوشه Cassandra آن متصل شوید، یعنی لازم نیست Cassandra را بهعنوان بخشی از نصب API BaaS نصب کنید.
در زیر نمونهای از فایل پیکربندی بیصدا برای نصب API BaaS با ۱۰ گره نشان داده شده است. اگر مؤلفههای ElasticSearch و API BaaS Stack را روی همان سه گره نصب میکنید، فایل را ویرایش کنید تا:
- IP1 و IP4 روی یک نشانی IP تنظیم شدهاند
- IP2 و IP5 روی نشانی IP یکسانی تنظیم شدهاند
- IP3 و IP6 روی نشانی IP یکسانی تنظیم شدهاند
این فایل را درصورت لزوم برای پیکربندیتان ویرایش کنید. برای مرجع کامل درباره فایل پیکربندی، به مرجع فایل پیکربندی BaaS مراجعه کنید.
# Specify IP address or DNS name of node. IP1=192.168.1.1 # ElasticSearch IP2=192.168.1.2 # ElasticSearch IP3=192.168.1.3 # ElasticSearch IP4=192.168.1.4 # API BaaS Stack IP5=192.168.1.5 # API BaaS Stack IP6=192.168.1.6 # API BaaS Stack IP7=192.168.1.7 # API BaaS Portal IP8=192.168.1.8 # Cassandra (shared with Edge or standalone) IP9=192.168.1.9 # Cassandra (shared with Edge or standalone) IP10=192.168.1.10 # Cassandra (shared with Edge or standalone) # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Define the API BaaS administrator account. AS_ADMIN="superuser" # User name - default is "superuser". AS_ADMIN_EMAIL=stackAdmin@email.com AS_PASSWD=stackAdminPWord # Only if you are installing Cassandra. # Specify Cassandra data center and rack suffix. # Must use IP addresses for CASS_HOSTS, not DNS names. # CASS_HOSTS="$IP8:1,1 $IP9:1,1 $IP10:1,1" # If connecting to existing Cassandra nodes, # specify Cassandra IPs. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP8 $IP9 $IP10" # Specify the Cassandra region. REGION=dc-1 # Cassandra uname/pword. # Even if Cassandra authentication is disabled, # you must still pass values for these properties. CASS_USERNAME=cassandra # Default value CASS_PASSWORD=cassandra # Default value # Specify BaaS Cassandra connection information. # Specify the data center name. BAAS_CASS_LOCALDC=dc-1 # Default is dc-1. # For a single data center, specify the same value as BAAS_CASS_LOCALDC. BAAS_CASS_DC_LIST=dc-1 # Replication is in the form "dataCenterName:#CassandraNodes". # For example, for dc-1 with three Cassandra nodes, it is dc-1:3. BAAS_CASS_REPLICATION=dc-1:3 # Defines the initial contact points for members of the BaaS cluster. # Specify the IP address of no more than two Stack nodes. BAAS_CLUSTER_SEEDS="dc-1:$IP4,dc-1:$IP5" # ElasticSearch IPs or DNS names, separated by spaces. ES_HOSTS="$IP1 $IP2 $IP3" # API BaaS Stack information. # Default cluster name is "apigee_baas" BAAS_USERGRID_CLUSTERNAME="apigee_baas" # URL and port of the load balancer for the API BaaS Stack nodes, # or IP/DNS and port 8080 of a single Stack node with no load balancer. BAAS_USERGRID_URL=http://myloadbalancer:8443 # API BaaS Portal information. # URL and port number of load balancer, if there is one in front of the Portal, # or the URL and port of the Portal node. BAAS_PORTAL_URL="http://$IP7:9000" # Portal port. Default value is 9000. BAAS_PORTAL_LISTEN_PORT=9000 # SMTP information. BaaS requires an SMTP server. SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y
اختیاری - نصب Cassandra: ماشین ۸، ۹، و ۱۰
میتوانید API BaaS را به همان خوشه Cassandra که Edge استفاده میکند متصل کنید. اگر Edge را نصب نکردهاید، میتوانید Cassandra را بهصورت اختیاری برای استفاده توسط API BaaS نصب کنید.
خوشه Cassandra میتواند از اصالتسنجی استفاده کند، یا اصالتسنجی Cassandra میتواند غیرفعال شود. برای اطلاعات بیشتر، فعال کردن اصالتسنجی Cassandra را ببینید.
- برنامه کمکی Edge apigee-setup را بااستفاده از روش اینترنتی یا غیر اینترنتی در گره نصب کنید. برای اطلاعات بیشتر، نصب ابزار کمکی apigee-setup در Edge را ببینید.
- در فرمانبر، دستورگان راهاندازی را اجرا کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
گزینه «-p c» مشخص میکند که Cassandra نصب شود.
فایل پیکربندی باید برای کاربر «apigee» قابلدسترسی یا خواندن باشد.
پیکربندی با موفقیت راهاندازی پایگاه داده را در گره تکمیل میکند.
توجه داشته باشید که JMX بهطور پیشفرض برای Cassandra فعال است. دسترسی ازراهدور JMX به Cassandra به گذرواژه نیاز ندارد. میتوانید Cassandra را پیکربندی کنید تا از اصالتسنجی برای JMX استفاده کند. برای اطلاعات بیشتر، نحوه پایش را ببینید.
راهاندازی کار زمانبندیشده Cassandra
اگر باید Cassandra را نصب کنید، یک cron job راهاندازی کنید که از nodetool برای پاک کردن قفلها استفاده میکند تا هر ساعت روی هر گره Cassandra اجرا شود.
اگر چند گره Cassandra دارید، کار cron را در هر سرور پنج دقیقه جابهجا کنید تا همه گرهها بهطور همزمان پاکسازی نشوند.
کار cron باید فرمان زیر را اجرا کند:
/opt/apigee/apigee-cassandra/bin/nodetool -h IP_address flush Apigee_Baas_Locks
که در آن IP_address نشانی IP گره Cassandra است.
نصب ElasticSearch: دستگاه ۱، ۲، و ۳
برای نصب ElasticSearch در گره خودش:
- ابزار کمکی Edge apigee-setup را بااستفاده از روش اینترنتی یا غیراینترنتی در گره نصب کنید. برای اطلاعات بیشتر، نصب ابزار کمکی Edge apigee-setup را ببینید.
- در خط فرمان، دستورگان راهاندازی را اجرا کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p e -f configFile
گزینه «-p e» مشخص میکند که ElasticSearch نصب شود.
فایل پیکربندی باید برای کاربر «apigee» قابلدسترسی یا خواندن باشد. - (اختیاری) اگر ElasticSearch را روی گره مستقل نصب کنید، یعنی با API BaaS Stack نصب نشده باشد، گزینه حافظه پیشفرض را تنظیم کنید تا حافظه اختصاصدادهشده به ElasticSearch از ۴ گیگابایت به ۶ گیگابایت افزایش یابد:
- /opt/apigee/customer/application/elasticsearch.properties را در ویرایشگر باز کنید. اگر این فایل وجود ندارد، آن را ایجاد کنید.
- ویژگی setenv_elasticsearch_max_mem_size
را روی 6g تنظیم کنید (پیشفرض 4g است):
setenv_elasticsearch_max_mem_size=6g - فایل را ذخیره کنید.
- فرمان زیر را اجرا کنید:
> /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
پیکربندی راهاندازی را در گره باموفقیت تکمیل میکند.
نصب API BaaS Stack: ماشین ۴، ۵، و ۶
برای نصب API BaaS Stack در گره خودش:
- Install the Edge apigee-setup utility on the node using the internet or non internet procedure. برای اطلاعات بیشتر، نصب ابزار کمکی Edge apigee-setup را ببینید.
- در خط فرمان، دستورگان راهاندازی را اجرا کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p b -f configFile
گزینه «-p b» مشخص میکند که API BaaS Stack نصب شود.
فایل پیکربندی باید برای کاربر «apigee» قابلدسترسی یا خواندن باشد.
پساز اینکه نصبکننده اطلاعات کاربری سرپرست صحیح را واکشی کرد، Tomcat را نصب میکند، فضاهای کلید API BaaS را ایجاد میکند، و پشته API BaaS را در سرور راهاندازی میکند. SMTP نیز پیکربندی شده است تا به رابط کاربری اجازه دهد ایمیلهای تأیید گذرواژه ارسال کند.
نصب درگاه API BaaS: ماشین ۷
برای نصب کردن API BaaS Portal:
- Install the Edge apigee-setup utility on the node using the internet or non internet procedure. برای اطلاعات بیشتر، نصب ابزار کمکی Edge apigee-setup را ببینید.
- در خط فرمان، دستورگان راهاندازی را اجرا کنید:
> /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile
گزینه «-p p» مشخص میکند که «درگاه API BaaS» نصب شود.
فایل پیکربندی باید برای کاربر «apigee» قابلدسترسی یا خواندن باشد.
نصبکننده وبسرور Nginx را راهاندازی میکند و سپس پیکربندی «درگاه API BaaS» را تکمیل میکند. - مرحله بعدی به نصب شما بستگی دارد.
- اگر متعادلکننده بار در جلوی گرههای Portalor Stack دارید، بخش بعدی نحوه پیکربندی API BaaS را برای متعادلکنندههای بار شرح میدهد.
- اگر متعادلکننده بار در مقابل گرههای Portalor Stack ندارید، سازمانی را همانطور که در زیر در آمادهسازی سازمان جدید شرح داده شده است آمادهسازی کنید.
نشانی وب «درگاه API BaaS» را یادداشت کنید. این نشانی وبی است که برای دسترسی به میانای کاربر «درگاه API BaaS» در مرورگر وارد میکنید.
پیکربندی گرههای API BaaS برای ترازکننده بار Stack یا Portal
اگر توازنگر بار را در جلوی گرههای Stack یا Portal قرار دهید، باید گرهها را با نشانی وب صحیح توازنگر بار پیکربندی کنید. برای مثال، گرههای Stack در شرایط زیر به این اطلاعات نیاز دارند:
- گنجاندن نشانی وب در پاسخها در درخواستهای BaaS API.
- افزودن پیوند در الگوهای ایمیل هنگام بازنشانی گذرواژه یا ارسال اعلانهای دیگر.
- هدایت کاربران به صفحههای خاصی از «درگاه».
اگر از متعادلکننده بار در جلوی گرههای Stack استفاده میکنید، ویژگی زیر را در /opt/apigee/customer/application/usergrid.properties تنظیم کنید:
usergrid-deployment_usergrid.api.url.base=http://localhost:8080
http://localhost:8080 را با نشانی وب متعادلکننده بار جایگزین کنید. اگر ترازکننده بار برای استفاده از TLS پیکربندی شده است، از پروتکل HTTPS استفاده کنید. فقط درصورتی باید درگاه را اضافه کنید که از درگاه غیراستاندارد استفاده میکنید، یعنی چیزی غیراز درگاه ۸۰ برای HTTP و درگاه ۴۴۳ برای HTTPS.
اگر از متعادلکننده بار در جلوی گرههای Stack استفاده میکنید، باید ویژگی زیر را نیز در /opt/apigee/customer/application/portal.properties تنظیم کنید:
baas.portal.config.overrideUrl=http://localhost:8080
http://localhost:8080 را با نشانی وب متعادلکننده بار برای Stack جایگزین کنید.
اگر از متعادلکننده بار در جلوی گره «درگاه» استفاده میکنید، ویژگیهای زیر را در usergrid.properties تنظیم کنید:
usergrid-deployment_portal.url=http://localhost:9000
http://localhost:9000 را با نشانی وب ترازکننده بار جایگزین کنید. اگر ترازکننده بار برای استفاده از TLS پیکربندی شده است، از پروتکل HTTPS استفاده کنید. فقط اگر از درگاه غیراستاندارد استفاده میکنید باید درگاه را اضافه کنید، یعنی چیزی غیراز درگاه ۸۰ برای HTTP و درگاه ۴۴۳ برای HTTPS.
پساز ویرایش usergrid.properties و portal.properties:
- گره «پشته» را پیکربندی کنید:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure - BaaS Stack را بازراهاندازی کنید:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
توجه: هنگام بازراهاندازی گرههای BaaS Stack، آنها را بههمان ترتیبی که در BAAS_CLUSTER_SEEDS فهرست شدهاند بازراهاندازی کنید. BAAS_CLUSTER_SEEDS حداکثر دو مورد از گرههای Stack را فهرست میکند. پساز بازراهاندازی آن دو گره بهترتیب، میتوانید گرههای باقیمانده را به هر ترتیبی بازراهاندازی کنید.
- اگر portal.properties را اصلاح کردهاید،
گره «درگاه» را پیکربندی کنید:
> /opt/apigee/apigee-service/bin/apigee-service baas-portal configure - «درگاه BaaS» را بازراهاندازی کنید:
> /opt/apigee/apigee-service/bin/apigee-service baas-portal restart
آمادهسازی سازمان جدید
آمادهسازی فرایند ایجاد سازمان و سرپرست سازمان است. پساز ایجاد سازمان و سرپرست سازمان، میتوانید به میانای کاربر پورتال API BaaS وارد شوید و به API BaaS REST API درخواست ارسال کنید.
وقتی سازمانی ایجاد میکنید، نشانی ایمیل سرپرست سازمان:
- باید با نشانی ایمیل سرپرست سیستم متفاوت باشد.
- باید در میان همه سازمانهای دیگر منحصربهفرد باشد. یعنی نمیتوانید دو سازمان با نشانی ایمیل یکسان برای سرپرست سازمان ایجاد کنید. اما پساز ایجاد سازمان، میتوانید سرپرستان دیگری اضافه کنید که میتوانند در چندین سازمان تکرار شوند.
برای انجام آمادهسازی، از اسکریپت پایتون create_org_and_user.py استفاده کنید. فراخوانی این اسکریپت بدون آرگومانهای خط فرمان باعث میشود که از شما بخواهد همه اطلاعات را وارد کنید:
> python create_org_and_user.py
یا میتوانید هرکدام یا همه گزینهها را بهعنوان آرگومان خط فرمان ارسال کنید. برای هر اطلاعاتی که از خط فرمان حذف کنید، از شما درخواست میشود:
> python create_org_and_user.py -o '<org name>' > python create_org_and_user.py -o '<org name>' -a '<new admin email>' -p '<new admin password>'
برای ایجاد سازمان:
- فهرست راهنما را به /opt/apigee/baas-usergrid/bin تغییر دهید.
- دستورگان Python create_org_and_user.py را فراخوانی کنید.
از شما خواسته میشود نام کاربری و گذرواژه سرپرست سیستم BaaS را وارد کنید تا فقط سرپرست سیستم بتواند آن را اجرا کند. - بااستفاده از نشانی وبی که در پایان نصب نشانی وب API BaaS Portal یادداشت کردید، در مرورگر وب به سیستم API BaaS Portal وارد شوید. برای دسترسی به درگاه، نشانی وب درگاه API BaaS را در
فرم زیر وارد کنید:
http://{portalExternalIP}:9000/
توجه: IP همان نشانی IP خارجی/نام میزبان دستگاه درگاه است. مطمئن شوید آن درگاه باز باشد. - وقتی صفحه ورود به سیستم پورتال ظاهر شد، میتوانید یکی از کارهای زیر را انجام دهید:
- بااستفاده از نام کاربری و گذرواژه سرپرست سازمان به سیستم وارد شوید.
- بااستفاده از نام کاربری و گذرواژه سرپرست سامانه، به سیستم وارد شوید.
دسترسی به API BaaS REST API
برای دسترسی به API BaaS REST API، از نشانی وب در فرم استفاده کنید:
https://{loadBalancerIP}:8080/{your-org}/{your-app}
در محیط توسعه نرمافزار، میتوانید همه مؤلفههای API BaaS را در یک گره نصب کنید، یعنی یک پشته API BaaS دارید. یا ممکن است محیط کوچکی با یک گره API BaaS Stack و بدون متعادلکننده بار داشته باشید. در این نوع محیطها، میتوانید فراخوانیهای API را مستقیماً به گره API BaaS Stack انجام دهید:
curl -v "http://portalExternalIP:8080/status"
برای اطلاعات بیشتر درباره شروع به کار با API BaaS Portal، به اسناد Apigee در نشانی زیر مراجعه کنید: http://apigee.com/docs/content/build-apps-home.