سؤال

بالنسبة إلى بلدي في وقت سابق سؤال SO مماثل , ، لقد حاولت استخدام الثلج/تساقط الثلوج على AWS للحوسبة المتوازية.

ما فعلته هو:

  • في ال sfInit() وظيفة، لقد قدمت DNS العام ل socketHosts المعلمة مثل ذلكsfInit(parallel=TRUE,socketHosts =list("ec2-00-00-00-000.compute-1.amazonaws.com"))
  • الخطأ الذي تم إرجاعه كان Permission denied (publickey)
  • ثم اتبعت التعليمات (أفترض بشكل صحيح!) على http://www.imbi.uni-freiburg.de/parallel/ في قسم "تسجيل الدخول إلى Secure Shell (SSH) بدون كلمة مرور".
  • لقد قمت فقط بتجميع محتويات ملف .pem الذي قمت بإنشائه على AWS في ~/.ssh/authorized_keys لمثيل AWS الذي أريد الاتصال به من مثيل AWS الرئيسي الخاص بي ومثيل AWS الرئيسي أيضًا

هل هناك أي شيء أفتقده؟سأكون ممتنًا جدًا إذا تمكن المستخدمون من مشاركة تجاربهم في استخدام الثلج على AWS.

شكرا جزيلا لك على مقترحاتك.

تحديث:أردت فقط تحديث الحل الذي وجدته لمشكلتي المحددة:

  • لقد استخدمت StarCluster لإعداد مجموعة AWS الخاصة بي: عنقود نجمي
  • الحزمة المثبتة snowfall على كافة العقد الكتلة
  • من العقدة الرئيسية صدرت الأوامر التالية
  • hostslist <- list("ec2-xxx-xx-xxx-xxx.compute-1.amazonaws.com","ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com")
  • sfInit(parallel=TRUE, cpus=2, type="SOCK",socketHosts=hostslist)
  • l <- sfLapply(1:2,function(x)system("ifconfig",intern=T))
  • lapply(l,function(x)x[2])
  • sfStop()
  • أكدت معلومات IP أنه تم استخدام عقد AWS
هل كانت مفيدة؟

المحلول

أعتقد أن @ أناتولي على حق:أنت تستخدم شهادة X.509.للحصول على الخطوات الدقيقة التي يجب اتخاذها لإضافة مفاتيح SSH، انظر قسم "أنواع بيانات الاعتماد" في دليل المبتدئين EC2.

لتحميل مفاتيح SSH الخاصة بك، قم بإلقاء نظرة على هذه الصفحة من الستيك.

قد يكون الأمر مربكًا بعض الشيء في البداية، لكنك ستحتاج إلى التأكد من مفاتيح الوصول الخاصة بك والشهادات وأزواج المفاتيح الخاصة بك، والتي قد تظهر في ملفات نصية تحتوي على DSA أو RSA.

نصائح أخرى

لا يبدو الأمر بهذا السوء ولكن ملف pem خاطئ.ولكن في بعض الأحيان لا يكون الأمر بهذه البساطة ويتعين على الكثير من الناس القتال مع هذه المشكلات.الكثير من النصائح تجدونها في هذه التدوينة:

من تجربتي معظم الناس يواجهون مشاكل في هذه الخطوات:

  • هل يمكنك الدخول على الأجهزة عبر ssh؟(ssh ec2-00-00-00-000.compute-1.amazonaws.com).حاول استخدام DNS العام، وليس IP العام للاتصال.
  • يجب عليك التحقق من "مجموعات الأمان" الخاصة بك في AWS إذا كان المنفذ 22 مفتوحًا لجميع الأجهزة!

إذا كنت تخطط لبدء تشغيل أكثر من 10 أجهزة عاملة، فيجب عليك العمل على تثبيت MPI على أجهزتك (أداء أفضل بكثير!)

ماركوس من cloudnumbers.com :-)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top