Server Virtualization To DNA PPT Notes

Download as pdf or txt
Download as pdf or txt
You are on page 1of 88

Server

Operating System/Application that provides network services to client devices


Can be located in a: Physical Server
Virtualized Environment
Cloud
Traditional physical server
Bulky Computer Hardware with Server Operating System
Has Different Form Factors
Tower
Rack
Blade

Blade
Tower Rack
physical SERVER INTERNALS

Basic Server Components


CPU
ram
Internal Storage
network interface cards
physical SERVER INTERNALS

OPERATING SYSTEM

For a bare metal machine to be


a full-fledged server, it needs an OS.

POPULAR OS

windows server
Microsoft windows
linux BARE METAL

freebsd Server without an Operating System


apple mac os
problem with a traditional server setup
server virtualization basics
virtualize

We install multiple operating system instances in a physical server (called Host)

By creating a Virtual Machine (VM)

emulated physical server


we can create multiple VMs in a single Host
Hypervisors
Software that creates and runs Virtual Machines (VM)
Manages and allocates the host hardware components for each VM
serves as the supervisor and manager of the virtualized environment

components are shared between VMs


Hypervisors type 2 hypervisor

2 types of hypervisors Commonly known as Hosted Hypervisors


Hypervisor is installed “on top” of the
Type 1 hypervisor
host operating system
type 2 hypervisor Vmware workstation
Vmware fusion
type 1 hypervisor
virtualbox
Commonly known as Native/Bare Metal Hypervisor parallels for mac
Hypervisor Software is installed directly
*this type is used
on top of the Bare metal device hardware
for software
Vmware esxi testing

hyper-v

linux kvm

citrix xenserver

*this type is heavily


used for server
virtualizations
virtual machines
Emulated Computers where we can run guest operating systems and applications

Imitates a Real computer

guest operating system


Operating system installed inside a vm

primary operating system


operating system installed on top of the host hardware

virtual hardwares:
Virtual CPU (vCPU)
vRAM
Virtual Hard Drive
vNIC
Virtual Peripherals
cloud computing
Relocating Network Infrastructure and resources onsite into a cloud provider offsite

network hardware network servers

cloud provider

Public Cloud
examples: AWS, Microsoft Azure
Publicly accesible

Private Cloud
Cloud dedicated for a single organization
Accessible via a Private Network
Hybrid Cloud
Combination of a Private and Public Cloud
benefits of migrating to the cloud
major benefits

Economic Benefit

Ease of Provisioning

economic benefits

On-premises cloud model

Network Devices needed are No need to buy computing hardware.


all bought and paid for. We use the computer hardware provided
These are considered by the cloud provider
Capital Expenses (CapEx) Netword hardware costs are converted
from a capital expense into an
“Operational Expense” (OpEx)
cloud computing definition
nist nccp
U.S. National Institute of Standards & Technology Cloud Computing Program

nist cloud computing definition


Cloud Computing is a model for enabling ubiquitous, convenient, on-demand network access
to a shared pool of configurable computing resources
(e.g. networks, servers, storage, applications, and services)
that can be rapidly provisioned and released with minimal management
effort or service provider interaction."

5 essential characteristics:
On-Demand Self-Service Measured Service
Rapid Elasticity Broad Network Access

Resource Pooling
cloud computing definition
5 essential characteristics:
On-Demand Self-Service Measured Service
Rapid Elasticity Broad Network Access

Resource Pooling

rapid elasticity

elasticity
Capability of a cloud service
to adapt
Ability of cloud services to
add and remove computing power
RAPID ELASTICITY
Immediate adjustment of
computing power d
cloud computing definition
5 essential characteristics:
On-Demand Self-Service Measured Service
Rapid Elasticity Broad Network Access

Resource Pooling

resource pooling

pooling
To group together

resource pooling
Computing resources are
grouped together into one
big “pool” to be shared by
multiple users.
cloud computing definition
5 essential characteristics:
On-Demand Self-Service Measured Service
Rapid Elasticity Broad Network Access

Resource Pooling

