Monday, 18 April 2016

Deployment Automation Of Docker WebLogic Cluster On Any Cloud

اتوماسیون استقرار کارگر بارانداز در WebLogic خوشه ای در هر ابر

زمینه

توسعه دهندگان جاوا و حرفه ای DevOps به مدت طولانی تلاش به طور خودکار به کارگیری برنامه های کاربردی جاوا. ماهیت پیچیده از این برنامه ها معمولا بدان معنی است که وابستگی نرم افزار و یکپارچگی خارجی تا به حال به دوباره پیکربندی هر بار یک برنامه کاربردی در محیط / آزمون DEV مستقر شد.
بسیاری از راه حل پیام "مدل یک بار، استقرار در هر نقطه" برای استقرار برنامه آگهی. در واقعیت اما وجود دارد همیشه پیچیدگیهای ساخته شده است که آن را بسیار دشوار است برای استفاده مجدد از قالب نرم افزار در سراسر هر دو محیط در فرض ماکروسافت مجازی و محیط AWS، برای مثال.
اخیرا، با این حال، کانتینرهای Docker ایده اجزای نرم افزار بسته بندی در ظروف لینوکس است که می تواند همان بر روی هر میزبان لینوکس مستقر دقیقا تا زمانی که کارگر بارانداز موتور نصب شده است محبوبیت.
متاسفانه containerizing برنامه های سازمانی جاوا هنوز هم یک چالش عمدتا به دلیل موجود چارچوب ترکیب نرم افزار انجام وابستگی پیچیده، یکپارچگی خارجی و یا خودکار پوسته پوسته شدن نمی گردش پس از ارائه. علاوه بر این، طراحی زودگذر ظروف بدان معنی است که توسعه دهندگان به حال به چرخش تا ظروف جدید و دوباره ایجاد وابستگی پیچیده و یکپارچگی خارجی با هر به روز رسانی نسخه.
DCHQ، موجود در نسخه های میزبانی و بر فرض، به تمام این چالش ها و ساده کانتینری از برنامه های شرکت جاوا از طریق یک چارچوب ترکیب برنامه پیش که گسترش کارگر بارانداز نوشتن با محیط cross-تصویر اتصالات متغیر های درب اسکریپت bash پلاگین است که می توانید در زمان درخواست و یا پس از ارائه، و خوشه بندی نرم افزار برای در دسترس بودن بالا در سراسر میزبان های مختلف و یا مناطق با پشتیبانی از پوسته پوسته شدن خودکار استناد شده است.
هنگامی که یک برنامه کاربردی فراهم شده است، یک کاربر می تواند پردازنده، حافظه، نظارت بر و I / O از ظروف در حال اجرا، دریافت اطلاعیه ها و هشدارها، و انجام روز 2 عملیات مانند پشتیبان گیری برنامه ریزی، کانتینر به روز رسانی با استفاده از اسکریپت bash پلاگین، و مقیاس در / از. علاوه بر این، گردش خارج از جعبه است که تسهیل تحویل مداوم با جنکینز اجازه می دهد توسعه دهندگان به روز کردن فایل WAR جاوا از برنامه در حال اجرا بدون ایجاد اختلال در وابستگی های موجود و یکپارچگی.
در این وبلاگ، ما را بیش از پایان به پایان اتوماسیون استقرار در WebLogic خوشه بر اساس کارگر بارانداز بروید. ما را پوشش خواهد داد:
  • ساخت قالب نرم افزار برای خوشه در WebLogic است که می تواند دوباره استفاده می شود بر روی هر میزبان لینوکس در حال اجرا در هر نقطه
  • تأمین و خودکار پوسته پوسته شدن زیرساخت های اساسی در هر ابر (با Rackspace را که به عنوان مثال در این وبلاگ)
  • استقرار در WebLogic خوشه بر روی سرورهای ابر Rackspace
  • استقرار سبد خرید جاوا WAR فایل در محیط مدیریت سرور
  • دسترسی به ترمینال در مرورگر در حال اجرا برای ظروف
  • فعال کردن گردش کار تحویل مداوم با جنکینز به روز رسانی فایل WAR از برنامه های کاربردی در حال اجرا هنگامی ساخت باعث شده است
  • نظارت بر CPU، حافظه و I / O از ظروف در حال اجرا

