إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تتيح لك واجهة برمجة تطبيقات CycleCloud Python التفاعل مع واجهة برمجة تطبيقات CycleCloud REST دون معالجة طلبات HTTP يدويا. للحصول على توزيع مصدر API للبيع، اذهب إلى /about في تثبيت CycleCloud واختر رابط Download Python API (تحميل واجهة برمجة التطبيقات (Download Python). بعد تنزيل توزيع المصدر، استخدم pip install لإضافته إلى بيئة Python.
كائنات العميل
يمكنك إنشاء كائن عميل بتكوين محدد أو بدونه. إذا لم تحدد قاموس التكوين، يحاول كائن العميل تلقائيا الحصول على التكوين من ملف CYCLECloud CLI ini الافتراضي (~/.cycle/config.ini).
قم بتوفير التكوين كقاموس مع أزواج المفاتيح/القيم التالية:
-
url- مطلوب، عنوان URL الخاص بواجهة الويب لتثبيت CycleCloud -
username- مطلوب -
password- مطلوب، كلمة المرور النصية العادية للمستخدم -
timeout- عدد الثوان قبل انتهاء المهلة عند محاولة الاتصال بالنظام أو الاتصال به (60 بشكل افتراضي) -
verify_certificates- قيمة منطقية توضح ما إذا كان يجب تمكين التحقق من الشهادة (صحيح بشكل افتراضي)
يمكنك أيضا توفير هذه القيم كوسيطات كلمات أساسية إلى الدالة الإنشائية.
from cyclecloud.client import Client
# configuration read from ~/.cycle/config.ini
cl1 = Client()
# config provided as dictionary
config = {"url": "http://127.0.0.1:8443",
"username": "admin",
"password": "password",
"timeout": 60,
"verify_certificates": False}
cl2 = Client(config)
# config provided as keyword arguments
cl3 = Client(url="http://127.0.0.1:8443", username="admin", password="password")
خصائص العميل
session- كائن جلسة العمل - يستخدم فقط في إجراء مكالمات إلى واجهة برمجة التطبيقات المباشرةclusters- خريطة لكائنات نظام المجموعة في النظام، يتم مفتاحها بواسطة اسم نظام المجموعة
كائنات العنقود
يمنحك كائن نظام المجموعة التحكم في مجموعة معينة في تثبيت CycleCloud.
خصائص مقطع التخزين
name- اسم نظام المجموعة الذي يشير إليه الكائنnodes- قائمة يمكنك التكرار من خلالها تحتوي على سجلات العقدة لنظام المجموعة
وظائف العنقود
get_status(nodes=False)- يحصل على كائن حالة العنقود في العنقود. يمكنك اختيار تضمين قائمة العقدة.scale_by_cores(node_array, total_core_count)- يعين النظام لتوسيع نطاق صفيف العقدة المحدد إلى العدد الأساسي الإجمالي المطلوب. إذا كان صفيف العقدة يحتوي بالفعل على أكثر منtotal_core_countذاكرات أساسية، فلن يكون لاستدعاء أي تأثير.scale_by_nodes(node_array, total_node_count)- يعين النظام لتوسيع نطاق صفيف العقدة المحدد إلى إجمالي عدد العقد المطلوبة. إذا كان صفيف العقدة يحتوي بالفعل على أكثر منtotal_node_countعقد، فإن الاستدعاء ليس له أي تأثير.
واجهة برمجة التطبيقات المباشرة
يمكنك الوصول إلى واجهة برمجة تطبيقات REST بشكل مباشر أكثر باستخدام واجهة برمجة التطبيقات في cyclecloud.api و cyclecloud.model، والتي يتم توليدها مباشرة من واجهة برمجة تطبيقات REST. لاستخدام واجهة برمجة التطبيقات هذه، أنشئ كائن عميل وقم بإجراء مكالمات باستخدام الخاصية التي session يوفرها.
from cyclecloud.client import Client
from cyclecloud.api import clusters
cl1 = Client()
# prints the current state of the cluster
response_status, cluster_status = clusters.get_cluster_status(cl1.session, "test-cluster-1", nodes=False)
print(cluster_status.state)