measured service

uses operational expenses/operational expenditure (opex)

services are metered and measured. we pay what we use.


cloud computing definition
5 essential characteristics:
On-Demand Self-Service Measured Service
Rapid Elasticity Broad Network Access

Resource Pooling

broad network access

Cloud services are required to be available and must be accessible


on different platforms

ubiquitous
cloud services

Cloud computing works on a services model

3 Primary types of cloud services


Infrastructure as a Service (IaaS)
Platform as a Service (PaaS)

Software as a Service (SaaS)


traditional server

component stack

infrastructure software
Software installed that gives
the server their identity
virtualized server component stack
Infrastructure as a service (IaaS)

Cloud provider gives us a “Virtual Infrastructure”

Cloud provider creates a VM for us

We are the ones responsible in the installation of:


* Operating System
* Infrastructure Software
* Necessary Applications

infrastructure

hardware used by applications


Platform as a service (PaaS)

Cloud provider provides a VM with an


operating system, and any necessary infrastructure
software already installed.
Software as a service (SaaS)

All objects in the component stack are the


responsibility and controlled by the cloud provider
high level overview of how a router & a switch functions
high level overview of how a router & a switch functions
high level overview of how a router & a switch functions
the management plane

management
Process of configuring a networking device and viewing its present status

management plane

Includes protocols that we use to access devices remotely


Telnet/SSH, SNMP, and Syslog
Includes manual configuration of protocols, IP Addresses, functions, and
anything that can be configured on a device.
the CONTROL PLANE

Entries in created tables are both Dynamically Learned & Manually Configured

control plane

Process of Adding, Removing, and Changing of entries in tables

Manages forwarding table entries

controls the actions of devices if it will forward,


drop, or filter traffic.
Includes protocols that creates the tables that aids the forwarding decisions
of devices
Routing protocols (OSPF, EIGRP, RIP, BGP)
ARP (ADDRESS RESOLUTION PROTOCOL)

MAC ADDRESS LEARNING OF SWITCHES

STP (SPANNING TREE PROTOCOL)

Manages all of the tables needed by the devices


the data plane

Also called the Forwarding Plane


In-charge of the forwarding decisions for packets and frames

All actions done on packets and frames

Encapsulation and DeEncapsulation


Discarding of Frames

the distributed plane


Traditional networking devices uses a Distributed Plane

Distributed means – all planes exist in a device


The management, control, and data plane all exist in the device
big data applications
Applications that process a huge amount of information from different sources
for predictive analysis and artificial intelligence.

byod (bring your own device)

hardware-centric networks

Normal implementation where we have physical networking devices


More expensive to implement
Has Fixed Capacity
Provisioning and Support is a challenge
Prone to miscofigurations and security vulnerabilities because of the
box-by-box approach
what the industry needs now?

network users have a need for speed, are very impatient, and very demanding

networks today must:

Be Proactive
Be Fast in provisioning and deployments
Rapidly adjust to network changes

network industry is shifting from being hardware-centric or device-centric


INTO A CENTRALIZED, SOFTWARE DRIVEN, PROGRAMMABLE NETWORK

SOFTWARE DEFINED NETWORK OR SDN


cisco sdn definition:
“Software-defined networking (SDN)
is an architecture designed to make a network more flexible and easier to manage.
SDN centralizes management by abstracting the control plane
from the data forwarding function in the discrete networking devices."
sdn
Is an Architecture Type
Means a way to connect devices (topology)
Ultimate goal is to make our networks flexible and easier to manage
Centralizes management by “Abstracting” the control plane

To hide
SDN Abstracts the control plane from the data forwarding function in the
discrete networking devices
sdn simple definition:
Separation of the Control Plane and the Data plane
Control Plane is separated and is placed in a centralized location
called a Network Controller
NOTE: Traditional Networks uses a Distributed Architecture
box-by-box configuration

Each network device must be configured separately


We troubleshoot each device separately
When we need to implement or update network configs, it also must be done
to each device separately

Controller

Centralized Device or application where the control plane is located


