Academy and Foundation unixmens | Your skills, Your future
2.29K subscribers
6.67K photos
1.38K videos
1.24K files
6.16K links
@unixmens_support
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
کتاب مرجع oracle mysql |mariadb که سالها پیش نوشته بودم . تقدیم عزیزان



MariaDB and MySQL are both popular open-source relational database management systems (RDBMS) that are used to store, organize, and manage data. They are both based on the same core software, which was originally developed by MySQL AB, but MariaDB is a fork of MySQL that was created in 2009 due to concerns about the acquisition of MySQL by Oracle Corporation.

MariaDB and MySQL have many similarities, including their architecture, syntax, and functionality. Both databases use SQL (Structured Query Language) to manage data and support a wide range of programming languages. They also offer features such as replication, clustering, and partitioning to improve performance and scalability.

However, there are also some differences between MariaDB and MySQL. MariaDB has some additional features and improvements over MySQL, such as better performance, improved security, and more storage engines. MariaDB also supports more data types than MySQL and has more built-in functions.

Overall, both MariaDB and MySQL are powerful and reliable RDBMS options for managing data, and the choice between them may depend on specific needs and preferences.

#db #dba #yashar_esmaildokht #book #mariadb #oracle #mysql 📕 📖

https://t.iss.one/unixmens
استفاده از vagrant برای ساختار های DevOps و تفاوت های آ ن با docker :


استفاده از Vagrant در ساختار DevOps می‌تواند به شکل‌های مختلفی از جمله توسعه، آزمون، استقرار و نگهداری نرم‌افزار کمک کند.

توسعه محلی (Local Development):
ا - Vagrant به توسعه دهندگان امکان می‌دهد محیط‌های توسعه‌ی محلی متناسب با نیازهای خود بسازند. این امکان به توسعه‌دهندگان این قدرت را می‌دهد که بتوانند محیطی کاملاً شبیه به محیط تولیدی را به سرعت بر روی دستگاه خود اجرا و توسعه دهند.

آزمون (Testing):
- با استفاده از Vagrant، تیم‌های توسعه و تست می‌توانند محیط‌های تستی یکپارچه را بسازند که بتوانند برنامه‌ها را در شرایط مختلف تست کنند و از سیستم‌های خود بهره مند شوند.

استقرار (Deployment):
- ایجاد محیط‌های انعطاف‌پذیر و تکرارپذیر برای استقرار نرم‌افزار یکی از استفاده‌های اصلی Vagrant در ساختار DevOps است. این امکان به تیم‌ها اجازه می‌دهد تا به راحتی محیط‌های جدید را برای استقرار نرم‌افزار خود ایجاد کرده و تست کنند.

نگهداری (Maintenance):
- با استفاده از Vagrant، می‌توانید محیط‌های توسعه و تست را به سرعت بازنشانی کرده و به حالت اولیه بازگردانید. این امکان به توسعه دهندگان این امکان را می‌دهد که به راحتی بتوانند محیط‌های خود را حفظ و مدیریت کنند.

با استفاده از Vagrant توانایی ایجاد محیط‌های یکپارچه، متناسب با نیازها، قابل بازنشانی و سازگار با ابزارهای دیگر را دارید. به کمک Vagrant، می‌توانید بهبود بهره‌وری تیم‌های DevOps و تضمین کیفیت توسعه و استقرار نرم‌افزار را فراهم کنید.
همچنین
- محیط اجرایی مجازی (Virtualized Environment): Vagrant امکان ایجاد محیط‌های مجازی مانند VirtualBox، VMware و Hyper-V را فراهم می‌کند که این محیط‌ها شامل سیستم عامل کامل (مانند Ubuntu، CentOS و غیره) هستند.
- مستقل از سیستم میزبان: با استفاده از Vagrant، محیط توسعه شما مستقل از سیستم عامل اصلی شما است و به شما امکان ایجاد محیط‌های توسعه یکپارچه و قابل بازنشانی را می‌دهد.
- ایجاد محیط توسعه با استفاده از اسکریپت‌های قابل اجرا: امکان ایجاد محیط هموار توسط اسکریپت‌ها (مانند shell script یا Ansible) از جمله قابلیت‌های مهم Vagrant است.

از ویژگی های دیگر :

یکپارچگی محیط توسعه:
- با استفاده از Vagrant، توسعه دهندگان می‌توانند محیط توسعه‌ی یکپارچه‌ای که شامل سیستم‌عامل، نرم‌افزارها و پیکربندی‌های مورد نیاز است را به سرعت ایجاد کنند. این کار امکان اطمینان از اینکه هر فرد در تیم با محیط یکسانی کار می‌کند و اشتباهات مربوط به تفاوت‌های محیطی بین اعضای تیم را کاهش می‌دهد.

