]> gitweb.morketsmerke.org Git - mmdev.git/commitdiff
Rozpoczęcie i zakończenie pisania 14 rozdziału, modułu 3, kursu CCNA. Do przeredagowa...
authorxf0r3m <jakubstasinski@protonmail.com>
Thu, 12 Dec 2024 19:33:55 +0000 (20:33 +0100)
committerxf0r3m <jakubstasinski@protonmail.com>
Thu, 12 Dec 2024 19:33:55 +0000 (20:33 +0100)
articles/terminallog/Cisco_-_CCNA.html

index e1bdd457dac45099ceb40608695fb90b79e0e056..f73d89c75ac10db004120dc30264c6b720f9c83b 100755 (executable)
@@ -17415,6 +17415,150 @@ R1(config)# boot system flash0:isr4200-universalk9_ias.16.09.04.SPA.bin
         możemy wirtualizować elementy sieciowe. Na koniec zapoznaliśmuy się
         z pojęciem SDN oraz kontrolerami sieci definiowanej programowo.
       </p>
+      <h1 id="3.14.networkautomatization">3.14. Automatyzacja sieci</h1>
+      <p>
+        Automatyzacja to każdy proces samoczynnie napędzany, który ogranicza i
+        potencjalnie eliminuje potrzebę interwencji człowieka.
+      </p>
+      <h2 id="3.14.1.dataformats">3.14.1. Formaty danych</h2>
+      <p>
+        Format danych to sposób przechowywania i wymiany danych w 
+        ustrukturyzowanym formacie. Jednym z takich formatów jest HTML.
+      </p>
+      <p>
+        Formaty danych mają reguły strukturę podobną do tych, które mamy w
+        przypadku języków programowania i języków pisanych. Każdy format danych
+        będzie miał miał specyficzne cechy:
+      </p>
+      <ul>
+        <li>Składnia, która obejmuje typy używanych nawiasów takich jak
+          <strong>[]</strong>, <strong>()</strong>, <strong>{}</strong>,
+          użycie białych znaków, cudzywsłowów i innych.</li>
+        <li>Sposób reprezentowania obiektów, takich jak znaki, łańcuchy, listy
+          i tablice.</li>
+        <li>Sposób reprezentacji par klucz/wartość. Klucz jest zawsze po
+          lewej stronie identyfikuje lub opisuje dane. Wartości po prawej
+          stronie to same dane i mogą być znakiem, łańcuchem, liczbą, listą lub
+          innym typem danych.</li> 
+      </ul>
+      <p>
+        Systemy automatyzacji mogą wykorzystywać następujący typy danych:
+      </p>
+      <ul>
+        <li>JavaScript Object Notation - <strong>JSON</strong></li>
+        <li><strong>YAML</strong></li>
+        <li><strong>XML</strong></li>
+      </ul>
+      <h2 id="3.14.2.apiinterface">3.14.2. Interfejs API</h2>
+      <p>
+        API to oprogramowanie, które umożliwia innym aplikacjom dostęp do jego
+        danych lub usług. Jest to zestaw reguł opisujących, w jaki sposób jedna
+        prosta aplikacja może współdziałać z inną, oraz instrukcje
+        umożliwiające taką interakcje. Użytkownik wysyła żądanie API do serwera
+        z prośbą o podanie określonych informacji i otrzymuje odpowiedź z
+        serwera wraz z żądanymi informacjami.
+      </p>
+      <p>
+        Możemy wyróżnić trzy rodzaje api, patrząc względem dostępności:
+      </p>
+      <ul>
+        <li>Otwarte/publiczne interfejsy API.</li>
+        <li>Wewnętzne/prywatne interfejsy API.</li>
+        <li>API dla partnerów.</li>
+      </ul>
+      <p>
+        Usługa sieci Web to usługa dostęna w Internecie za pośrednictwem sieci
+        WWW. Istnieją cztery rodzaje interfejsów API dla usług internetowych.
+      </p>
+      <ul>
+        <li><em>Simple Object Access Protocol</em> - SOAP</li>
+        <li><em>Representational State Transfer</em> - REST</li>
+        <li><em>eXtensible Markup Language-Remote Procedure Call</em> - XML-RPC</li>
+        <li><em>JavaScript Object Notation-Remote Procedure Call</em> - JSON-RPC</li>
+      </ul>
+      <h2 id="3.14.3.rest">3.14.3. REST</h2>
+      <p>
+        REST to styl achitektury do projektowania aplikacji internetowych.
+        Odnosi się do stylu architektury internetowej, która ma wiele 
+        podstawowych cech i reguluje zachowanie klientów i serwerów.
+        Najprościej mówiąc REST API to API, które działa w oparciu o protokół
+        HTTP. Definiuje zestaw funkcji, którego programiści mogą używać do
+        wykonywania żądań i odbierania odpowiedzi za pośrednictwem protokółu
+        HTTP, takich jak GET i POST. Zgodność z ograniczeniami architektury
+        REST jest ogólnie określana jako <em>RESTful</em>. Interfej API można
+        uznać za <em>RESTful</em>, jeśli ma następujące funkcje:
+        <strong>Klient-Serwer</strong>, <strong>Bezstanowość</strong>,
+        <strong>Pamięć podręczna</strong>.
+      </p>
+      <p>
+        Zasoby i usługi internetowe, takie jak interfejsy API <em>RESTful</em>,
+        są identyfikowane za pomocą identyfikatora URI. <strong>URI</strong>
+        to ciąg znaków, który identyfikuje określony zasób sieciowy.
+      </p>
+      <p>
+        Przeanalizujmy sobie poniże żądanie API:
+      </p>
+<pre class="code-block">
+http://www.mapquestapi.com/directions/v2/route?outFormat=json&amp;key=KEY&amp;from=Warsaw,PL&amp;to=Berlin,DE
+</pre>
+      <p>
+        W tym URI występuje: serwer API 
+        (<code class="code-inline">http://www.mapquestapi.com/</code>),
+        żądany zasób (<code class="code-inline">directions/v2/route</code>),
+        następnie przechodzimy już do formatu właściwego zapytania. Zapytanie
+        rozpoczyna się podaniem żądanego formatu danych -
+        <code class="code-inline">?outFormat=json</code>, następnie podawany
+        jest klucz (metoda uwierzytelniania, kontroli dostępu do API) -
+        <code class="code-inline">&amp;key=KEY</code>. Na końcu podajemy
+        parametry, o które chcemy zapytać - 
+        <code class="code-inline">&amp;from=Warsaw,PL&amp;to=Berlin,DE</code>.
+      </p>
+      <p>
+        Większość serwisów udostępniających API, udostępnia także dokumentację
+        opisując dostępne zasoby oraz w jakis sposób uzyskać do nich dostęp.
+        Natomiast do tworzenia API możemy wykorzystać takie programy jak
+        <strong>Postman</strong> lub języki programowania takie jak Python.
+      </p>
+      <h2 id="3.14.4.toolsforconfigurationmanagement">3.14.4. Narzędzia do zarządzania konfiguracją</h2>
+      <p>
+        Podsiadając wiele urządzeń do skonfigurowania, możemy konfigurować je
+        po kolei i spędzić nad tym trochę czasu. Poźniej możemy kontrolować
+        nasze urządzenia za pomocą protokołu SNMP. Jednak jeśli przyjdzie nam
+        zmienić jedną opcję na 80 przełącznikach? To znów spędzimy nad tym
+        trochę czasu. Takie kolejne konfigurowanie to tradycyjny sposób
+        konfiguracji i zarządzania nią.
+      </p>
+      <p>
+        Jedna jeśli nasz sieć jest dość pokaźnych rozmiarów lub lubimy wyzwania
+        możemy wykorzystać informacje zawarte w tym rozdziale i przygotować
+        jedno z narzędzi automatyzacji. Na codzień takie narzędzia używane są
+        np. do przygotowania środowiska do uruchomienia bądź rozwijania 
+        różnego rodzaju aplikacji. Do wyboru mamy:
+      </p>
+      <ul>
+        <li><strong>Ansible</strong></li>
+        <li><strong>Chef</strong></li>
+        <li><strong>Puppet</strong></li>
+        <li><strong>Saltstack</strong></li>
+      </ul>
+      <p>
+        Wykorzystują one żądania RESTful API do automatyzacji zadań i mogą
+        być skalowalne na tysiące urządzeń.
+      </p>
+      <h2 id="3.14.summary">3.14. Podsumowanie</h2>
+      <p>
+        W tym rodziale poruszylimy kwestie automatyzacji oraz jej składników
+        takich jak choćby interfejsy API. Dowiedzieliśmy się również w jaki
+        sposób automatycznie skonfigurować wiele urządzeń. Ten temat kończy
+        3 moduł oraz cały kurs CCNA. Poniżej znajdują się odnośniki do
+        ostatniego egzaminu cząstkowego, do próbnego egzaminu cząstkowego,
+        i do egzaminy cząstkowego. Poniżej znajdują się opisy zadań
+        przygotowawczych oraz opis samego egzaminu praktycznego.
+      </p>
+      <p>
+        P.S. Jeśli ktoś na podstawie tego materiału uważa, że zda egzamin
+        certyfikacyjny. To jak go zda do niech się do mnie odezwie.
+      </p>
     </div>
    </body>
 </html>