Top Menu

Tag Archives Open Source

I’m pleased to invite you to join us to the Azure OpenDev hack event!

This will be a challenge based hacking full day event based on building Open Source solutions in the Microsoft Azure cloud. We will focus on migrating and deploying Open Source applications to the Microsoft Azure cloud using DevOps practices. We will touch Open Source technologies like Java, Python, PHP, MySQL, PostgreSQL, Docker, Kubernetes, Git, Jenkins, and Linux.

Do you want more about OpenHack formula? Check my review form OpenHack in Amsterdam: My new learning experience – #OpenHack Amsterdam summary

Romania

Greece

Poland

IMPORTANT! This is Bring Your Own Device (BYOD) event, so do not forget your device! You can have Windows 10, Linux, or macOS with Docker on board.

Agenda

  • 08:30 – 09:00 Registration
  • 09:00 – 09:30 Event opening, explanation of the rules
  • 09:30 – 12:00 Hacking
  • 12:00 – 13:00 Lunch
  • 13:00 – 17:00 Hacking
  • 17:00 – 17:30 End of the event, awarding prizes

I am looking forward to seeing you there! 🙂

Wcześniej nie pisałem nigdy o naszym produkcie, który nazywa się Visual Studio Team Services. Nie będę się teraz o nim bardzo rozpisywał, bo nie o tym jest ten post, ale kilka zdań wprowadzenia postanowiłem napisać – szczególnie jeżeli nie miałeś styczność wcześniej.

Jeżeli wiesz co to jest VSTS /TFS przejdź od razu do sekcji MySQL.

VSTS / TFS

Visual Studio Team Services (VSTS) jest usługą chmurową, która wspomaga pełny proces zarządzania cyklem życia aplikacji – Application Lifecycle Management (ALM), w tym wspomaga proces dostarczenia praktyk DevOps.

Jest też analogiczny produkt, który można wdrożyć w lokalnej infrastrukturze Team Foundation Server (TFS).

Chcesz wiedzieć więcej o VSTS / TFS? Zapraszam na stronę produktową oraz do dokumentacji.

Agent

Niezależnie czy używasz VSTS czy TFS, cała siła wykonawcza narzędzia bazuje na agentach. Agent to nic innego jak maszyna wirtualna (lub fizyczna) z zainstalowanym zestawem narzędzi, które mają wykonać określone zadanie w procesie Build oraz Release.

Agent może być oparty o system Windows lub Linux, z czego dla platformy chmurowej VSTS można używać dzierżawionych maszyn (Hosted pool) tylko na proces wykonywania zadań. Hostowany agent oparty jest o system Windows i ma już zainstalowany pewien zestaw narzędzi (spacyfikacja w dokumentacji). Na dzień dzisiejszy są też hostowane agenty oparte o system Linux, lecz ich status jest na razie Preview.

Definicje Build / Release

Zadania, które ma wykonać agent opisane są w definicjach Build oraz Release. Sam VSTS / TFS ma wbudowaną kolekcję najróżniejszych zadań (Tasks), ale oczywiście to co jest out-of-box nie sprosta wymaganiom całego świata, dlatego VSTS / TFS można rozszerzać za po mocą dodatków, które publikowane są w Visual Studio Marketplace. Jest też opcja pisania własnych dodatków bez publikacji publicznej.

VSTS Release Definition

Jak pisać rozszerzenia VSTS / TFS? Zapraszam do dokumentacji.

MySQL Server

No to przejdźmy do właściwej części tego wpisu… Pracując z jednym partnerem, który wytwarza własne oprogramowanie i hostuje je na Microsoft Azure, podczas warsztatów z optymalizacji architektury wyszło, że jednym z elementów jest serwer baz danych MySQL. Celem na koniec dnia po za optymalizacją architektury było dostarczanie rozwiązania w ramach praktyk DevOps w tym zmian do struktury bazy danych MySQL.

VSTS nie posiada wbudowanych Tasks dla serwera MySQL. Rozwiązanie problemu w takim przypadku jest bardzo proste – agent musi zawierać zestaw narzędzi, które mogą być użyte w definicjach Build lub Release i pod zadanie należy podstawić własny skrypt, który to narzędzie użyje. Scenariusz ten jest bardzo popularny, natomiast wymaga w takiej sytuacji utrzymywania własnego agenta.

Partner jednak nie chciał utrzymywać własnych agentów dla VSTS, a korzystać z dzierżawionych w ramach chmury Microsoft Azure. Jak wspomniałem hostowane agenty (produkcyjne, nie Preview) oparte są o systemu Windows z określonym zestawem narzędzi, a w nim jest brak narzędzi dla serwera MySQL.

Korzystając z biblioteki MySQL Connector/Net, napisałem skrypt PowerShell, który wczytuje bibliotekę MySQL.Data.dll, a następnie już z poziomu PowerShell wykonywane są zapytania lub całe skrypty w bazie danych MySQL. Działa i na tym można by zakończyć temat, ale…

… ale idąc dalej, postanowiłem napisać rozszerzenie do VSTS / TFS, które wspomaga wykonywanie komend ad-hoc lub skryptów MySQL z poziomu hostowanych jak i prywatnych agentów opartych o system Windows.

Rozszerzenie zawiera 3 zadania, które są dostępne w Task catalog, w sekcji Utility.

Task catalog

  • Run MySQL command – zadanie to wykonuje zapytania ad-hoc.
  • Run MySQL script – zadanie wczytuje zawartość skryptu .sql i wykonuje je po stronie serwera.
  • Run MySQL scripts – zadanie wczytuje po kolei wszystkie skrypty .sql, które znajdują się w podanym katalogu i wykonuje je po stronie serwera.

Run MySQL Script

