Archive

Category Archives for "karneliuk.com"

HS. Part 4. Forging Microsoft SONiC configuration out of the network graph.

Hello my friend,

The visualisation of the network graph is an important part of the network development and management, but we need to move on. Today we will focus on the configuration for Microsoft SONiC running as Docker containers.


1
2
3
4
5
No part of this blogpost could be reproduced, stored in a
retrieval system, or transmitted in any form or by any
means, electronic, mechanical or photocopying, recording,
or otherwise, for commercial purposes without the
prior permission of the author.

Network automation training – boost your career

To be able to understand and, more important, to create such a solutions, you need to have a holistic knowledge about the network automation. Come to our network automation training to get this knowledge and skills.

At this training we teach you all the necessary concepts such as YANG data modelling, working with JSON/YAML/XML data formats, Linux administration basics, programming in Bash/Ansible/Python for multiple network operation systems including Cisco IOS XR, Nokia SR OS, Arista EOS and Cumulus Linux. All the most useful things such as NETCONF, REST API, OpenConfig and many others are there. Don’t miss the opportunity to improve your career.

Brief description

As we pointed out Continue reading

HS. Part 3. Working out graphs capabilities for the network modelling.

Hello my friend,

There was quite a considerable amount of the feedbacks on the previous post about the data centre network visualisation with graphs. Originally we planned to cover the topology generation today. However, we changed the plan to improve the math model of our graph to make it more flexible and useful from modelling perspective.


1
2
3
4
5
No part of this blogpost could be reproduced, stored in a
retrieval system, or transmitted in any form or by any
means, electronic, mechanical or photocopying, recording,
or otherwise, for commercial purposes without the
prior permission of the author.

Network automation training – boost your career

To be able to understand and, more important, to create such a solutions, you need to have a holistic knowledge about the network automation. Come to our network automation training to get this knowledge and skills.

At this training we teach you all the necessary concepts such as YANG data modelling, working with JSON/YAML/XML data formats, Linux administration basics, programming in Bash/Ansible/Python for multiple network operation systems including Cisco IOS XR, Nokia SR OS, Arista EOS and Cumulus Linux. All the most useful things such as NETCONF, REST API, OpenConfig and many Continue reading

HS. Part 2. Automatic generation and visualisation of the network topology.

Hello my friend,

Surprisingly for myself in the previous post about networking I’ve started completely new topic. It was about the Microsoft Azure SONIC running inside the Docker container and network between those containers. Why is that new? Why does it matter? What is in it for you?


1
2
3
4
5
No part of this blogpost could be reproduced, stored in a
retrieval system, or transmitted in any form or by any
means, electronic, mechanical or photocopying, recording,
or otherwise, for commercial purposes without the
prior permission of the author.

Network automation training – boost your career

To be able to understand and, more important, to create such a solutions, you need to have a holistic knowledge about the network automation. Come to our network automation training to get this knowledge and skills.

At this training we teach you all the necessary concepts such as YANG data modelling, working with JSON/YAML/XML data formats, Linux administration basics, programming in Bash/Ansible/Python for multiple network operation systems including Cisco IOS XR, Nokia SR OS, Arista EOS and Cumulus Linux. All the most useful things such as NETCONF, REST API, OpenConfig and many others are there. Don’t miss the opportunity to improve Continue reading

CEX (Code EXpress) 10. Creating user functions.

Hello my friend,

So far you have learned the most vital tools to start writing your code in Python such as Python’s variables, lists, dictionary data constructions and code flow control for, while and if. Today you will see how to join them all together to create a user defined functions to make your Python’s code cleaner and less error-prone.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

User-defined functions is a reusable parts of the Python’s code, which allow you create some processing once in your code and then call it multiple types anywhere you need. So you will learn:

  • Why it is useful to create user-defined functions
  • How to create the user-defined functions and use them Continue reading

DC. Part 17. Emulating a hyper-scale datacentre with Microsoft Azure SONiC as Docker containers (SONiC-P4).

Hello my friend,

In the previous article from the networking series we have started the discussion about SONiC (Software for Open Networking in Clouds), which is a network infrastructure behind Microsoft Azure cloud. Today we continue this discussion from slightly different angle: we will emulate the whole data centre infrastructure end-to-end with leafs, spines and servers.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

Thanks

Big thanks to a colleague of mine, Michael Salo, who shared with me useful insights on namespaces networking in Linux.

Brief description

Previously we’ve run the SONiC on the Mellanox SN2010 switch, which was provided to me by the Mellanox team to do some reviews. I’ve returned it back, so I started looking for the opportunities to run the Microsoft Azure Continue reading

CEX (Code EXpress) 09. For loop + if conditional = while loop. And the most popular math functions.

Hello my friend,

So far you have learned about the for loop and if conditional. Both of these tools are very useful and have a wide area of the applicability inside the network automation filed. But what if we need to do some activities in your Python code continuously until a certain condition becomes False? The answer you will find in this blogpost.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

While loop is a specific type of the loop in Python, which is being executed infinitely while the associated condition is True. All the knowledge you got about the if conditionals are applicable here as well.

