✔️ چهار راه مفید برای دانستن نام دستگاه USBمتصل به سیستم لینوکسی
به عنوان یک کاربر لینوکسی، یکی از مواردی که شما باید در آن تخصص داشته باشید، شناسایی دستگاه های متصل به سیستم است.😉
این دستگاه ممکن است یک هارد دیسک خارجی و یا ابزاری مانند USB درایوها و یا کارت های حافظه SDباشد.
امروزه، استفاده از USB درایوها برای انتقال فایل بسیار معمول است و برای کاربرانی که از خط فرمان لینوکس استفاده می کنند و نیاز به فرمت دستگاه USB دارند، دانستن نام صحیح دستگاه برای جلوگیری از خطاهای بحرانی بسیار مهم است.
هنگامی که شما یک دستگاه USB را به سیستم خود متصل می کنید، به ویژه در یک نسخه Desktop، آن دستگاه به طور خودکار به یک دایرکتوری منسوب می شود.
این دایرکتوری به طور معمول/media/username/device-label است و شما می توانید از طریق این دایرکتوری به فایل های مربوطه دسترسی پیدا کنید.
با این حال، این در مورد یک سرور که گاهی در آن شما باید به صورت دستی دستگاه را در یک دایرکتوری خاص mount کنید، متفاوت خواهد بود.
برای یافتن نام صحیح دستگاه متصل به سیستم خود می توانید از چهار دستور زیر استفاده نمایید:
🔸$ df -h
🔸$ lsblk
🔸$ sudo fdisk -l
🔸$ dmesg
🎯 در اینصورت می توانید از بروز خطاهای جبران ناپذیر جلوگیری کنید.
به عنوان یک کاربر لینوکسی، یکی از مواردی که شما باید در آن تخصص داشته باشید، شناسایی دستگاه های متصل به سیستم است.😉
این دستگاه ممکن است یک هارد دیسک خارجی و یا ابزاری مانند USB درایوها و یا کارت های حافظه SDباشد.
امروزه، استفاده از USB درایوها برای انتقال فایل بسیار معمول است و برای کاربرانی که از خط فرمان لینوکس استفاده می کنند و نیاز به فرمت دستگاه USB دارند، دانستن نام صحیح دستگاه برای جلوگیری از خطاهای بحرانی بسیار مهم است.
هنگامی که شما یک دستگاه USB را به سیستم خود متصل می کنید، به ویژه در یک نسخه Desktop، آن دستگاه به طور خودکار به یک دایرکتوری منسوب می شود.
این دایرکتوری به طور معمول/media/username/device-label است و شما می توانید از طریق این دایرکتوری به فایل های مربوطه دسترسی پیدا کنید.
با این حال، این در مورد یک سرور که گاهی در آن شما باید به صورت دستی دستگاه را در یک دایرکتوری خاص mount کنید، متفاوت خواهد بود.
برای یافتن نام صحیح دستگاه متصل به سیستم خود می توانید از چهار دستور زیر استفاده نمایید:
🔸$ df -h
🔸$ lsblk
🔸$ sudo fdisk -l
🔸$ dmesg
🎯 در اینصورت می توانید از بروز خطاهای جبران ناپذیر جلوگیری کنید.
آموزش ساخت سواپ فایل در لینوکس
اول این دستور بزنید
sudo fallocate -l 1G /swapfile
اگه فایل سیتسمتون از نوع F2FS یا XFS هست
از این دستور استفاده کنید در غیر این صورت برید مرحله بعد
sudo dd if=/dev/zero of=/swapfile bs=1M count=1024
بعد پرمیشن سواپ فایل عوض کنید
sudo chmod 600 /swapfile
و سواپ فایل را فرمت کنید
sudo mkswap /swapfile
حالا سواپ فعال کنید
sudo swap /swapfile
swapon - -show
بعد fstab باز کنید
sudo nano /etc/fstab
این خط را به خط اخر fstab اضافه کنید
/swapfile none swap defaults 0 0
در اخر ctrl + o برای سیو و ctrl + x برای خارج شدن
و بعد سیستم ریبوت کنید.
اول این دستور بزنید
sudo fallocate -l 1G /swapfile
اگه فایل سیتسمتون از نوع F2FS یا XFS هست
از این دستور استفاده کنید در غیر این صورت برید مرحله بعد
sudo dd if=/dev/zero of=/swapfile bs=1M count=1024
بعد پرمیشن سواپ فایل عوض کنید
sudo chmod 600 /swapfile
و سواپ فایل را فرمت کنید
sudo mkswap /swapfile
حالا سواپ فعال کنید
sudo swap /swapfile
swapon - -show
بعد fstab باز کنید
sudo nano /etc/fstab
این خط را به خط اخر fstab اضافه کنید
/swapfile none swap defaults 0 0
در اخر ctrl + o برای سیو و ctrl + x برای خارج شدن
و بعد سیستم ریبوت کنید.
🔐 چگونه فایل های ایجاد شده توسط ویرایشگر VIM را با پسورد حفاظت کنید؟
ویرایشگرvim ، یک ویرایشگر محبوب و بسیار توسعه پذیر است و از ویژگی های غنی ویرایشگر متن در لینوکس برخوردار است.
یکی از ویژگی های خاص آن پشتیبانی برای رمزنگاری فایل های متنی با استفاده از روش های مختلف رمزنگاری با یک رمز عبور است.
در این ویرایشگر به راحتی و با استفاده از آپشن x- هنگام ایجاد فایل می توانید بر روی فایل پسورد تنظیم نمایید.
$ vim -x file.txt
Warning: Using a weak encryption method; see :help 'cm'
Enter encryption key: *
Enter same key again: *
از ویژگی های ساده اما قدرتمند لینوکس استفاده نمایید و از امنیت آن لذت ببرید.
ویرایشگرvim ، یک ویرایشگر محبوب و بسیار توسعه پذیر است و از ویژگی های غنی ویرایشگر متن در لینوکس برخوردار است.
یکی از ویژگی های خاص آن پشتیبانی برای رمزنگاری فایل های متنی با استفاده از روش های مختلف رمزنگاری با یک رمز عبور است.
در این ویرایشگر به راحتی و با استفاده از آپشن x- هنگام ایجاد فایل می توانید بر روی فایل پسورد تنظیم نمایید.
$ vim -x file.txt
Warning: Using a weak encryption method; see :help 'cm'
Enter encryption key: *
Enter same key again: *
از ویژگی های ساده اما قدرتمند لینوکس استفاده نمایید و از امنیت آن لذت ببرید.
Devops With Openshift is published by O'Reilly Media in August 2017. This book has 152 pages in English, ISBN-13 978-1491975961.
For many organizations, a big part of DevOps’ appeal is software automation using infrastructure-as-code techniques. This book presents developers, architects, and infra-ops engineers with a more practical option. You’ll learn how a container-centric approach from OpenShift, Red Hat’s cloud-based PaaS, can help your team deliver quality software through a self-service view of IT infrastructure.
Three OpenShift experts at Red Hat explain how to configure Docker application containers and the Kubernetes cluster manager with OpenShift’s developer- and operational-centric tools. Discover how this infrastructure-agnostic container management platform can help companies navigate the murky area where infrastructure-as-code ends and application automation begins.
Get an application-centric view of automation—and understand why it’s important
Learn patterns and practical examples for managing continuous deployments such as rolling, A/B, blue-green, and canary
Implement continuous integration pipelines with OpenShift’s Jenkins capability
Explore mechanisms for separating and managing configuration from static runtime software
Learn how to use and customize OpenShift’s source-to-image capability
Delve into management and operational considerations when working with OpenShift-based application workloads
Install a self-contained local version of the OpenShift environment on your computer @iranopensource 🐧
For many organizations, a big part of DevOps’ appeal is software automation using infrastructure-as-code techniques. This book presents developers, architects, and infra-ops engineers with a more practical option. You’ll learn how a container-centric approach from OpenShift, Red Hat’s cloud-based PaaS, can help your team deliver quality software through a self-service view of IT infrastructure.
Three OpenShift experts at Red Hat explain how to configure Docker application containers and the Kubernetes cluster manager with OpenShift’s developer- and operational-centric tools. Discover how this infrastructure-agnostic container management platform can help companies navigate the murky area where infrastructure-as-code ends and application automation begins.
Get an application-centric view of automation—and understand why it’s important
Learn patterns and practical examples for managing continuous deployments such as rolling, A/B, blue-green, and canary
Implement continuous integration pipelines with OpenShift’s Jenkins capability
Explore mechanisms for separating and managing configuration from static runtime software
Learn how to use and customize OpenShift’s source-to-image capability
Delve into management and operational considerations when working with OpenShift-based application workloads
Install a self-contained local version of the OpenShift environment on your computer @iranopensource 🐧
🎯 فرصت شغلی:
شرکت آتیه داده پرداز اپراتور پیامکی واقع در تهران در نظر دارد نیروی پشتیبان فنی با مشخصات زیر استخدام نماید.
🔻شرایط عمومی:
1-ترجیحا آقا
2-حداکثر سن 30
3-متعهد و مسئولیت پذیر
4-توانایی کار به صورت شیفتی
5-دارای مدرک لیسانس به بالا
🔻شرایط اختصاصی :
1-مسلط به سیستم عامل لینوکس (ترجیحا دارای مدارک مرتبط Linux lpic1,2)
پیاده سازی و نصب انواع سرویس های لینوکس بیس
2-توانایی کار با دیتابیس Mysql,posgresql
3-آشنا به اسکریپت نویسی
4-آشنایی با سیستم تیکتینگ
5-آشنایی با سیستم های مانیتورینگ
لذا در صورت دارا بودن شرایط ذکر شده رزومه خود را به آدرس زیر ارسال فرمایید.
[email protected]
شرکت آتیه داده پرداز اپراتور پیامکی واقع در تهران در نظر دارد نیروی پشتیبان فنی با مشخصات زیر استخدام نماید.
🔻شرایط عمومی:
1-ترجیحا آقا
2-حداکثر سن 30
3-متعهد و مسئولیت پذیر
4-توانایی کار به صورت شیفتی
5-دارای مدرک لیسانس به بالا
🔻شرایط اختصاصی :
1-مسلط به سیستم عامل لینوکس (ترجیحا دارای مدارک مرتبط Linux lpic1,2)
پیاده سازی و نصب انواع سرویس های لینوکس بیس
2-توانایی کار با دیتابیس Mysql,posgresql
3-آشنا به اسکریپت نویسی
4-آشنایی با سیستم تیکتینگ
5-آشنایی با سیستم های مانیتورینگ
لذا در صورت دارا بودن شرایط ذکر شده رزومه خود را به آدرس زیر ارسال فرمایید.
[email protected]
✨نرم افزار SQL Operation Studio جهت انجام عملیات های DevOps برای لینوکس توسط شرکت مایکروسافت ارایه گردید.
این نرم افزار جهت جایگزینی نرم افزار Management Studio ارایه شده که با استفاده از این نرم افزار قادر به مدیریت SQL Server, Azure SQL Database and SQL Data Warehose خواهید بود.
# cd ~
# cp ~/Downloads/sqlops-linux-<version string>.tar.gz ~
# tar -xvf ~/sqlops-linux-<version string>.tar.gz
# echo 'export PATH="$PATH:~/sqlops-linux-x64"' » ~/.bashrc
# source ~/.bashrc
# sqlops
این نرم افزار جهت جایگزینی نرم افزار Management Studio ارایه شده که با استفاده از این نرم افزار قادر به مدیریت SQL Server, Azure SQL Database and SQL Data Warehose خواهید بود.
# cd ~
# cp ~/Downloads/sqlops-linux-<version string>.tar.gz ~
# tar -xvf ~/sqlops-linux-<version string>.tar.gz
# echo 'export PATH="$PATH:~/sqlops-linux-x64"' » ~/.bashrc
# source ~/.bashrc
# sqlops
📝آگهی استخدام
استخدام ۴عنوان شغلی
⚙️فن آوران آتیه صنعت و معدن استخدام می کند.
🔘کارشناس مجازی سازی
◽️مسلط به مجازی سازی VMWare vSphere
🔘کارشناس شبکه
◽️متخصص شبکه دارای مدرك CCNP
◽️متخصص سرویس های مایکروسافت MCSE
◽️مسلط به مجازی سازی VMware vSphere
◽️سابقه کاری مرتبط
🔘کارشناس امنیت شبکه
◽️تسلط بر مفاهیم امنیت شبکه و نرم افزار
◽️تسلط بر روش ها و ابزارهای تست نفوذ
◽️تسلط بر تکنیک های مقابله با نفوذ در سیستم ها
◽️مسلط به محصولات حوزه امنیت – آنتی ویروس، فایروال، UTM
◽️توانایی حل مسئله و تصمیم گیری
◽️سابقه کاری مرتبط
◽️محل کار تهران
◽️نوع همکاری تمام وقت – شنبه تا چهارشنبه 8 الی 17
◽️سن: 24 الی 35 سال
◽️اتمام خدمت سربازی یا معافیت از آن برای آقایان اجباری نیست
◽️بیمه تامین اجتماعی
◽️حقوق و مزایای متناسب با سطح تخصص
◽️اجرای پروژه های بزرگ
◽️محیط کاری حرفهای، شاداب و صمیمی
◽️مسیر شغلی مشخص و بلندمدت
📮اطلاعات تماس
ارسال رزومه به آدرس ایمیل: [email protected]
⚙️شرکت مشاورین پرنگ رایانه ، تولیدکننده نرم افزارهای مدیریت کلینیکهای تصویربرداری و نرمافزارهای مالی و پرسنلی – جهت توسعه منابع انسانی خود دعوت به همکاری می نماید.
🔘برنامه نویس
◽️مسلط به VB6
◽️آشنا به SQL
◽️آشنا به نرمافزارهای Report Generator
◽️محدوده کاری مطهری می باشد.
◽️روزهای کاری: شنبه تا چهارشنبه از ساعت 10:00 الی 17:00 پنجشنبه ها تعطیل می باشد.
◽️استخدام به صورت پاره وقت
📮ارسال رزومه به آدرس: [email protected]
حتما در موضوع رزومه (Subject) عبارت VB6 نوشته شود.
استخدام ۴عنوان شغلی
⚙️فن آوران آتیه صنعت و معدن استخدام می کند.
🔘کارشناس مجازی سازی
◽️مسلط به مجازی سازی VMWare vSphere
🔘کارشناس شبکه
◽️متخصص شبکه دارای مدرك CCNP
◽️متخصص سرویس های مایکروسافت MCSE
◽️مسلط به مجازی سازی VMware vSphere
◽️سابقه کاری مرتبط
🔘کارشناس امنیت شبکه
◽️تسلط بر مفاهیم امنیت شبکه و نرم افزار
◽️تسلط بر روش ها و ابزارهای تست نفوذ
◽️تسلط بر تکنیک های مقابله با نفوذ در سیستم ها
◽️مسلط به محصولات حوزه امنیت – آنتی ویروس، فایروال، UTM
◽️توانایی حل مسئله و تصمیم گیری
◽️سابقه کاری مرتبط
◽️محل کار تهران
◽️نوع همکاری تمام وقت – شنبه تا چهارشنبه 8 الی 17
◽️سن: 24 الی 35 سال
◽️اتمام خدمت سربازی یا معافیت از آن برای آقایان اجباری نیست
◽️بیمه تامین اجتماعی
◽️حقوق و مزایای متناسب با سطح تخصص
◽️اجرای پروژه های بزرگ
◽️محیط کاری حرفهای، شاداب و صمیمی
◽️مسیر شغلی مشخص و بلندمدت
📮اطلاعات تماس
ارسال رزومه به آدرس ایمیل: [email protected]
⚙️شرکت مشاورین پرنگ رایانه ، تولیدکننده نرم افزارهای مدیریت کلینیکهای تصویربرداری و نرمافزارهای مالی و پرسنلی – جهت توسعه منابع انسانی خود دعوت به همکاری می نماید.
🔘برنامه نویس
◽️مسلط به VB6
◽️آشنا به SQL
◽️آشنا به نرمافزارهای Report Generator
◽️محدوده کاری مطهری می باشد.
◽️روزهای کاری: شنبه تا چهارشنبه از ساعت 10:00 الی 17:00 پنجشنبه ها تعطیل می باشد.
◽️استخدام به صورت پاره وقت
📮ارسال رزومه به آدرس: [email protected]
حتما در موضوع رزومه (Subject) عبارت VB6 نوشته شود.
لیست زبان ها و پایگاه های داده ای که OpenShift می تواند برای شما به عنوان PaaS پشتیبانی کند. @iranopensource 🐧
دعوت به همکاری لینوکس ادمین ـ شرکت پیشرو فنآوری هماپی
شرکت پیشرو فن آوری هماپی در نظر دارد جهت تقویت توان تخصصی خود در حوزه تولید اپلیکیشن های پرداخت، با عنوان شغلی زیر از نیروهای متخصص دعوت به همکاری نماید:
لینوکس ادمین:
Linux Admin
We are looking for a Linux administrator who will be responsible for designing, implementing, and monitoring the infrastructure; also, to collaborate with other team members to develop automation strategies and deployment processes. You will become an integral part of the team, making every problem of the platform a problem of your own, and solving them accordingly.
Responsibilities
Help tune performance and ensure high availability of infrastructure
Design and develop infrastructure monitoring and reporting tools
Develop and maintain configuration management solutions
Develop test automation frameworks in collaboration with rest of the team
Create tools to help teams make the most out of the available infrastructure
Skills
Experience with Linux servers in virtualized environments
Familiarity with the fundamentals of Linux scripting languages
Experience installing, configuring, and maintaining services such as Bind, Apache, MySQL, nginx, etc.
Strong grasp on configuration management tools, such as Puppet and Chef Familiarity with load balancing, firewalls, etc.
Proficient with network tools such as iptables, Linux IPVS, HAProxy, nginx etc.
Experience with virtualization technologies, such as Xen
Ability to build and monitor services on production servers
Knowledge of servers and switches
Knowledge of monitoring tools such as Zabbix
معرفی شرکت
«هماپی» یک شرکت نوبنیاد ناب (Lean Startup) است که پس از چندین سال فعالیت در حوزه خدمات الکترونیک، یک روش نوین پرداختی به نام « همپی» را به بازار ارایه داده است.
این شرکت متشکل از تیمی با تجربه است که سالها در زمینه خدمات الکترونیک در حوزه بین الملل است فعالیت داشتهاند و امروز تحت حمایت شرکت سراوا پارس، فصل جدیدی از تجربه پرداخت الکترونیک را پیش روی کاربر ایرانی قرار دادهاند.
علاقهمکندان میتوانند رزومه خود را به ادرس ایمیل [email protected] ارسال کنند.
#jobs #linux
شرکت پیشرو فن آوری هماپی در نظر دارد جهت تقویت توان تخصصی خود در حوزه تولید اپلیکیشن های پرداخت، با عنوان شغلی زیر از نیروهای متخصص دعوت به همکاری نماید:
لینوکس ادمین:
Linux Admin
We are looking for a Linux administrator who will be responsible for designing, implementing, and monitoring the infrastructure; also, to collaborate with other team members to develop automation strategies and deployment processes. You will become an integral part of the team, making every problem of the platform a problem of your own, and solving them accordingly.
Responsibilities
Help tune performance and ensure high availability of infrastructure
Design and develop infrastructure monitoring and reporting tools
Develop and maintain configuration management solutions
Develop test automation frameworks in collaboration with rest of the team
Create tools to help teams make the most out of the available infrastructure
Skills
Experience with Linux servers in virtualized environments
Familiarity with the fundamentals of Linux scripting languages
Experience installing, configuring, and maintaining services such as Bind, Apache, MySQL, nginx, etc.
Strong grasp on configuration management tools, such as Puppet and Chef Familiarity with load balancing, firewalls, etc.
Proficient with network tools such as iptables, Linux IPVS, HAProxy, nginx etc.
Experience with virtualization technologies, such as Xen
Ability to build and monitor services on production servers
Knowledge of servers and switches
Knowledge of monitoring tools such as Zabbix
معرفی شرکت
«هماپی» یک شرکت نوبنیاد ناب (Lean Startup) است که پس از چندین سال فعالیت در حوزه خدمات الکترونیک، یک روش نوین پرداختی به نام « همپی» را به بازار ارایه داده است.
این شرکت متشکل از تیمی با تجربه است که سالها در زمینه خدمات الکترونیک در حوزه بین الملل است فعالیت داشتهاند و امروز تحت حمایت شرکت سراوا پارس، فصل جدیدی از تجربه پرداخت الکترونیک را پیش روی کاربر ایرانی قرار دادهاند.
علاقهمکندان میتوانند رزومه خود را به ادرس ایمیل [email protected] ارسال کنند.
#jobs #linux
#خراسان_رضوی - مشهد | #python # C# # C #java # g#
💼 شرکتی دانش بنیان در مشهد جهت تکمیل کادر فنی خود از افراد واجد شرایط زیر دعوت به همکاری می نماید:
📃 عنوان شغلی: برنامه نویس
شرایط احراز:مسلط به یکی از زبانهای
python/C#/C/go/java/ruby
محل کار:مشهد
حقوق و مزایا: مناسب با توانایی و تجربه ی فرد
بیمه و بیمه تکملی دارد
📞علاقه مندان می توانند رزومه ی خود را به آدرس ایمیل زیر ارسال نمایند:
[email protected]
💼 شرکتی دانش بنیان در مشهد جهت تکمیل کادر فنی خود از افراد واجد شرایط زیر دعوت به همکاری می نماید:
📃 عنوان شغلی: برنامه نویس
شرایط احراز:مسلط به یکی از زبانهای
python/C#/C/go/java/ruby
محل کار:مشهد
حقوق و مزایا: مناسب با توانایی و تجربه ی فرد
بیمه و بیمه تکملی دارد
📞علاقه مندان می توانند رزومه ی خود را به آدرس ایمیل زیر ارسال نمایند:
[email protected]
✨✨آیا #DevOps بیش از یک عنوان است؟ (بخش اول)
عنوان مهندسی DevOps بیش از پنج سال است که به طور مداوم در حال حرکت به جلو ست. این در حالیست که به نظر میرسد، این مهندسان، با مهندسان سیستم (Administrator's) برابری می کنند. اما تفاوت های ظریفی بین این دو وجود دارد.
وجود DevOps عمدتا در نتیجه وجود ابر است و نیاز به توانایی خودکارسازی بسیاری از وظایف انجام شده توسط مدیر سیستم سنتی بود که تکامل نقش DevOps شکل گرفت.
امروزه از سیستم ادمین سنتی خواسته می شود تا با تیم های توسعه نرم افزار و مدیریت محصول برای اطمینان از کارآیی فرآیند انتشار نرم افزار همکاری کند در حالیکه این همکاری، نیازمند دانش DevOps است.
به طور خلاصه، یک مهندس DevOps می تواند به طور کلی هر کاری را که مدیر سیستم می تواند انجام دهد را انجام دهد، اما نه برعکس.
بنابراین زمانی که شرکت ها به دنبال نیروی متخصص هستند، این سوال مطرح میشود که
چرا استعداد هایی که دارای مهارت های گسترده تر هستند را جذب نکنیم حتی اگر در روز اول لزوما مورد نیاز نباشد؟
عنوان مهندسی DevOps بیش از پنج سال است که به طور مداوم در حال حرکت به جلو ست. این در حالیست که به نظر میرسد، این مهندسان، با مهندسان سیستم (Administrator's) برابری می کنند. اما تفاوت های ظریفی بین این دو وجود دارد.
وجود DevOps عمدتا در نتیجه وجود ابر است و نیاز به توانایی خودکارسازی بسیاری از وظایف انجام شده توسط مدیر سیستم سنتی بود که تکامل نقش DevOps شکل گرفت.
امروزه از سیستم ادمین سنتی خواسته می شود تا با تیم های توسعه نرم افزار و مدیریت محصول برای اطمینان از کارآیی فرآیند انتشار نرم افزار همکاری کند در حالیکه این همکاری، نیازمند دانش DevOps است.
به طور خلاصه، یک مهندس DevOps می تواند به طور کلی هر کاری را که مدیر سیستم می تواند انجام دهد را انجام دهد، اما نه برعکس.
بنابراین زمانی که شرکت ها به دنبال نیروی متخصص هستند، این سوال مطرح میشود که
چرا استعداد هایی که دارای مهارت های گسترده تر هستند را جذب نکنیم حتی اگر در روز اول لزوما مورد نیاز نباشد؟
✨✨آیا #DevOps بیش از یک عنوان است؟ (بخش دوم)
آنچه مسلم است، اعداد نشان دهنده رشد قوی در تقاضای عنوان DevOps است. در 18 ماه گذشته تعداد آگهی هایی که شامل عنوان مهندسی DevOps هستند، بیش از 50 درصد افزایش یافته است.
تغییر واقعی است؛
شرکت ها بیش از آن که به دنبال سیستم ادمین ها یا مدیران سیستم (Administrator's) باشند، به دنبال مهندسان DevOps هستند.
و همانطور که اشاره شد، تفاوت های مشخصی در وظایفی که برای تکمیل هر یک از آن ها خواسته شده، وجود دارد
بله. DevOps آینده است.
بنابراین، بیشتر از یک نام است. سوال واقعی این است که آیا شرکت ها به آن بیش از یک نام می پردازند؟
آنچه مسلم است، اعداد نشان دهنده رشد قوی در تقاضای عنوان DevOps است. در 18 ماه گذشته تعداد آگهی هایی که شامل عنوان مهندسی DevOps هستند، بیش از 50 درصد افزایش یافته است.
تغییر واقعی است؛
شرکت ها بیش از آن که به دنبال سیستم ادمین ها یا مدیران سیستم (Administrator's) باشند، به دنبال مهندسان DevOps هستند.
و همانطور که اشاره شد، تفاوت های مشخصی در وظایفی که برای تکمیل هر یک از آن ها خواسته شده، وجود دارد
بله. DevOps آینده است.
بنابراین، بیشتر از یک نام است. سوال واقعی این است که آیا شرکت ها به آن بیش از یک نام می پردازند؟
اخیرا اصطلاح #microservices را در گپ و گفت های فناوری زیاد می شنویم. در این پست تلاش می کنیم که مفهوم و محاسن و معایب آنرا بررسی کنیم.
در حقیقت Microservices روشی برای توسعه برنامه های کاربری است که در آن یک برنامه بزرگ و پیچیده به مجموعه ای از سرویس های کوچکتر و مستقل از یکدیگر تقسیم می شود. هر یک از سرویس ها هدف مستقلی را دنبال میکند و با استفاده از رابط های بسیار سبک و سریعی با سایر سرویس ها تعامل دارد، همچنین عموما از API ها با منبع HTTP در توسعه آن ها استفاده شده است. به طور مثال یک برنامه فروش یا حسابرسی را می توانیم با ساختارMicroservices به گونه ای توسعه داد که در آن یک سرویس مسئول احراز هویت باشد، سرویس دیگر مسئول نگهداری داده ها، سرویس دیگر انجام پردازش ها و به همین ترتیب در آینده نیز با توسعه سرویس های مستقلی میتوان آنرا به صورت کاملا ماژولار توسعه داد.
محاسن Microservice ها:
🔻 گسترش و توسعه آسان در مقایسه با روش های کلاسیک
🔻افزایش قابل توجه سرعت و چابکی در تولید
🔻مقیاس پذیری و انعطاف پذیری برنامه ها
🔻 قابلیت استفاده مجدد از سرویس ها در سایر پروژه ها
🔻 قابلیت استفاده تحت زیرساخت های مبتنی بر رایانش ابری
🔻قابلیت بالا در کار با تکنولوژی کانتینرها مانند #docker
در حالی که استفاده از Microservices مزایای قابل توجهی دارد اما از طرف دیگر با چالش هایی هم مواجه می شویم:
▫️ استفاده از تعداد زیادی جزء کوچک در عملکرد با یکدیگر این پتانسیل را دارد که ساختاری در پیش روی ما قرار دهد که رفع خطا یا بهبود عمکلرد کلی برنامه را با دشواری مواجه کند.
▫️ امکان بروز مشکل Latency زیاد است
▫️تست برنامه فرآیند ساده ای نخواهد بود
در حقیقت Microservices روشی برای توسعه برنامه های کاربری است که در آن یک برنامه بزرگ و پیچیده به مجموعه ای از سرویس های کوچکتر و مستقل از یکدیگر تقسیم می شود. هر یک از سرویس ها هدف مستقلی را دنبال میکند و با استفاده از رابط های بسیار سبک و سریعی با سایر سرویس ها تعامل دارد، همچنین عموما از API ها با منبع HTTP در توسعه آن ها استفاده شده است. به طور مثال یک برنامه فروش یا حسابرسی را می توانیم با ساختارMicroservices به گونه ای توسعه داد که در آن یک سرویس مسئول احراز هویت باشد، سرویس دیگر مسئول نگهداری داده ها، سرویس دیگر انجام پردازش ها و به همین ترتیب در آینده نیز با توسعه سرویس های مستقلی میتوان آنرا به صورت کاملا ماژولار توسعه داد.
محاسن Microservice ها:
🔻 گسترش و توسعه آسان در مقایسه با روش های کلاسیک
🔻افزایش قابل توجه سرعت و چابکی در تولید
🔻مقیاس پذیری و انعطاف پذیری برنامه ها
🔻 قابلیت استفاده مجدد از سرویس ها در سایر پروژه ها
🔻 قابلیت استفاده تحت زیرساخت های مبتنی بر رایانش ابری
🔻قابلیت بالا در کار با تکنولوژی کانتینرها مانند #docker
در حالی که استفاده از Microservices مزایای قابل توجهی دارد اما از طرف دیگر با چالش هایی هم مواجه می شویم:
▫️ استفاده از تعداد زیادی جزء کوچک در عملکرد با یکدیگر این پتانسیل را دارد که ساختاری در پیش روی ما قرار دهد که رفع خطا یا بهبود عمکلرد کلی برنامه را با دشواری مواجه کند.
▫️ امکان بروز مشکل Latency زیاد است
▫️تست برنامه فرآیند ساده ای نخواهد بود
آشنایی با انواع مجوز نرمافزاری و قانون کپی-رایت
این روزها نوشتن یک برنامهی کاربردی، بدون استفاده از انوع کتابخانهها (libraries) و کدهایی که دیگران نوشتهاند، تقریباً غیرممکن است. شما چه برنامهنویسی باشید که میخواهد از قطعهکدهای دیگران استفاده کند و چه برنامهنویسی که در اندیشهی تولید این کتابخانههاست، باید با جنبههای قانونی استفاده از کدهای سورس یا کامپایلشده آشنا باشید تا در ورطهی دردسرهای پیشبینینشده و ناخواسته سقوط نکنید.
مهمترین چیزی که پیش از دست زدن به کدها و تصاویر آمادهی گرافیکی، یا استفاده از کتابخانهها باید بررسی کنید، مجوز، یا بهاصطلاح لایسنسی است که اثر را تحت آن توزیع کردهاند. برای اطلاع از آن، معمولاً باید به دنبال فایلی با نام license.txt بگردید یا صفحهی مربوط به مجوزها (Legal/Licensing) را در سایت اصلی بیابید.
مجوز
انواع اصلی لایسنسها را چهار دسته تقسیم میکنیم:
یکم ـ مجوز آزاد یا permissive/copyfree
کدهایی که تحت این نوع مجوز توزیع میشوند، هیچ محدودیتی بر برنامهی نهایی شما ایجاد نمیکنند. شما آزادید که هر تغییری در آنها ایجاد کنید و لزومی ندارد کدهای تغییریافته یا استفادهشده را بازنشر دهید. حتی منعی برای استفادهی تجاری از این کدها نیز وجود ندارد.
انواع اصلی این لایسنسها عبارتند از Apache، BSD، MIT/X11 و Academic Free Licence.
لایسنسهای BSD و MIT بسیار مختصر هستند و تنها به مثابهی اعلامیهای برای سلب مسئولیت از نویسنده به کار میروند و گزینهی مناسبی برای کامپوننتها و کدهای کوچک قلمداد میشوند. در حالی که Apache و AFL، متنهای حقوقی و کاملی هستند که تکلیف مسائلی نظیر سرنوشت پتنتها را نیز مشخص کردهاند. برنامههای کامل، ترجیحا با لایسنس Apache عرضه میشوند.
به عنوان مثال، برنامههای معروفی که از این نوع لایسنسها استفاده میکنند، میتوان به LLVM/Clang، X11، FreeBSD، OpenSSL، Apache Server، اپل وبکیت و کرومیوم، و قسمتهای یوزرلند اندروید اشاره نمود.
دوم ـ مجوز تجاری / کپیرایتشده (Copyrighted/Proprietary)
همهی برنامههای تجاری با این عنوان عرضه میشوند. این کدها بدون تهیهی مجوز لازم از توزیعکننده، در کدهای شما قابل استفاده نیستند. استفاده از این کدها یا لینک کردن به آنها، معمولاً در ازای پرداخت پول مجاز است. پس از دریافت مجوز، ممکن است فایلهای کامپایلشده (سورسبسته) یا کدهای اصلی (همراه سورس) را در اختیار شما قرار دهند، اما به شما اجازهی توزیع آن کدها را نخواهند داد.
از گروه سورسبسته میتوان به ویندوز و مایکروسافت آفیس، و از گروه همراه با سورس میتوان به vBulletin، Unix و کامپوننتهای DevExpress اشاره کرد
بر خلاف مجوزهای متنباز 1، استاندارد رایجی برای مجوزهای کپیرایت تجاری وجود ندارد و توصیه میشود فایل لایسنس، بهدقت مطالعه شود.
سوم ـ مجوزهای کپیلفت قوی (Strong Copylefted)
کدهایی که تحت این عنوان توزیع میشوند، لایسنس خود را به برنامهی شما تحمیل مینمایند. حتی اگر یک خط از آنها را وارد برنامهی خود کنید، ناچار خواهید بود کل برنامهتان را به صورت کپیلفت، در اختیار سایرین قرار دهید. این مجوزها به شما اجازهی تجاریسازی یا فروش برنامه و کدتان را نمیدهند. سختگیری مجوزهای کپیلفت تنها به استفاده از کدها ختم نمیشود. حتی لینک کردن به نسخهی کامپایلشدهی آنها نیز، چه به صورت استاتیک انجام شود و چه به صورت دینامیک، همهی کدهایتان تحت این مجوزها قرار خواهد گرفت. بنابراین اگر قصد ندارید بدون انتشار همهی کدهای خود برنامهتان را توزیع کنید و یا از فروش آن کسب درآمد نمایید 2، عطای کتابخانههای دارای این دسته از مجوزها را به لقایشان ببخشید.
البته کسب درآمد از طریق ارائهی خدمات پشتیبانی و نصب و راهانداری قانونیست و مدل تجاری شرکتهای بزرگی همچون ردهت بر این اساس بنا نهاده شده است.
انواع اصلی این لایسنسها GPL و AGPL هستند که هر کدام چندین نسخه دارند. در میان برنامههای معروفی که با این نوع لایسنس عرضه میشوند، میتوان به لینوکس (کرنل) و یوزرلند اصلی آن، GNU، و همچنین MySQL، وردپرس، جوملا، لیبرآفیس(LibreOffice)، کامپایلر GCC، فریمورک Qt و… اشاره نمود.
معدودی از این برنامهها و کدها، همزمان با لایسنس تجاری هم عرضه شدهاند که اگر بخواهید از برنامهای که نوشتهاید، از طریق فروش نرمافزار و بدون انتشار سورس کد کسب درآمد کنید، میبایست نسخهی تجاری آنها را خریداری نمایید. فریمورک Qt و بانک اطلاعاتی MySQL از این دسته برنامهها هستند.
این روزها نوشتن یک برنامهی کاربردی، بدون استفاده از انوع کتابخانهها (libraries) و کدهایی که دیگران نوشتهاند، تقریباً غیرممکن است. شما چه برنامهنویسی باشید که میخواهد از قطعهکدهای دیگران استفاده کند و چه برنامهنویسی که در اندیشهی تولید این کتابخانههاست، باید با جنبههای قانونی استفاده از کدهای سورس یا کامپایلشده آشنا باشید تا در ورطهی دردسرهای پیشبینینشده و ناخواسته سقوط نکنید.
مهمترین چیزی که پیش از دست زدن به کدها و تصاویر آمادهی گرافیکی، یا استفاده از کتابخانهها باید بررسی کنید، مجوز، یا بهاصطلاح لایسنسی است که اثر را تحت آن توزیع کردهاند. برای اطلاع از آن، معمولاً باید به دنبال فایلی با نام license.txt بگردید یا صفحهی مربوط به مجوزها (Legal/Licensing) را در سایت اصلی بیابید.
مجوز
انواع اصلی لایسنسها را چهار دسته تقسیم میکنیم:
یکم ـ مجوز آزاد یا permissive/copyfree
کدهایی که تحت این نوع مجوز توزیع میشوند، هیچ محدودیتی بر برنامهی نهایی شما ایجاد نمیکنند. شما آزادید که هر تغییری در آنها ایجاد کنید و لزومی ندارد کدهای تغییریافته یا استفادهشده را بازنشر دهید. حتی منعی برای استفادهی تجاری از این کدها نیز وجود ندارد.
انواع اصلی این لایسنسها عبارتند از Apache، BSD، MIT/X11 و Academic Free Licence.
لایسنسهای BSD و MIT بسیار مختصر هستند و تنها به مثابهی اعلامیهای برای سلب مسئولیت از نویسنده به کار میروند و گزینهی مناسبی برای کامپوننتها و کدهای کوچک قلمداد میشوند. در حالی که Apache و AFL، متنهای حقوقی و کاملی هستند که تکلیف مسائلی نظیر سرنوشت پتنتها را نیز مشخص کردهاند. برنامههای کامل، ترجیحا با لایسنس Apache عرضه میشوند.
به عنوان مثال، برنامههای معروفی که از این نوع لایسنسها استفاده میکنند، میتوان به LLVM/Clang، X11، FreeBSD، OpenSSL، Apache Server، اپل وبکیت و کرومیوم، و قسمتهای یوزرلند اندروید اشاره نمود.
دوم ـ مجوز تجاری / کپیرایتشده (Copyrighted/Proprietary)
همهی برنامههای تجاری با این عنوان عرضه میشوند. این کدها بدون تهیهی مجوز لازم از توزیعکننده، در کدهای شما قابل استفاده نیستند. استفاده از این کدها یا لینک کردن به آنها، معمولاً در ازای پرداخت پول مجاز است. پس از دریافت مجوز، ممکن است فایلهای کامپایلشده (سورسبسته) یا کدهای اصلی (همراه سورس) را در اختیار شما قرار دهند، اما به شما اجازهی توزیع آن کدها را نخواهند داد.
از گروه سورسبسته میتوان به ویندوز و مایکروسافت آفیس، و از گروه همراه با سورس میتوان به vBulletin، Unix و کامپوننتهای DevExpress اشاره کرد
بر خلاف مجوزهای متنباز 1، استاندارد رایجی برای مجوزهای کپیرایت تجاری وجود ندارد و توصیه میشود فایل لایسنس، بهدقت مطالعه شود.
سوم ـ مجوزهای کپیلفت قوی (Strong Copylefted)
کدهایی که تحت این عنوان توزیع میشوند، لایسنس خود را به برنامهی شما تحمیل مینمایند. حتی اگر یک خط از آنها را وارد برنامهی خود کنید، ناچار خواهید بود کل برنامهتان را به صورت کپیلفت، در اختیار سایرین قرار دهید. این مجوزها به شما اجازهی تجاریسازی یا فروش برنامه و کدتان را نمیدهند. سختگیری مجوزهای کپیلفت تنها به استفاده از کدها ختم نمیشود. حتی لینک کردن به نسخهی کامپایلشدهی آنها نیز، چه به صورت استاتیک انجام شود و چه به صورت دینامیک، همهی کدهایتان تحت این مجوزها قرار خواهد گرفت. بنابراین اگر قصد ندارید بدون انتشار همهی کدهای خود برنامهتان را توزیع کنید و یا از فروش آن کسب درآمد نمایید 2، عطای کتابخانههای دارای این دسته از مجوزها را به لقایشان ببخشید.
البته کسب درآمد از طریق ارائهی خدمات پشتیبانی و نصب و راهانداری قانونیست و مدل تجاری شرکتهای بزرگی همچون ردهت بر این اساس بنا نهاده شده است.
انواع اصلی این لایسنسها GPL و AGPL هستند که هر کدام چندین نسخه دارند. در میان برنامههای معروفی که با این نوع لایسنس عرضه میشوند، میتوان به لینوکس (کرنل) و یوزرلند اصلی آن، GNU، و همچنین MySQL، وردپرس، جوملا، لیبرآفیس(LibreOffice)، کامپایلر GCC، فریمورک Qt و… اشاره نمود.
معدودی از این برنامهها و کدها، همزمان با لایسنس تجاری هم عرضه شدهاند که اگر بخواهید از برنامهای که نوشتهاید، از طریق فروش نرمافزار و بدون انتشار سورس کد کسب درآمد کنید، میبایست نسخهی تجاری آنها را خریداری نمایید. فریمورک Qt و بانک اطلاعاتی MySQL از این دسته برنامهها هستند.