Rozszerzenie MySQL Toolkit for Windows możesz zainstalować bezpośrednio w VSTS za pomocą Visual Studio Marketplace (aka.ms/vstsmysqlwin) lub ściągnąć plik .vsix i wgrać go do swojego serwera TFS.

Cały projekt udostępniony jest w postaci kodu źródłowego na GitHub pod adresem aka.ms/vstsmysqlwinsrc.

Komentarze, błędy, pomysły na rozwój mile widziane 🙂 – najlepiej zgłaszaj je za pośrednictwem GitHub Issue Tracker.

Kontynuując nasze zobowiązanie otwartej i elastycznej platformy, która spełnia potrzeby naszych klientów, otwieramy źródła PowerShell na licencji MIT oraz udostępniła technologię na systemy Linux. Przy dzisiejszych wieloplatformowych środowiskach IT, ważne jest, aby zaoferować klientom możliwość wykorzystania tych samych skryptów i umiejętności znanych ze środowisk Windows Server dla systemów Linux. Daje to możliwość spójnego zarządzania serwerami Linux i Windows za pomocą możliwości automatyzacji Microsoft Azure jak i Operations Management Suite (OMS).

Co to oznacza dla aktualnych klientów?

Obecni klienci używający mechanizmów zarządzania Azure za pośrednictwem OMS będą mogli skorzystać z technologii PowerShell nie tylko do zarządzania serwerami Windows Server ale również Linux.

Dotychczasowi użytkownicy PowerShell mogą teraz zarządzać zarówno Windows Server i Linux z dowolnego systemu klienckiego z MacOS, Linux lub Windows.

Jestem użytkownikiem Linux. Co to oznacza dla mnie?

Dla użytkowników Linux, PowerShell zapewni bogatą interaktywną powłokę, heterogeniczny framework do zarządzania / automatyzacji, który bardzo dobrze działa z istniejącymi narzędziami oraz jest zoptymalizowany do pracy ze strukturami danych (np. JSON, CSV, XML, itd.), REST API i modelami obiektowymi. W celu nauki zobacz stronę domową PowerShell oraz ścieżkę nauki PowerShell.

Jak OMS oraz PowerShell są powiązane?

OMS daje wgląd, kontrolę aplikacji oraz obciążenia na chmurze Microsoft Azure jak i innych chmur. Pomaga bardzo w transformacji do chmury środowisk Linux oraz Windows Server.

PowerShell zapewnia heterogeniczny framework do automatyzacji i zarządzania, który przyspiesza zadania administracyjne dla systemów Windows Server oraz Linux.

OMS oferuje PowerShell jako usługę. OMS Automation udostępnia PowerShell oraz Desired State Configuration (DSC) jako wysoko dostępną oraz skalowalną usługę zarządzania z chmury Microsoft Azure. Może tworzyć graficznie oraz zarządzać wszystkimi zasobami PowerShell takimi jak Runbooks, konfiguracje DSC oraz węzły DSC z jednego miejsca. Dzięki użyciu OMS Hybrid Worker dodatkowo możesz rozszerzyć możliwości automatyzacji, monitorowania, konfiguracji do środowisk nie tylko chmurowych, ale również lokalnych działających w Twoim centrum przetwarzania danych.

Jakie są różnice pomiędzy Windows PowerShell a PowerShell Core?

Windows PowerShell jest edycją PowerShell zbudowaną na .NET Framework i jest dostępna tylko na systemach Windows oraz Windows Server. PowerShell Core natomiast jest edycją zbudowaną na .NET Core i jest dostępna na systemach Windows, Windows Server, Nano Server, MacOS oraz Linux.

Na jakich systemach będzie działał PowerShell?

Windows PowerShell wspierany jest na systemach:

  • klienckich od Windows 7 do Windows 10 Anniversary Edition
  • systemach serwerowych od Windows Server 2008 R2 do Windows Server 2016

PowerShell Core może być używany na systemach:

  • od Windows 8.1 do Windows 10 Anniversary Edition
  • Windows Server 2012 R2 do Windows Server 2016 (w tym Nano Server)
  • OS X 10.11
  • Ubuntu 14.04 oraz 16.04
  • CentOS 7
  • Red Hat 7

Gdzie znajdę źródła PowerShell oraz przykłady multi-platformowego użycia?

Więcej we wpisie Jeffrey Snover-a na blogu Azure: PowerShell is open sourced and is available on Linux

At the beginning of the January 2013, Microsoft Open Technologies announced new service for Windows Azure IaaS – VM Depot. What is VM Depot? It’s a community-driven catalog of preconfigured operating systems, applications, and development stacks that can easily be deployed on Windows Azure. Using VM Depot and Windows Azure, developers can create and share images of Linux-based virtual machines, and share details on their experiences using those images.

When service started, one way to provisioning VMs from VM Depot was using Node.js. Now, you can use Windows Azure Management Portal to do this 🙂

When you select the Virtual Machines tab, you will now see an option to BROWSE VMDEPOT:

WindowsAzure-VMDepot001

Under BROWSE VMDEPOT you are presented with a full list of available images:

WindowsAzure-VMDepot002

You cane also prepare own Linux-based images for Windows Azure and publish it to VM Depot Community 🙂

WindowsAzure-VMDepot003Have fun!

Novell_SuSEMiło mi poinformować, że podjąłem decyzję, że z powodu miażdżącej przewagi rozwiązań Open Source i związanych z tym perspektyw rozwojowych zmieniam strategię.

Od dnia dzisiejszego zaczynam proces przejścia na technologie otwarte na świat. Proces zacznie się od cyklu szkoleń, które będą prowadzone w autoryzowanym ośrodku Novell.

Życzę wszystkim rozwinięcia skrzydeł na nowej platformie jakie będe wdrażał i wspierał!

Close