ساخت قالب نرم افزار برای اوراکل در WebLogic خوشه 12C

O نمرات به DCHQ (یا DCHQ.io میزبان و یا در فرض نسخه) وارد شده، کاربر می تواند به حرکت برنامه و ماشین آلات و پس از آن با کلیک بر روی + دکمه برای ایجاد یک جدید کارگر بارانداز نوشتن الگو.
ما یک قالب نرم افزار در WebLogic خوشه با استفاده از یک تصویر سفارشی ما ساخته شده اعمال نفوذ تصویر رادو Dobrinescu است (: 2.0 radudobrinescu / wls12c) ایجاد کرده اند.
شما متوجه خواهید شد که CLUSTER_SIZE پارامتر اجازه می دهد تا به شما برای مشخص تعداد از ظروف برای راه اندازی (با وابستگی نرم افزار همان). ما از این برای تعریف اندازه خوشه سرور مدیریت.
میزبان پارامتر اجازه می دهد تا به شما برای مشخص میزبان شما می خواهم به استفاده برای استقرار ظرف. به این ترتیب شما می توانید بالا در دسترس برای استفاده خوشه های سرور خود را در سراسر میزبان های مختلف (و یا مناطق) اطمینان و شما می توانید با قوانین میل مطابق به اطمینان حاصل شود که پایگاه داده قابل اجرا بر روی یک میزبان جداگانه به عنوان مثال. در اینجا مقادیر پارامتر میزبان پشتیبانی می شوند:
  • host1، host2، host3 ، و غیره - یک میزبان به طور تصادفی انتخاب در یک مرکز داده (و یا خوشه ای) برای استقرار کانتینر
  • <نشانی 1، IP نشانی 2، و غیره IP> - اجازه می دهد تا کاربر را مشخص واقعی آدرس های IP استفاده برای استقرار کانتینر
  • <نام میزبان 1، نام سرور 2، و غیره> - اجازه می دهد تا کاربر را مشخص اسامی گره واقعی برای استفاده برای استقرار کانتینر
  • نویسه عام (به عنوان مثال "db- *"، و یا "برنامه-srv- *") - برای مشخص کردن نویسه عام به استفاده در نام میزبان
علاوه بر این، کاربر می تواند عبور تصویر اتصالات متغیر محیطی با ساخت یک مرجع به متغیر محیطی تصویر دیگری ایجاد کنید. در این مورد، ما را ساخته اند یک اتصال در این CAES: ADMIN_HOSTNAME = {{AdminServer | IP}} - که در آن محیط مدیریت IP سرور میزبان به صورت پویا در زمان درخواست حل و استفاده می شود برای اطمینان حاصل شود که سرور مدیریت می تواند یک اتصال با محیط مدیریت سرور برقرار کند.
در اینجا لیستی از مقادیر متغیر محیطی پشتیبانی است:
  • {{الفبایی | 8}} - ایجاد یک 8 شخصیت رشته تصادفی الفبایی. این مناسب ترین روش برای ایجاد رمزهای عبور تصادفی است.
  • {{<نام تصویر> | IP}} - اجازه می دهد تا شما را به آدرس IP میزبان از یک ظرف وارد کنید به عنوان یک ارزش برای یک متغیر محیطی. این مناسب ترین روش برای اجازه دادن به لایه میان به برقراری ارتباط با پایگاه داده است.
  • {{<نام تصویر> | container_ip}} - اجازه می دهد تا شما را به نام ظرف یک ظرف به عنوان یک ارزش برای یک متغیر محیطی. این مناسب ترین روش برای اجازه دادن به لایه میان برای ایجاد یک ارتباط امن با پایگاه داده (بدون افشای پورت پایگاه داده) است.
  • {{<نام تصویر> | container_private_ip}} - اجازه می دهد تا شما را به IP داخلی یک ظرف به عنوان یک ارزش برای یک متغیر محیطی. این مناسب ترین روش برای اجازه دادن به لایه میان برای ایجاد یک ارتباط امن با پایگاه داده (بدون افشای پورت پایگاه داده) است.
  • {{<نام تصویر> | پورت _ <پورت شماره>}} - اجازه می دهد تا شما را به شماره پورت از یک ظرف به عنوان یک ارزش برای یک متغیر محیطی. این مناسب ترین روش برای اجازه دادن به لایه میان به برقراری ارتباط با پایگاه داده است. در این مورد، شماره پورت مشخص شده نیاز به شماره پورت داخلی - یعنی پورت های خارجی است که به ظرف اختصاص داده است. به عنوان مثال، {{PostgreSQL و | port_5432}} را به پورت های خارجی واقعی است که اجازه خواهد داد که ردیف میان به برقراری ارتباط با پایگاه داده ترجمه شده است.
  • {{<نام تصویر> | <محیط زیست نام متغیر>}} - اجازه می دهد تا شما را به ارزش یک تصویر متغیر محیطی به محیط متغیر تصویر دیگری است. موارد استفاده در اینجا بی پایان هستند - به عنوان اکثر برنامه های کاربردی چند لایه خواهد وابستگی متقابل تصویر داشته باشد.