بازنشانی سریع محیط:
ا - Vagrant به شما امکان می‌دهد محیط توسعه و تست را به سرعت بازنشانی کنید. این ویژگی می‌تواند در اجرای تست‌ها، بررسی پس از اتمام یک فرایند و یا بازگردانی محیط به حالت اولیه بسیار مفید باشد.

تست برنامه و استقرار موثر:
- با استفاده از Vagrant می‌توانید محیط‌های تستی برنامه را بسازید و تست‌ها را در محیطی ایزوله و یکپارچه اجرا کنید. این کار می‌تواند کیفیت نرم‌افزار را افزایش دهد و مطمئن شوید که برنامه شما در محیط‌های مختلف به درستی عمل می‌کند.

کاهش تعارضات بین محیط‌ها:
- با استفاده از Vagrant، محیط‌های توسعه و تست به صورت یکپارچه و قابل بازنشانی ایجاد می‌شوند که باعث کاهش خطاهای مربوط به تفاوت‌های محیطی بین مراحل مختلف فرایند توسعه و استقرار می‌شود.

با توجه به این مزایا، Vagrant به عنوان یکی از ابزارهای اساسی در فرایند DevOps مورد استفاده قرار می‌گیرد و به تیم‌های توسعه و عملیات کمک می‌کند تا فرایندهای خود را بهبود بخشند و به صورت موثرتری نرم‌افزارها را تولید، تست و استقرار دهند.


اما تفاوت vagrant با داکر .
نکته : با vagrant هم میتوان از ساختار container استفاده کرد .




- کانتینرها (Containers): Docker از تکنولوژی کانتینر استفاده می‌کند که این نهاده‌ها اجازه ایجاد محیط‌های جداگانه، سبک و قابل حمل را فراهم می‌کند. هر کانتینر شامل برنامه و تمام وابستگی‌های آن بوده و از روی سیستم عامل اصلی به طور مستقل اجرا می‌شود.
- بوت شدن سریع و کارایی بهتر: به دلیل ساختار سبک کانتینرها، Docker بسیار سریعتر از محیط‌های مجازی سنتی (مانند Vagrant) بوت می‌شود و اجرا می‌شود.
- استفاده از تکنولوژی رویه (Orchestration): Docker جهت مدیریت و اجرای مقیاس‌پذیر کانتینرها از ابزارهایی مانند Docker Swarm و Kubernetes استفاده می‌کند که این ابزارها به شما امکان مدیریت کلانترین‌ها از کانتینرها را می‌دهند.
در کل، Vagrant بیشتر برای ایجاد محیط‌های مجازی و محیط‌های توسعه تازه استفاده می‌شود، در حالی که Docker برای ایجاد و مدیریت کانتینرها و اجرای برنامه‌ها در محیط‌های جداگانه و قابل حمل مناسب است. این دو ابزار هر دو اهمیت زیادی در فرآیند توسعه نرم‌افزار دارند و توسعه‌دهندگان از هر دو برای ایجاد و مدیریت محیط‌های توسعه خود استفاده می‌کنند.

نکته : اینجا قطعا انتخاب ما kubernetes هست . اما ما vagrant را برای افرادی معرفی کردیم که دوست دارند با کوبر کار نکنند .

#vagrant

https://t.iss.one/unixmens
اKeda یک ابزار متن باز برای اتواسکیلینگ (autoscaling) محیط‌های اجرایی کانتینری بر پایه Kubernetes است. این ابزار به توسعه دهندگان اجازه می‌دهد تا با تعریف قوانین مخصوص، اجرایی سیستمی را براساس بار کاری (workload) تنظیم و از منابع را بهینه شده مصرف کنند.
در واقع Keda (Kubernetes Event-driven Autoscaling) بیشتر به عنوان یک ابزار برای اتوماسیون پردازش‌های براساس رویدادها در Kubernetes شناخته می‌شود. این ابزار به توسعه دهندگان امکان می‌دهد تا بر اساس رویدادها مانند فشار بر سیستم، تعداد درخواست‌ها یا ساختار های دیگر، یصورت اتوماتیک Autoscaling را انجام دهند.

ویژگی‌های اصلی و اهم Keda عبارتند از:

اتواسکیلینگ یا اسکیلینگ اتوماتیک:
- یکی از ویژگی‌های اصلی Keda، امکان اتوماتیک اسکیل کردن بر اساس تقاضا است. این به معنی این است که می توانید برنامه‌های خود را به طور خودکار و براساس بار کاری فعلی اجرا کنید.