Centralized control plane
Because all control plane logic is done by the controller
A software running in a physical appliance or somewhere in the cloud
Distributed architecture
Used by Traditional Networks
Means the management, control
and data plane all exists in the device

in sdn,
The management and control plane
functions are separated from the
device

The control plane function is handled


by the Controller

The management plane functions


can be handled by a separate
application (or also in the controller)
The southbound interface (sbi)

IN an sdn environment, the control plane function is detached from the


network device and is now the job on the “sdn controller”

How does the controller send the forwarding tables to the


networking devices?
by using The southbound interface (sbi)
The southbound interface (sbi) One of the reasons it’s called an
SBI is because of the flow of
information or control
From the controller, the information
is sent “southbound” to the devices.

“SBI is an interface that allows a program or


software and another program/software to
communicate”
SBI is commonly used for the
controller software to communicate
interface to network devices in the southern
side of the SDN hierarchy.
Way to connect to network devices
This is a logical term NOT a physical interface
The southbound interface (sbi)
API
Application Programming Interface

Allows 2 different software/app


to exchange information
Serves as an intermediary bet.
the controller and the network
device.
Like a representative and
interpreter of a device/application
sbi to give necessary information
Actually a logical software interface that includes from within its system
a protocol and an API
Used by the controller to communicate *Network devices are also called “ENDPOINTS”
to endpoint devices
Common sbi protocols
OpenFlow SSH
OpFlex SNMP
Telnet NETCONF
The NORTHBOUND INTERFACE (NBI)

The NBI of the controller is what makes


Network Programmability possible.
Network Programmability rules created
from the applications are sent to the
controller using the NBIs.

The NBI is also an API


rest api
Representational State Transfer API
Type of API that allows the exchange of information between 2 different software
application using the HTTP/HTTPS protocol.
crud
Acronym for CREATE, READ, UPDATE, DELETE
4 Basic Functionality of an API
Used as a framework guideline for developers when creating web systems and
applications.
CREATE
called if we want to create a new entry
read
called if we want to view available and already existing entries
UPDATE
called if we want to change the values of an already existing entry
DELETE
if we want to remove an already existing entry
rest api
REST API uses HTTP(S) to communicate with diff. software and applications
That’s why REST API uses HTTP(S) Functions

HTTP VERBS HTTP VERBS


post get put delete
REST API uses a client/server architecture
Remote application is the CLIENT. Controller is the SERVER
HTTP POST
Equivalent to the CRUD Create Function.
The remote app (client) will create new variables and data in the controller(server)
HTTP get
Equivalent to the CRUD Read Function.
Client requests variable values or data structures from the server
rest api
HTTP VERBS
post get put delete
REST API uses a client/server architecture
Remote application is the CLIENT. Controller is the SERVER
HTTP POST
Equivalent to the CRUD Create Function.
The remote app (client) will create new variables and data in the controller(server)
HTTP get
Equivalent to the CRUD Read Function.
Client requests variable values or data structures from the server
HTTP PATCH/PUT
Equivalent to the CRUD Update Function.
Client changes values of an already existing variable or data structure in the server
HTTP DELETE
Equivalent to the CRUD Delete Function.
Client removes values of an already existing variable or
data structure in the server
rest api
Network Programmability rules created by external applications like Ansible,
Puppet and Chef are sent to the controller using NBIs (which is a REST API)

If automation scripts from an external application needs to be sent to the


controller they will use HTTP POST

If it needs to get information from the controller it will send an HTTP GET

If it needs to change the values of variables present in the controller it will


send an HTTP UPDATE

If it needs to remove values, variables or scripts in the controller it will send


an HTTP DELETE
HTTP VERBS ARE “TARGETED”

we need to specify the specific variable or resource


URI (UNIFORM RESOURCE IDENTIFIER)
Absolute location of a resource
URI (UNIFORM RESOURCE IDENTIFIER)

STANDARD URI STRUCTURE

https://dnacenter.sample.com/dna/intent/api/v1/network-device
Protocol used IP Address or Absolute Path nung
Hostname ng Variable or Resource as
Controller Defined by the API

