আমি যে প্যাকেজগুলি উল্লেখ করেছি তাতে আঃ মেঘ গঠন কেন ইনস্টল করে না?


14

আমি এডাব্লুএস পরিষেবাগুলিতে খুব নতুন। আমি এডাব্লুএস মেঘ গঠন ব্যবহার করার চেষ্টা করছি এবং আমি একটি টেম্পলেট তৈরি করেছি। টেমপ্লেটটি ত্রুটি মুক্ত এবং আমি এটি ব্যবহার করে মেশিন তৈরি করতে সক্ষম হয়েছি।

তবে আমি টেমপ্লেটে এমন কিছু কনফিগার যুক্ত করেছি যাতে এটি শুরুর সময় টমক্যাট, গিট এবং অন্যান্য জিনিস ইনস্টল করে। তবে আমার পক্ষে তা হয় না।

টমক্যাট ইনস্টল করার জন্য আমি কোডের একটি অংশ এখানে ব্যবহার করেছি:

"Resources": {
    "Tomcat": {
        "Type": "AWS::EC2::Instance",
        "Metadata": {
            "AWS::CloudFormation::Init": {
                "config": {
                    "packages": {
                        "apt": {
                            "tomcat6": [],
                            "git": [],
                        }
                    }
                }
            }
        },

কিন্তু আমি যখন মেশিনে লগইন করিনি বা tomcatইনস্টলও gitকরা হয়নি!

আগাম ধন্যবাদ.


আমি আপনার ট্যাগ থেকে ধরে নিলাম যে এটি উবুন্টু এএমআই?
mattdm

আপনি কি "গিট" পরে "," মুছে ফেলার চেষ্টা করেছেন: []? এটি সিন্টেক্সিকভাবে সঠিক নয়।
এডউইন

উত্তর:


23

আমি বিশ্বাস করি যে আপনার সমস্যাটি এখানে ক্লাউড-থ্রির চারদিকে বিভ্রান্তি সিএফএন-আর-এর মতো নয়।

  • ক্লাউড-আরআইই হ'ল সেই সরঞ্জাম যা উবুন্টু এডাব্লুএস এএমআই এর অংশ হিসাবে শুরু হয়েছিল যা মেটা-ডেটা-র ইসি 2 ব্যবহারকারী-ডেটা উপাদানটির ব্যাখ্যার অনুমতি দেয়। অ্যামাজন লিনাক্সও এই সরঞ্জামটি গ্রহণ করেছে এবং এটিকে তাদের এএমআইতে তৈরি করেছে।

  • সিএফএন-আরআইআর অ্যামাজন লিনাক্সের জন্য এডাব্লুএস দ্বারা নির্মিত ক্লাউডফর্মেশন হেল্পার স্ক্রিপ্ট নামে পরিচিত একটি আলাদা টুলসেটের অংশ যা আপনার ক্লাউডফর্মেশন টেম্পলেটে নামের একটি অতিরিক্ত বিভাগ পড়তে পারে ।Metadata

সুতরাং, উবুন্টু এবং অ্যামাজন লিনাক্স এএমআই উভয়ই ব্যবহারকারীর ডেটা অ্যাক্সেসের জন্য ক্লাউড-থিম সরঞ্জামগুলি ইনস্টল করেছেন তবে ক্লাউডফর্মেশন মেটাডেটা অ্যাক্সেসের জন্য কেবল অ্যামাজন লিনাক্সের ক্লাউডফর্মেশন হেল্পার স্ক্রিপ্টগুলি পূর্বনির্ধারিত যেমন সিএফএন-থ্রি রয়েছে।

তবে এডাব্লুএস ক্লাউডফর্মেশন মেটাডেটা পড়তে প্যাকেজগুলি বিতরণ করে । বিশেষ করে, এই সময়ে বর্ণন টেমপ্লেট কিভাবে আপনি পাইথন-setuptools ইনস্টল করার জন্য একটি মেঘ-Init ব্যবহারকারী-ডেটা স্ক্রিপ্ট ব্যবহার করতে পারেন, CloudFormation সাহায্যকারী স্ক্রিপ্ট ডাউনলোড, ডাকা cfn-Init easy_install এবং তারপর ব্যবহার সেগুলি ইনস্টল জন্য।

দ্রষ্টব্য: অন্যান্য ডিস্ট্রিবিউশন বা এএমআই রয়েছে যা ক্লাউড-আরআইএন বা সিএফএন-ইনকে সমর্থন করতে পারে, তবে আমি এখানে কেবলমাত্র সাধারণ কেসগুলিই কভার করছি।


12

দৃষ্টান্তটির ইউজারডাটা সম্পত্তিটির মধ্যে আপনাকে সিএফএন-আরআইএন ( http://docs.aws.amazon.com/AWSCloud Formation/latest/UserGuide/cfn-init.html ) কল করতে হবে :

{
    "Resources": {
        "Tomcat": {
            "Type": "AWS::EC2::Instance",
            "Metadata": {
                "AWS::CloudFormation::Init": {
                    "config": {
                        "packages": {
                            "apt": {
                                "tomcat6": [],
                                "git": []
                            }
                        }
                    }
                }
            },
            "Properties": {
                "UserData": {
                    "Fn::Base64": {
                        "Fn::Join": ["", [
                            "#!/bin/bash\n",
                            "/opt/aws/bin/cfn-init -s ", {
                                "Ref": "AWS::StackName"
                            },
                            "    -r Tomcat",
                            "    --region ", {
                                "Ref": "AWS::Region"
                            }, "\n"
                        ]]
                    }
                }
            }
        }
    }
}

ইউজারডাটা সম্পত্তি বেস 64 এনকোডেড এবং আপনাকে এমন একটি স্ক্রিপ্ট নির্দিষ্ট করতে দেয় যা ইনস্টল করার সময় চালানো উচিত। এখানে আপনি সিএফএন-আর-কে কল করতে পারেন যা ক্লাউডফর্মেশন :: আর্ট মেটাডেটা পড়বে এবং সেখানে নির্দিষ্ট করা সমস্ত কিছু সেটআপ করবে।

এছাড়াও সিএফ স্ট্যাক তৈরি করার সময় আপনি দ্বিতীয় পৃষ্ঠায় (পরামিতি দেওয়ার পরে) উন্নত সেটিংসে যেতে চান এবং ত্রুটিযুক্ত রোলব্যাকটি "না" এ সেট করা আছে তা নিশ্চিত করে নিতে পারেন। যদি আপনি যে কারণেই সিএফএন-আরআই স্ক্রিপ্টটি ব্যর্থ হয়ে থাকেন এবং উদাহরণস্বরূপ /var/log/cfn-init.log ফাইলটি পরীক্ষা করে দেখুন।


আমি মনে করি এটি গ্রহণযোগ্য উত্তর হওয়া উচিত।
এরিক ভ্যান ব্রাকেল

1

উপরে উত্তর সঠিক। তবে আপনার এটিও নিশ্চিত হওয়া উচিত যে আপনি ক্লাউডফর্মেশন সহায়ক স্ক্রিপ্টগুলি সফলভাবে ইনস্টল করেছেন। ইনস্টলেশন বিশদটির জন্য দয়া করে http://docs.aws.amazon.com/AWSCloud Formation/latest/UserGuide/cfn-helper-scriptts-references.html অনুসরণ করুন।


-3
    "UserData"       : { "Fn::Base64" : { "Fn::Join" : ["", [
      "#!/bin/bash\n",
      "export DEBIAN_FRONTEND=noninteractive\n",
      "apt-get update && apt-get upgrade -y\n",
      "apt-get -y install python-setuptools\n",
      "easy_install https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-latest.tar.gz\n",
      "/usr/local/bin/cfn-init --stack ", { "Ref":"AWS::StackName" }, " --resource <REPLACE_WITH_RESOURCENAME>", " --region ", { "Ref": "AWS::Region" }, "\n",

4
আমি এটি পাই না ...
পিয়ের.ভ্রিয়েন্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.