پشتیبانی از انواع منابع اسکیلینگ:
ا - Keda قابلیت پشتیبانی از انواع منابع مانند پیشهای ScaledObject Kubernetes Metric و اختیاری EDAs را دارد. این به توسعه‌دهندگان امکان انعطاف پذیری در تعریف و استفاده از قوانین اتواسکیلینگ را می‌دهد.

انعطاف‌پذیری و گسترش‌پذیری:
- این ابزار امکان تغییر سریع و تنظیمات انعطاف‌پذیر برای مدیریت اتواسکیلینگ را فراهم می‌کند. علاوه بر این، Keda با کلاسترهای Kubernetes بزرگ هماهنگ می‌شود و برای مقیاس‌پذیری و تطابق با بارهای کاری متغیر مناسب است.

پشتیبانی از متریک‌های متنوع:
ا - Keda قادر است به طور همزمان از متریک‌های مختلفی مانند زمان پاسخ، تعداد درخواست‌ها، زمان پردازش و... برای تصمیم‌گیری در مورد اتواسکیلینگ استفاده کند.

نصب و استقرار آسان:
ا - Keda به راحتی در Kubernetes Cluster قابل نصب و استقرار است. این ابزار امکان استفاده از Helm Charts و داکررایزر را فراهم می‌کند که نصب و پیکربندی آن را ساده‌تر می‌کند.

به طور کلی، Keda به توسعه‌دهندگان کمک می‌کند تا بتوانند بار کاری خود را به طور اتوماتیک مدیریت کرده و از منابع محاسباتی بهینه استفاده کنند، باعث بهبود عملکرد و بهینه‌سازی سیستم‌های اجرایی کانتینری در محیط Kubernetes می‌شود.

در مورد نحوه نصب و پیاده سازی آن در آینده مقاله ای نیز خواهم نوشت .


#keda #k8s #Autoscaling

https://t.iss.one/unixmerns
👍3
نکته ای در مورد دوره ها :

دوستان و همراهان گرامی . دوره هایی که ما برگزار میکنیم بصورت uniq هست و تکرار پذیری کمی داره . در واقع آمورشگاهی نیست .
دوره ceph که در حال برگزاری داریم . یکباره هست . و به احتمال بالا دیگه برگزار نکنیم و دوره های جدیدتری را برگزار کنیم .
دوستان پیغام فرستادن برای شرکت در دوره و ما متاسفانه امکان ثبت نام نداریم . و ثبت نام دوره بسته شده . سعی کنید در زمان برگزاری . حتما شرکت کنید . حتی پیش ثبت نام . جرا که ضرفیت به سرعت پر میشه و ثبت نام هم محدود هست . تا ما شرمنده عزیزان نشیم .

نکته : این ساختار شامل تمام دوره ها میشه

با تشکر و آرزوی بهروزی
👏31
متاسفانه ما در کشور خودمان یک مشکل اساسی داریم که باعث میشه کیفیت خدمات دهی پایین تری را داشته باشیم و سازمان ها مون به جای پیشتاز بودن و حل مساله دنبال رو دیکته برخی موسسات آموزشی باشن .

کی گفته مجازی سازی یعنی فقط راهکار های vmware .

آموزشگاه محترم یا برخی شرکت ها مگر شما مسئول بازاریابی و فروش راهکار های vmware هستید . مگر شما نماینده فروش vmware هستید . این قضیه تو خود اروپا و آمریکا هم قفله .

(نکته : ما نمیگیم vmware خوب هست یا بد . بحث ما وجود انحصار هست . سازمان ها باید راهکار های hybrid ی داشته باشن . )

(اپن استک را نگفتم چون اینجا روی بحث کلود متمرکز نیستیم . )



چرا آموزشگاه دوره proxmox - دوره redhat virtualizationیا oracle virtualization دوره ovirt یا xen و qemu/kvm , یا ... را برگزار نمیکنه ؟؟!!!!!

چرا ؟؟؟

سازمان ها باید به سمت راهکار های متن باز برن و از منافع اون استفاده کنن .