bit.ly/CCNA-APIDoc
REST API CALL
Combination of a REST API function (POST,GET,PUT,DELETE) plus a URI

we can test rest api calls by using → postman


www.postman.com
Testing REST API CALLS
dna center sandbox → bit.ly/Mnet-DNA-sandbox
API DOCUMENTATION → bit.ly/CCNA-APIDoc

https://sandboxdnac.cisco.com/dna/system/api/v1/auth/token
/dna/intent/api/v1/network-device

https://sandboxdnac.cisco.com/dna/intent/api/v1/network-device
interpreting json data

json 4 Elements
Javascript Object Notation Key Object

Data Formatting Language Value Array

key:value pair
key is always enclosed in parentheses

value can be a:

Text or string
must be enclosed in parentheses

numeric
no need to enclose in parentheses
array

object
interpreting json data

key:value pair rules


key should always be enclosed in parentheses. no spaces allowed
for value:
* if string → must be enclosed in parentheses
* if numeric → no need to enclose in parentheses
key and value must always be separated by a colon ( : )

note: a series of key value pair must be separated by a comma,


except for the last key value pair
interpreting json data

json object
The Main Idea of the Key:Value Pairs

json object rules

json object is named and no spaces are allowed


object name must always be enclosed in parentheses

yung json object ang may-ari ng key:value pairs, para malaman


kung anong mga key:value pairs ang pagmamay-ari nya, ini-enclose
naman sa curly braces ( { } ) yung mga key:value pairs.
use a colon ( : ) to separate the object name and the series
of key:value pairs
interpreting json data

json array
If ang Value ay merong more than one item para sa kanya, pwede nating
i-contain lahat ng mga items na yan into a JSON Array.

json array rules

items inside the array must be:


* enclosed in parentheses → if string or text
* not enclosed in parentheses → if numerical
series of items inside an array must be separated by a comma.
hindi na kailangan pang lagyan ng comma yung pinaka-last na item
to indicate the start of all items in an array, we need to place a
left bracket ( ] ). to indicate the end of the items, we need to
place a right bracket ( ] )
interpreting json data

and to cap off all the items inside the json array, we need to
enclose everything with open and close curly braces ( { } )
interpreting json data

example
DHCP Pool Name: JSON_Pool
Network Address: 192.168.10.0/24
Default Gateway: 192.168.10.1
DNS Servers: 8.8.8.8 , 8.8.4.4
Excluded Address : 192.168.10.1,
192.168.10.2

DHCP Pool Name: JSON_Pool2


Network Address: 192.168.20.0/24
Default Gateway: 192.168.20.1
DNS Servers: 8.8.8.8, 8.8.4.4
Excluded Address: 192.168.20.1
192.168.20.2
interpreting json data
example
NBA Teams
• Los Angeles Lakers
o Players
▪ Center - JaVale McGee, Dwight Howard
▪ Power Forward - Markieff Morris, Anthony Davis, Kyle Kuzma
▪ Small Forward - Lebron James, Jared Dudley
▪ Shooting Guard - Dion Waiters, JR Smith, Alex Caruso
▪ Point Guard - Rajon Rondo, Avery Bradley
• Dallas Mavericks
o Players
▪ Center - Willie Cauley-Stein, Boban Marjanovic
▪ Power Forward - Kristaps Porzingis, Dwight Powell
▪ Small Forward - Dorian Finney-Smith, Justin Jackson
▪ Shooting Guard - Luka Doncic, Tim Hardaway Jr.
▪ Point Guard - Seth Curry, JJ Barea
REST API continued..

Not all APIs are REST API. But all REST APIs are APIs.
For an API to be considered a REST API, it needs to fulfill the
REST API Attributes

REST API Attributes

Client/server architecture
stateless
cacheable

uniform interface
layered
code on demand (Optional)
REST API continued..
REST API Attributes

Client/server cacheable layered


stateless uniform interface code on demand (Optional)

Client/server architecture
REST API continued..
REST API Attributes