Read the if conditional blogpost for more details.

Therefore, while instruction requires careful planing Continue reading

CEX (Code EXpress) 08. Conditionals and wishes.

Hello my friend,

In the previous blogpost we’ve started the discussion about the instructions, which yo need to know in order to create a Python’s code. Namely, we you have learned how to create and use for loops for the Python’s lists and dictionaries. Today you will learn how to create conditionals.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

Together with the the loops, the conditionals create a basis of almost each and every script. You would use them, when you need to make a decision about an action you code should execute, when there are multiple actions available and they are dependent in some facts. Therefore, you will learn:

  • How to create a conditional instruction using if .. elif .. else .. Continue reading

vlog. Episode 8. History and future of the networking.

Hello my friend,

Today I have a unique opportunity to talk to one of the most well-known authors in the networking industry. Especially if you ever studied for CCIE (link). This is a legendary person, which put his hands on the implementation of many technologies in the service providers, data centres and enterprises.

In this episode, together with Jeff Doyle (yes, this particular Jeff Doyle) we discuss his experience as an author of the networking books, and as a network engineer and architect. We discuss the major steps in the telecommunication’s development over a couple of past decades and what we should expect.

On top of that, Jeff shares his opinion on the skills necessary for the network engineers now and in the future.

Don’t forget to subscribe for the channel, put likes and repost the video if you like that! ?

Support us





P.S.

If you have further questions or you need help with Continue reading

CEX (Code EXpress) 07. Loops are bad in the networks, but not in code.

Hello my friend,

We have covered all the necessary types of the Python’s variables (ordinary, lists and dictionaries) and now we can move on with further concepts. And the first immediate pit stop is the question “how can we work with the Python’s lists and dictionaries efficiently?” The answer wold be “just loop them”!

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

The looping of the sibling’s element out of any data structure, such as a Python’s list or a dictionary, is one of the essential building blocks of any programming code, including the simplest ones. Therefore, today you will learn:

  • How to create loop over Python’s lists using for instruction.
  • How to create loop over Continue reading

vlog. Episode 7. Open Networking and white boxes

Hello my friend,

after short pause caused by the launch of the Network Automation Training we continue our video blog series. We’ve written a lot about open networking so far and today we talk about it.

CY2019 Episode 7 // Open Networking with Avi Alkobi

In this episode, together with Avi Alkobi from Mellanox we explore the Open Networking world from the Data Centres perspective. On a side note, we discuss the new paradigm for networking: open-source vs. traditional vendor lock-in.

Don’t forget to subscribe for the channel, put likes and repost the video if you like that! ?

Support us





P.S.

If you have further questions or you need help with your networks, I’m happy to assist you, just send me message. Also don’t forget to share the article on your social media, if you like it.

BR,
Anton Karneliuk

CEX (Code EXpress) 06. Look into your dictionary.

Hello my friend,

We have discussed so far ordinary variables in string, numeric and Boolean formats and list variables. Today we’ll close the review of the variables by covering the last, and definitely not least, type of variables called Python dictionary. In fact, this one of the most useful for us from the network automation perspective.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

The Python dictionary is a structured data. At a glance it might be similar to the list from the syntax prospective. However, it has a significant difference: in the list each element has an index (numerical value starting from 0), whereas in the dictionary each element has a key (string value you define based on your logic). Continue reading

CEX (Code EXpress) 05. From lists to separate variables and back.

Hello my friend,

So far, we have covered the separate variables and the list variables in the Python 3.8. Before we go further, it makes sense how you can convert one type of the variables to another. Therefore, we discuss this topic today.  

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

Working with variables is an essential part of any programming language including Python. Part of such a work is a conversion of a variable of one type to another and back. That’s why we will explore today the following functions:

  • split() function, which transforms a string value into a list of variables based on a defined separator;
  • join() function, which transforms a list into a string value using Continue reading

CEX (Code EXpress) 04. List what you need.

Hello my friend,

We continue discussion about the variable in the Python, which we have started in the previous article. Today we cover new type, which is very useful and, therefore, widely used. In various programming languages, this type is known under various names. So, who is here? 

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

Answering to the question in the end of the preamble, here is the list. It is also known under the name array; however, in the Python’s terminology list is the correct term. The list variable contains any amount of the elements (starting from zero), which are siblings to each other, and they can be of any type as described in the previous article. Continue reading

CEX (Code EXpress) 03. Variable is better than fixed.

Hello my friend,

We are slowly but surely start talking about more and more useful and interesting topics staying yet at a basic level. Today you will learn about variables in Python, as variables are obviously the basic building block of any tool.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How does the training differ from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

We will learn how to create and use in Python 3.8 several types of the variables such as:

  1. Numbers
  2. Strings
  3. Boolean

The different types of variables are used for the different purposes, that’s why the more variables’ type you know, the better code you can write. We must admit that this list of the variables isn’t complete. That is why in the next couple of blogposts you will see Continue reading

CEX (Code EXpress) 02. Your first Python code.

Hello my friend,

