Academy and Foundation unixmens | Your skills, Your future
2.28K subscribers
6.66K photos
1.37K videos
1.23K files
6.02K links
@unixmens_support
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
گزارش Linux Fundation از شغل های OpenSourse در سال 2017
به گزارش بنیاد لینوکس، که با همکاری Dice تهیه شده است، آماری که از حدود ۲۰۰۰ حرفه ای در زمینه های مختلف شغلی گرفته شده به شرح زیر است:

۱) ۸۹٪ از مدیران مشاغل گفته اند که پیدا کردن حرفه ای ها سخت است.
۲) ۴۷٪ از شرکت ها حاضرند برای افرادی که professional certification دارند هزینه بیشتری کنند و یا برای کارمندان خود هزینه کنند که Open Source Certified شوند.

موقعیت هایی که آن ها به دنبال آن هستند:
۱) 73% Developer
2) 60% DevOps
3) 53% SysAdmins
متخصصانی که آنها به دنبالشان می گردند:
۱) 70% Cloud
2) 67% Web Technologies
3) 65% Linux
#jobs #linux
#کانتیر چیست؟

به زبان ساده استفاده از کانتینر یعنی مجازی سازی سیستم عامل، وقتی در مورد واژه مجازی سازی صحبت می‌شود چیزی که در ذهن اکثر مردم تداعی می‌شود مجازی سازی سرور می باشد ولی واقعیت این است که در سال‌های اخیر گونه‌های دیگری از مجازی سازی نظیر مجازی سازی استوریج، مجازی سازی شبکه و حتی مجازی سازی سیستم عامل مطرح شده و هر یک در شاخه‌های خود رشد چشمگیری داشته اند.
#virtualization
اگر چه مجازی سازی سرورها مزیت های قابل توجهی دارد ولی باز هم هدر رفت منابع در آن مشاهده می‌شود به این صورت که شما برای هر ماشین مجازی باید سیستم عامل متفاوتی در نظر بگیرید یعنی به ازای هر ماشین مجازی یک سیستم عامل همین رابطه یک به یک بین ماشین های مجازی و سیستم عامل حجم قابل توجهی از منابع سرور را هدر می دهد.


همانطور که قبلا اشاره شد استفاده از کانتینر یعنی مجازی سازی سیستم عامل، معماری کانتینرها شباهت زیادی به معماری مجازی سازی سرور دارد ولی با این تفاوت که سیستم‌عامل که به ازای هر سرویس در ماشین مجازی نصب می‌شد از بین رفته است. بدین شکل که شما بر روی یک سرور فیزیکی و یا حتی مجازی یک سیستم عامل به عنوان سیستم عامل پایه نصب می کنید. این سیستم عامل می توانند لینوکس، ویندوز سرور ۲۰۱۶ و یا حتی ویندوز ۱۰ باشد. بعد از نصب سیستم عامل یک سیستم مدیریت کانتیر نظیر Docker و یا rkt و … را بر روی سیستم‌عامل پایه نصب می کنید سپس با استفاده از سیستم مدیریت کانتیر اقدام به ایجاد کانتیر می‌کنید. کانتیر ایجاد شده شبیه ماشین‌های مجازی هستند با این تفاوت که کانتیرها سیستم‌عامل ندارد و از سیستم‌عامل پایه به صورت اشتراکی استفاده می‌کنند.
#virtualization @unixmens
همانطور که درتصاویر بالا مشخص کانتینرها همانند ماشین های مجازی دارای Isolation هستند ولی چون کانتینرها سیستم عامل را مجازی می‌کنند از ماشین های مجازی، قابل حمل و کارآمدتر هستند.


کانتیرها یک لایه انتزاعی در سطح اپلیکیشن هستند که اپلیکیشن و پیش نیازهای آن ها را به صورت واحد بسته بندی می کنند شما می توانید همانند ماشین های مجازی چندین کانتینر را بر روی یک سرور اجرا کرده و از هسته سیستم عامل سرور به صورت اشتراکی استفاده کنید. کانتیرها در سطح User Space اجرا می‌شوند بنابراین نمی‌توانید هسته را تحت تأثیر قرار داده و یا در وظایف سایر کانتیر های اختلال ایجاد کنید.


#virtualization #container @unixmens
با مطرح شدن کانتینرهای شرکت های زیادی برای گرفتن سهمی از بازار آن محصولاتی متفاوتی را ارائه کرده اند. مهمترین بخش در معماری کانتینرها سیستم مدیریت کانتینر می باشد. در این بخش نرم افزار های متفاوتی ارائه شده است که می‌توان به Docker، rkt و ... اشاره کرد با توجه به رشد قابل توجه داکر در مقابل سایر سیستم ها ما در این سری از مقالات داکر را به عنوان سیستم مدیریت کانتینر بررسی خواهیم کرد.