Client/server cacheable layered


stateless uniform interface code on demand (Optional)

stateless
there is no record or information stored about the
information exchange using the rest api

from the client/server perspective, the rest api call


is always new
REST API continued..
REST API Attributes

Client/server cacheable layered


stateless uniform interface code on demand (Optional)

cacheable
cache
* storage sa memory ng isang computer kung saan ini-store
yung mga information na paulit-ulit lang naman ibinibigay.

rest apis ARE REQUIRED TO HAVE AN OPTION TO CACHE OR


NOT TO CACHE REQUESTED RESOURCES.
REST API continued..
REST API Attributes

Client/server cacheable layered


stateless uniform interface code on demand (Optional)

UNIFORM INTERFACE
INTERFACE
* A WAY TO CONNECT. A WAY ON HOW TO EXCHANGE INFORMATION
BETWEEN THE CLIENT AND THE SERVER
HTTP VERBS (GET, PUT, POST, DELETE)
URI (UnifORM RESOURCE IDENTIFIER)
UNIFORM INTERFACE IS A STANDARDIZD WAY TO CONNECT THE
SERVER AND CLIENT USING REST APIS
REST API continued..
REST API Attributes

Client/server cacheable layered


stateless uniform interface code on demand (Optional)

LAYERED
IBIG SABIHIN, HIERARCHICAL YUNG MGA RESOURCES SUCH THAT ANG
PWEDE LANG MAKITA AY TANGING YUNG RESOURCE LANG NA INA-ACCESS
AT NAKIKIPAG-INTERACT TAYO.
REST API continued..
REST API Attributes

Client/server cacheable layered


stateless uniform interface code on demand (Optional)

CODE ON DEMAND
THE REST API ALLOWS CODES TO BE DOWNLOADED AND EXECUTED
BY THE CLIENT ON THE SERVER.

THIS IS AN OPTIONAL ATTRIBUTE


Cisco’s sdn solutions

cisco controllers

CISCO DNA CENTER

cisco controller for campus networks

cisco software-defined wan (sd-wan)

cisco controller for wan networks, powered by viptela

cisco application policy infrastructure controller (apic)


controller for data center – this uses application
centric infrastructure (ACI)
Cisco sd-access dna

sda (software defined access / sd-access)

Cisco’s way of implementing a Digital Software based intent-driven


next generation netework.
Digital Networking

Gives us the capability to automate the Campus Network

To implement SDA, it uses DNA (Digital Network Architecture)


Cisco sd-access dna
3 main elements of sd-access dna
Cisco ISE
Fabric
DNA Center

DNA Focuses on the topology “South” of the controller


Cisco sd-access dna
3 main elements of sd-access dna
Cisco ISE
Fabric
DNA Center

Cisco ISE
Identity Services Engine
AAA Server used for SDA
Identity based network access control
and policy engine
Cisco sd-access dna
3 main elements of sd-access dna
Cisco ISE
Fabric
DNA Center
UNDERLAY
All the interconnected network devices
that provides IP Connectivity in the entire
campus network
Physical Topology
overlay
Fabric Logical topology of the network devices
Basically everything southbound of inside the fabric
the controller
Consists of the
Overlay
Underlay
Cisco sd-access dna
3 main elements of sd-access dna
Cisco ISE
Fabric
DNA Center
UNDERLAY
All the interconnected network devices
that provides IP Connectivity in the entire
campus network
Physical Topology
overlay
Fabric Logical topology of the network devices
Basically everything southbound of inside the fabric
the controller Tunnel created by the fabric edge nodes
Consists of the for data transfer → VXLAN (Virtual
Extensible LAN) Tunnel
Overlay
Underlay
Introducing the dna center
DNA CENTER
Center of the SDA Network
Network Management Controller for the Campus Network
Provides a “Single Pane of Glass”

dna center tools


Design
Policy
Provision
Assurance
Platform
Introducing the dna center

dna center tools


Design
Policy
Provision
Assurance
Platform

dna center demo:

bit.ly/CCNA-DNA-Demo

You might also like