I was thinking what the next thing shall be right after you have installed the Python. Initially I was thinking about another topic, but decided to get some fun for you, as doing something is definitely fun.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

How is the training different from this blog post series? Here you get the basics and learn some programming concepts in general, whereas in the training you get comprehensive set of knowledge with the detailed examples how to use Python for the network and IT automation. You need both.

What are we going to do today?

Today is a big day in your Python journey, mate. Today you will create and execute your first Python code. It will be simple and will do only one task: it will print fixed text. However, it has an enormous value for your learning curve in programming.

Why does it matter?

Despite it looks very easy, there are a couple of aspects, which are important for your further progress:

  1. Knowing how to create Continue reading

CEX (Code EXpress) 01. It starts with… the installation.

Hello my friend,

Time to time we are getting the messages from you that it is getting tougher to find a proper job in the pure networking world. Success of self-service models coming from the clouds and hyperscalers creates the push on the traditional networking business. In its turn, this transformation requires network engineers to gain new skills such as programming and data analytics.

Network automation training – boost your career

Don’t wait to be kicked out of IT business. Join our network automation training to secure your job in future. Come to NetDevOps side.

If you still don’t feel it is necessary, take a look at skills needed for network engineer role these days at open job positions.

Introduction to the Code EXpress (CEX) format

To avoid any confusions, we continue writing about multivendor network development and automation. However, we feel it is necessary to start talking also about the software development and programming at a basic level. The network engineers in a vast majority aren’t very familiar with the Python, Ansible and even Bash, so we want to cover this gap.

The best way to get comprehensive skills in this area is to get to our network automation Continue reading

EVENTS. My experience attending and speaking at UKNOF 45 in London.

Hello my friend,

This year, besides Cisco championship started for me with an opportunity to speak at UKNOF event in London. UKNOF stands for United Kingdom’s Network Operators’ Forum, and per their webpage acts as an open forum for operational, technical and engineering information exchange related to networking technologies and practices. And here is my experience.

How do I get there?

Some time ago I was presenting at NetLdn event in a nice pub in London, and apparently there were some people from the UKNOF board (hey, Chris Russel).

I have an interesting discussion with NetLdn organizers some time ago, you can watch it on our YouTube channel.

They advised me to submit my talk to UKNOF, and if the committee voted for it, I’d have an opportunity to speak in front of quite a big audience at UKNOF 45 in London. I was positively surprised and took that opportunity to apply for a talk. After a month of waiting I finally got an invitation to talk at the 45th UKNOF meeting, which took place in London. 

Despite I have an almost ready slide deck, I need to rework it a bit to comply with the event’s Continue reading

Cisco Champion 2020

Dear friend,

I hope you have a relaxing holiday period and now you are ready to kick off the new year. For us year has already started 2 days ago…

… With announcement that our blog is chosen to be Cisco Champion in 2020. We are very delightful to be a Cisco Champion two times in a row (2019 and 2020). Thank you very much for supporting us, for your interest and your questions.

The good news for you is that the application is yet opened for a couple of days, so you can try to apply yourself.

Discalimer

If you even more interested in your future, join our network automation training we start on 18th and 22nd of January, where we cover the details of the data modelling, NETCONF/YANG, REST API, Python and Ansible in the multivendor environment with Cisco, Nokia, Arista and Cumulus Linux as network functions.

Register to network automation training to start in this month!

Support us



Merry Christmas and Happy New Year 2020!

Dear friend,

The year 2019 is almost over and it is a time to sincerely thank you for the time you spend reading this blog, for all your questions, ideas and suggestions. All these things gives us inspiration to continue blogging about new things for you, dear friend!

We wish you jolly time over the holidays period with your families and friends. We wish you to achieve all your professional and personal goals in 2020! Let the year be successful for you and your loved ones!

Merry Christmas and Happy New 2020 Year!

BR, Anton

DC. Part 16. Microsoft Azure SONiC on the Mellanox switches in data centre (with Cisco XR an Nokia SR OS for inter-OP).

Hello my friend,

The Christmas and New Year is coming, so it is typically the time to think about the future and plan ahead. And today we look into future by reviewing the new network operation system deployed in the data centres hosting Microsoft Azure clouds. This operation system is called SONiC: Software for Open Networking in the Cloud. 


1
2
3
4
5
No part of this blogpost could be reproduced, stored in a
retrieval system, or transmitted in any form or by any
means, electronic, mechanical or photocopying, recording,
or otherwise, for commercial purposes without the
prior permission of the author.

Discalimer

If you even more interested in your future, join our network automation training we start on 18th and 22nd of January, where we cover the details of the data modelling, NETCONF/YANG, REST API, Python and Ansible in the multivendor environment with Cisco, Nokia, Arista and Cumulus Linux as network functions.

Thanks

Special thanks for Avi Alkobi from Mellanox for providing me the Mellanox SN2010 for tests and initial documentation for Microsoft Azure SONiC setup.

Brief description

Everyone talks about the clouds. You can hear about public clouds, private clouds, hybrid clouds, clouds interconnection Continue reading