با ارائه معماری های جدید همواره مفاهیم جدید در رابطه با آن ظهور می‌کنند ما در این بخش مفاهیم پایه ای داکر را بررسی خواهیم کرد توجه داشته باشید که این مفاهیم در سایر سیستم های مدیریتی کانتیر نیز تا حدود زیادی صدق می کند.



Docker Host یا Host
هاستی که داکر بر روی آن نصب می شود را هاست داکر می گویند. این هاست می تواند یک سرور فیزیکی، سرور مجازی، کامپیوتر شخصی، یک ماشین مجازی در EC2 یا Azure و... باشد.

Docker Engine
با نصب داکر Engine که هسته اصلی داکر می باشد مدیریت کانتیر ها و موارد وابسته به آن بر روی هاست فراهم می شود.

Docker CLI
یک رابطه خط فرمان می باشد که با استفاده از آن می توان به Docker Engine متصل شد و به مدیریت کانتینرها و موارد وابسته به آن پرداخت.

Image
Imageها همان الگوها هستند زمانی که شما بخواهید بر روی یک هاست داکر یک کانتیر ایجاد کنید باید آن را از یک Image ایجاد کنید. در مقایسه با زیرساخت مجازی Imageها همانند Templateها هستند هزاران Image هم اکنون در مخازن آنلاین برای سیستم عامل ها و اپلیکیشن های متفاوت وجود دارند.

Container
کانتیر در واقع یک واحد اجرایی می‌باشد که از روی Image ساخته می‌شود در مقایسه با زیرساخت های مجازی کانتیر همانند ماشین مجازی می باشد. می توان بر روی یک هاست داکر چندین کانتیر ایجاد کرد. عملیاتی همچون Stop ،Start و Restart را می توان بر روی کانتیرها اجرا کرد.

Registry
Registry محلی برای نگهداری Imageها می‌باشد. معروفترین Registry تا به امروز Docker Hub می باشد که هزاران Image بر روی آن قرار دارد. این Registry متعلق به شرکت داکر می باشد شما می توانید با ابزارهای فراهم شده توسط داکر یک Registry در Docker Hub ایجاد کنید و ایمیچ های خود را به صورت عمومی یا خصوصی در آن قرار دهید همچنین امکان ایجاد رجیستری محلی نیز وجود دارد.


#virtualization #container @unixmens
نرم افزار Docker به دو صورت (Community Edition(CE و (Enterprise Edition(EE ارائه می‌شود. نسخه‌ی CE به صورت مجانی بوده و نسخه EE پولی می باشد در جدول زیر تفاوت های این دو نسخه را مشاهده کنید.
شرکت داکر برای ارائه به روز رسانی های Docker از دو کانال Stable و Edge استفاده می‌کند کانال Edge به روز رسانی ها را به صورت ماهانه ارائه می دهد و فقط برای نسخه CE در دسترس می‌باشد. کانال Stable به روز رسانی ها را به صورت فصلی ارائه می‌دهد و برای دو نسخه CE و EE در دسترس می‌باشد به جدول زیر توجه کنید.
Docker
بر روی سیستم عامل های متفاوت قابل نصب و اجرا می باشد. جدول زیر نسخه های ارائه شده برای سیستم عامل های متفاوت را نمایش می دهد.
شما می توانید داکر را بر روی یک کامپیوتر شخصی، یک سرور فیزیکی و یا یک ماشین مجازی نصب کنید برای نصب داکر پیش نیاز خاصی مورد نیاز نمی باشد. ما در این قسمت یک ماشین مجازی با CentOS 7 را برای نصب داکر انتخاب کردیم و ازدو روش آفلاین و آنلاین برای نصب داکر بهره خواهیم گرفت. توجه داشته باشید که ما در این مقاله نسخه CE را نصب خواهیم کرد.

روش آنلاین (استفاده از مخازن نرم افزاری)

در این روش ما با استفاده از مخزن نرم افزاری داکر اقدام به نصب آن خواهیم کرد. توجه داشته باشید که در این روش سیستم حتما باید به اینترنت دسترسی داشته باشد. برای شروع کار با استفاده از دستور زیر مخزن نرم افزاری داکر را به سیستم اضافه کنید:


wget https://download.docker.com/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
همانطور که در قسمت قبلی به آن اشاره شد، داکر بسته‌های بروزرسانی را از طریق دو کانال Stable و Edge دریافت می کنند به صورت پیش فرض کانال Stable در فایل Repo داکر فعال می باشد. برای فعال کردن کانال Edge می توانید فایل Repo را با دستور زیر ویرایش کرده و کانال Edge را فعال کنید.



vi /etc/yum.repos.d/docker-ce.repo
پس از اضافه کردن مخزن نرم افزاری داکر به سیستم برای نصب آن دستور زیر را اجرا کنید:



yum install docker-ce