جا داره من از برخی شرکت ها هم تشکر کنم مثل : pvm (https://lnkd.in/dh_TjT3V) که بحای فروش راهکارهای vmware (که شاید مشتری های بیشتری هم داشته باشه ) روی راهکار های متنباز و مبتنی بر kvm حرکت کردن .


بیاییم یاد بگیریم تشکر کنیم . من این را به خودم هم میگم / (من خودم تفکر نقادانه دارم و این بسیار ارزشمند هست جهت تعالی سازمان . و سازمان باید روی افرایش تفکر نقادانه سرمایه گذاری کنه . )

و حمایت گر باشیم و ایراد ها را بصورت شفاف و اصولی با راهکار ارایه بدیم .



https://t.iss.one/unixmens



https://lnkd.in/dwmfaGFZ

https://lnkd.in/d-nNQhGH

https://lnkd.in/d9vSyRMe






#pvm #kvm #vmware #virtualization #redhat #rhev
👍6
ا DevOps و SysOps دو نقش مهم در فرآیند توسعه و مدیریت سیستم‌های IT هستند. این دو نقش اما دارای تفاوت‌های مهمی است که به طور خلاصه می‌توان به آن اشاره کرد:

DevOps (توسعه و عملیات)
ا - DevOps به مفهوم همکاری نزدیک بین تیم‌های توسعه و عملیات مرتبط با تولید نرم‌افزار است.
ا - یکی از اهداف مهم DevOps ایجاد فاصله کمتر بین تیم‌های توسعه و عملیات برای ارتقاء سرعت و کیفیت اجرایی و توسعه نرم‌افزارها است.
ا - DevOps به این کمک می‌کند که فرآیند تولید و انتشار نرم‌افزارها به صورت موثرتر، سریعتر، و با استفاده از ابزار‌های خودکار صورت گیرد.

SysOps (عملیات سیستم)
ا - SysOps مسئولیت مدیریت و نگهداری سیستم‌های IT را بر عهده دارد.
ا - SysOps به بهینه‌سازی عملکرد و پایداری سیستم‌ها، نظارت بر امنیت شبکه، مدیریت دیتابیس‌ها و موارد مشابه مرتبط با عملکرد سیستم‌ها مشغول‌اند.
ا - SysOps بر فرآیندهای نصب، پیکربندی، نظارت، و رفع اشکال‌های سخت‌افزاری و نرم‌افزاری تمرکز دارند.

بنابراین، در حالی که DevOps بیشتر بر روی همکاری بین توسعه و عملیات با تمرکز بر اتوماسیون و تسهیل در ارتقاء و انتشار نرم‌افزار تمرکز دارد، SysOps بیشتر بر روی مدیریت و نگهداری سیستم‌ها و زیرساخت‌های IT تمرکز دارد.
Spider_in_MariaDB_20140403.pdf
232.7 KB
mariadb spider storage engine



Spider Storage Engine is a plugin of
MySQL/MariaDB. Spider tables can be
used on other MySQL/MariaDB/OracleDB
tables as local tables. And Spider can
create database sharding by using table
partitioning feature.


spider engine suport xa transactions



Redundant feature
You can choose redundant level per table/partition.
Fault tolerance feature
You can use not only Spider’s fault tolerance feature
but also other MySQL’s fault tolerance solutions.
Fulltext/Geo search feature
(with table partitioning, available for patched MariaDB)
You can use backend Fulltext/Geo search feature
transparently.

NoSQL feature (now support )
You can use handlersocket for Spider.
OracleDB connecting feature
You can search sharded table by parallel.


mariadb storage engine - sharding and xa transactions
#mariadb #storage #linux #db #database #spider #sharding #partitions #partition xa_transaction

https://t.iss.one/unixmens
XA transactions, also known as distributed transactions, are a type of transaction management protocol that allows multiple databases or resources to participate in a single transaction. XA transactions are commonly used in distributed systems where multiple databases or resources need to be coordinated to ensure data consistency.

In an XA transaction, a transaction manager coordinates the transaction across multiple resources by using a two-phase commit protocol. In the first phase, the transaction manager asks all resources to prepare to commit the transaction. If all resources are able to commit the transaction, the transaction manager proceeds to the second phase and asks all resources to commit the transaction. If any resource fails to commit the transaction, the transaction manager can roll back the entire transaction to maintain data consistency.

XA transactions are typically used in enterprise applications where data integrity and consistency are critical, such as in banking systems, e-commerce platforms, and other mission-critical applications. The use of XA transactions helps ensure that all resources involved in a transaction are either committed or rolled back together, preventing data inconsistencies and ensuring data integrity.
استارت آپ Albedo قصد دارد در سال 2025 ماهواره ای را به فضا پرتاب کند که می تواند یک فرد را ببیند و او را از روی صورتش بشناسد.

قرار است در مجموع 24 هواپیما به مدار پایین زمین پرتاب شوند. اساساً یک دوربین غول پیکر در مدار وجود خواهد داشت که دولت هر کشوری می تواند در هر زمانی بدون اطلاع مردم از آن استفاده کند. برخی ماهواره را با برادر بزرگ در سال 1984 جورج اورول مقایسه کرده اند.

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