تصویر
این ساختمان واقعی تصویر کارگر بارانداز در WebLogic می تواند از طریق DCHQ خودکار است. کاربر می تواند با کلیک بر روی ساخت تصویر و سپس بر روی دکمه + کلیک کنید. کاربر می تواند یک تصویر با استفاده از یک Dockerfile یا عمومی پروژه خصوصی / گیتهاب است که Dockerfile ایجاد کنید.
تصویر ایجاد می کنیم برای استفاده از تصویر در WebLogic رادو Dobrinescu است (radudobrinescu / wls12c: 2.0) ساخته شده بود ( https://hub.docker.com/r/radudobrinescu/wls12c/ ). ما زن و شوهر از تغییرات به تصویر در Dockerfile خود ما ساخته شده و پس از آن تصویر جدید به مخزن خود ما تحت فشار قرار دادند (dchq / در WebLogic: شدن). این ساختمان از تصاویر را می توان با استفاده از یک عبارت cron را برنامه ریزی شده. علاوه بر این، کاربر می تواند در نام تگ به منظور ایجاد نام تگ منحصر به فرد با هر ساخت جدید استفاده از {{زمان}}. به این ترتیب کاربر می تواند به تصاویر قدیمی برای پشتیبان گیری گردند.

تأمین و خودرو پوسته پوسته شدن زیرساخت های اساسی در هر ابر

هنگامی که یک برنامه ذخیره شده است، کاربر می تواند یک ارائه دهنده ابر ثبت نام به طور خودکار به تأمین و خودکار پوسته پوسته شدن از خوشه در 13 ابر نقاط پایانی مختلف از جمله ماکروسافت، اوپناستک، CloudStack، خدمات وب سایت آمازون، Rackspace را، مایکروسافت لاجورد، DigitalOcean، HP عمومی ابر، آی بی ام SoftLayer، موتور محاسبه گوگل، و بسیاری دیگر.
اول، یک کاربر می تواند یک ارائه دهنده ابر برای Rackspace را (به عنوان مثال) با مرور به ثبت نام ابر دهنده و سپس کلیک کردن بر روی + دکمه را انتخاب کنید Rackspace را . نیاز به Rackspace را کلید API ارائه می شود - که می تواند از بخش تنظیمات حساب از کنترل پنل Rackspace ابر بازیابی.

کاربر پس از آن می توانید یک خوشه با یک سیاست مقیاس خودکار به طور خودکار چرخش تا سرور جدید ابر ایجاد کنید. این را می توان با مرور به انجام خوشه صفحه و سپس کلیک بر روی + را فشار دهید. شما می توانید یک سیاست مبتنی بر قرار دادن ظرفیت انتخاب کنید و سپس بافت به عنوان لایه شبکه به منظور تسهیل امن، با کلمه عبور محافظت ارتباطات میان ظرف در سراسر میزبان های مختلف در یک خوشه.
یک کاربر می تواند در حال حاضر ارائه تعدادی از ابر سرور در خوشه به تازگی ایجاد شده را با مرور به ماشین آلات و پس از آن با کلیک بر روی + دکمه را انتخاب کنید Rackspace را . هنگامی که ارائه دهنده ابر انتخاب شده است، کاربر می تواند منطقه، اندازه و تصویر مورد نیاز را انتخاب کنید. خوشه ای است پس از آن انتخاب شده و تعداد از ابر سرور می تواند مشخص شود.

استقرار در WebLogic خوشه به سرور Rackspace ابر

هنگامی که سرور ابر مشروط شده است، یک کاربر می تواند یک چند لایه، برنامه های کاربردی بر اساس کارگر بارانداز-جاوا بر روی سرور جدید ابر استقرار. این را می توان با مرور به کتابخانه سلف سرویس و سپس کلیک کردن بر روی سفارشی به درخواست یک برنامه چند لایه انجام می شود.
کاربر می تواند یک برچسب محیط زیست (مانند DEV یا QE) و خوشه Rackspace را قبل از کلیک کردن بر روی Run ایجاد را انتخاب کنید.
هنگامی که خوشه در WebLogic فراهم گردند، یک کاربر می تواند مدیریت سرور کنسول دسترسی به مطمئن شوید که سرور مدیریت کشف و در حال اجرا. آدرس اینترنتی خواهد بود به http: // <admin_server_host_ip>: 7001 / کنسول . اعتبار پیش فرض خواهد بود در WebLogic / welcome1.

تصویر

استقرار سبد خرید جاوا WAR فایل با استفاده از چارچوب پلاگین در

هنگامی که خوشه در WebLogic است و در حال اجرا، کاربر می تواند یک اسکریپت bash پلاگین در به استقرار یک جاوا WAR پرونده روی یکی از سرورها را اجرا کند. در این مورد، ما به سادگی یک پلاگین در برای استقرار نرم افزار سبد خرید در محیط مدیریت سرور استناد شده است. از عملیات منو، یک کاربر می تواند انتخاب پلاگین و پس از آن ظرف (بازدید کنندگان) که در آن پلاگین در اجرا خواهد شد را انتخاب کنید. کاربر پس از آن می توانید برای پلاگین در جستجو و نادیده گرفتن استدلال قرار گرفته است.

تصویر
در این پلاگین در ساده، ما در حال گرفتن سه فایل ها از یک راه دور، سرور قابل دسترس به منظور استقرار نرم افزار.
  • deploy.py
  • deploy_app.sh
  • shoppingcart.war
در اینجا فایل های واقعی استفاده می شود:
deploy.py
---------------------
تصویر
deploy_app.sh
---------------------
تصویر

دسترسی به در مرورگر در ترمینال در حال اجرا ظروف

آیکون خط فرمان باید در کنار نام ظروف 'در صفحه نرم افزار زنده در دسترس باشد. این اجازه می دهد تا کاربران برای ورود به ظرف با استفاده از یک پروتکل ارتباطی امن از طریق صف پیام عامل. یک لیست سفید از دستورات را می توان با مستأجر محیط مدیریت تعریف شده اطمینان حاصل شود که کاربران به هیچ تغییرات مضر در ظروف در حال اجرا را ندارد.
در این مورد، ما با استفاده از خط فرمان برای مطمئن شوید که فایل deploy.py در واقع به محیط مدیریت سرور دریافت شد. با انجام یک /oracle/fmwhome/wlst_custom/deploy.py گربه ساده - ما قادر به بررسی کنید که فایل در واقع در که ظرف وجود دارد بود.
تصویر
پس از آن ما دیده مدیریت سرور کنسول و جهت یابی به استقرار به مطمئن شوید که نرم افزار سبد خرید واقع مستقر شد.
تصویر
در نهایت، ما دیده کاربرد واقعی در آدرس http: // <admin_server_host_ip>: 7001 / shop قرار
تصویر

نظارت بر پردازنده، حافظه و I / O استفاده از RunningContainers

هنگامی که برنامه و در حال اجرا، توسعه دهندگان ما نظارت بر CPU، حافظه، و I / O از ظروف در حال اجرا برای دریافت هشدار زمانی که این معیارهای تجاوز یک آستانه از پیش تعریف شده. این امر به ویژه زمانی مفید است که توسعه دهندگان ما در حال انجام تست عملکرد و بار.
کاربر می تواند تجزیه و تحلیل نظارت تاریخی انجام و ارتباط مسائل به روز رسانی ظرف و یا ساخت استقرار. این را می توان با کلیک کردن بر روی انجام عملیات منو از برنامه های در حال اجرا و سپس بر روی مانیتورینگ . یک محدوده تاریخ سفارشی را می توان به مشاهده پردازنده، حافظه و I / O در طول تاریخ انتخاب شده است.
تصویر

فعال کردن گردش کار تحویل مداوم با جنکینز برای به روز رسانی جنگ فایل از نرم افزار در حال اجرا هنگامی A ساخت باعث شده است

برای توسعه دهندگان که مایل به دنبال مدل "تغییر ناپذیر" ظروف با بازسازی تصاویر کارگر بارانداز حاوی کد برنامه و چرخش تا ظروف جدید با هر به روز رسانی نرم افزار، DCHQ فراهم می کند ویژگی ساخت خودکار که اجازه می دهد توسعه دهندگان به طور خودکار تصاویر کارگر بارانداز از Dockerfiles و یا پروژه های گیتهاب خصوصی حاوی ایجاد Dockerfiles.
با این حال، بسیاری از توسعه دهندگان ممکن است مایل به روز رسانی نرم افزار در حال اجرا ظروف سرور با آخرین جاوا فایل WAR به جای. برای که، DCHQ اجازه می دهد تا توسعه دهندگان را قادر می سازد یک گردش کار تحویل مداوم با جنکینز. این را می توان با کلیک کردن بر روی انجام عملیات منو از برنامه های در حال اجرا و سپس انتخاب تحویل مداوم . کاربر می تواند یک نمونه جنکینز که در حال حاضر با DCHQ ثبت شده است را انتخاب کنید، کار واقعی در جنکینز که آخرین فایل WAR تولید خواهد کرد، و سپس یک اسکریپت bash پلاگین برای گرفتن این ساخت و گسترش آن در سرور برنامه در حال اجرا. هنگامی که این سیاست ذخیره شده است، DCHQ آخرین فایل جنگ از جنکینز هر زمان ساخت باعث شده است گرفتن و استقرار آن بر روی سرور برنامه در حال اجرا.
توجه داشته باشید که اسکریپت bash پلاگین در می تواند سفارشی برای اطمینان حاصل شود که دنباله سمت راست از مراحل برای سرور WebLogic گرفته شده است. به عنوان مثال، یک کاربر ممکن است مایل به استفاده از یک طرح خاص و یا استقرار اجرای برخی از اسکریپت ها قبل از سازمان ملل متحد استقرار و سپس استقرار فایل جنگ جدید است.
توسعه دهندگان، به عنوان یک نتیجه همیشه آخرین فایل جاوا جنگ مستقر در ظروف در حال اجرا در محیط / آزمون DEV دارند.
تصویر

نتیجه گیری

Containerizing شرکت برنامه های کاربردی جاوا هنوز هم یک چالش عمدتا به دلیل موجود چارچوب ترکیب نرم افزار انجام وابستگی پیچیده، یکپارچگی خارجی و یا خودکار پوسته پوسته شدن گردش پس از ارائه آدرس نیست. علاوه بر این، طراحی زودگذر ظروف بدان معنی است که توسعه دهندگان به حال به چرخش تا ظروف جدید و دوباره ایجاد وابستگی پیچیده و یکپارچگی خارجی با هر به روز رسانی نسخه.
DCHQ، موجود در نسخه های میزبانی و بر فرض، به تمام این چالش ها و ساده کانتینری از برنامه های شرکت جاوا از طریق یک برنامه چارچوب ترکیب پیش که تسهیل محیط cross-تصویر اتصالات متغیر های درب اسکریپت bash پلاگین است که می توان در استناد درخواست زمان و یا پس از ارائه، و خوشه بندی نرم افزار برای در دسترس بودن بالا در سراسر میزبان های مختلف و یا مناطق با پشتیبانی از پوسته پوسته شدن خودکار.

برای ثبت نام رایگان در http://DCHQ.io و یا دانلود DCHQ بر روی Pemise
برای دسترسی به خارج از جعبه قالب های چند لایه نرم افزار جاوا همراه با نرم افزار قابلیت مدیریت چرخه عمر مانند نظارت، به روز رسانی ظرف، مقیاس در / و مستمر تحویل.





No comments:

Post a Comment