Kubernetes 101 - Episode 1 - Hello, Kubernetes!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello everybody and welcome to the kubernetes 101 live stream uh earlier this year i started an ansible 101 live stream it was right at the beginning of when most of the world went into the pandemic lockdown and that was not a very fun time but i thought maybe we could uh have a little fun on youtube and stream and learn something together and i was going to start the series right after that uh but a lot of things happened between then and now that kind of prevented that but we're here now and i'm glad to be with you one thing that i really loved about that series was seeing all the different people who watched from around the world and so one thing that we did on every one of these episodes was everybody if you feel comfortable doing it said hello and where they're from in live chat and i love seeing where everybody's from i already saw maybe 15 or 20 people put that they're from all over the world so good to see you um please say say hello um please participate in the live chat that's one of the reasons i did a live stream instead of pre-recording these episodes there actually there's two reasons one is you get to see me make a fool of myself and see the raw unedited footage for these videos typically for a regular video that i post to youtube if it's 12 minutes long that means i spent 12 or 14 hours on it for these live streams i spend the same amount of time but it's all before i make the video instead of after i make the video so it's great to see everybody here the live chat is going to be amazing i have high hopes for this series i hope that everybody gets a lot out of it please consider subscribing there's a link right below here if you're watching in the youtube app or on youtube.com and you can subscribe and hit notifications and then that way whenever i start another live stream you can get a notification when it starts otherwise all of these will be recorded they'll all be available forever or as at least as long as youtube is up and you'll be able to watch them afterwards as well also these these streams don't come free as i said it takes a lot of my time to work on them it's time that sometimes i also get to spend working on improving open source software using kubernetes and some of the tools that i work with so i i do try to spend a lot of time improving open source improving my projects and improving other people's projects and i'm trying to make that sustainable for myself so that i can do this work more often and more frequently so if you feel it in your heart and have the the ability to i have links to my patreon and github sponsors down in the description below so find those and and if you feel like you could support this that's great otherwise i also encourage people to support not only right now local food pantries and charitable organizations that help the people that do need money and food and clothing at this time but also other open source developers because it's so hard to develop open source software and make that sustainable a lot of people use it and a lot of people in some ways can abuse that relationship that they have with open source developers but so few people are willing to donate money especially to help make it a sustainable thing so i have uh i also have some new tricks up my sleeve this time i i bought a stream deck i mentioned it a few times in my ansible 101 series but now the reason why i am not muted right now i've done two live streams in the past few months and both of them i've muted for the first two or three minutes this time i'm not because i have a stream deck and i can see that my mic is unmuted which is so helpful so thanks to everybody who's been watching my youtube videos i've been able to afford buying one of these little stream deck things and i can switch using it to my screen share and i can say welcome on the screen as well the first thing i wanted to mention is that for i i think for the duration of this series at least for the next couple weeks i'm going to be selling my book ansible for kubernetes for 4.99 now this book is not yet finished i'm still writing it i have six or seven chapters complete but my goal this is part of the reason i'm finally doing this series my goal is to have this book finished so that you can start so that once i finish the series you'll have this reference available and this focuses on automating kubernetes with ansible but it covers a lot more than that and a lot of the examples that i'll be giving in this series come out of things that i've done for this book it doesn't matter if you're using ansible to automate it or if you're doing it by hand or if you're using some other tool the point of it is that all of our infrastructure these days should be defined in code and automated so i have that book available there's a link in the description below if you want to get it if you buy it today i'm still writing the book but you'll get every update free forever ask anybody who's bought ansible for devops i started publishing that in 2014 and i've published 25 updates to it and each update brings more content brings fixes and this is one of the few books in the world where every example in the book is in ci so every example that's in this book is tested weekly by github actions and it makes sure that all of the examples are relevant and working most tech books when you buy them they end up going out of date within a week a month a quarter or something like that so my goal with these books is to make them relevant forever basically or at least until i run out of time and thanks for uh somebody knock gave me 200 of something um i one of the things with these live streams is i still don't know i got the stream deck working and i got some buttons on it but i have no idea how to do all these automated things and stuff so as the stream series goes on things might get better things might not we'll see things might blow up my my laptop is surviving so far you can see the cpu is rising uh slowly over time and and obs sometimes locks things up so hopefully that doesn't happen this time all right so let's dive right in and the first thing i want to answer is who is this series for just like my book the goal of this is if you've never even touched kubernetes before if you just have heard of it before that's good enough even if you haven't heard of it before the computing world is wide and deep and kubernetes there's a whole ecosystem around it and we'll talk a little bit about parts of it here and there but if you've never touched kubernetes before it's perfect for you if you've touched kubernetes if you've deployed an application to it but you don't know a whole lot about it or how the applications work in kubernetes it's still for you too my intention is that somebody who has either used containers and docker and things like that before or even if you haven't used any of that before but you're a developer who deploys applications or you're an ops or sysadmin person who helps manage applications if you have very basic linux knowledge the knowledge of running applications on a server then this is for you i want to bring you up to speed and teach you about kubernetes and how to use it and where to go for it and all that kind of stuff so uh because of that i want to start way back at the beginning i want to go back all the way to uh the days where we had a big single server so running somewhere running our applications in this case this server is a server that i helped manage at a radio station in st louis and we had a name for the server it had a name it's actually blurred out here just because i don't want to potentially run into any issues with this but we named our servers back then because they were very important and we you saw that there's a tech support number on that server these servers were very important to us because we would install things on them and we would need to make sure that server kept running forever and ever as long as possible with no hiccups but that introduced some issues if the server had power issues or if it had one of the hard drives fail we would have to scramble to make sure that we had another hard drive to replace it and you know you see there's a tape drive here so we had to do backups on the server all these different things made this kind of infrastructure hard to manage and uh but this was how how it was for a long time we had mainframes and we had um different server setups uh for a long time but for for most people you would have one server running somewhere as time went on uh we started to split things up a little bit for better redundancy for better availability and this is a picture of a diagram that i used for my raspberry pi cluster that ran drupal called the pi dramable if you want to find out more about it go to pidramble.com this this cluster is similar to many people's clusters for web applications where you have some sort of server running in the front of it running something that that proxies requests or load distributes the requests i often use nginx you could use varnish you could use a proxy there's lots of different things you can run on this so you'd have a server up there distributing requests to a bunch of of backend web servers uh in my case these servers ran php and drupal and nginx and then there's some sort of storage system in my case i used gluster fs but you could use ceph you could use nfs you can use lots of different technologies for storage and then you might have some caching servers you might have database servers and in each of these layers you can have more complexity so the database might have a primary and replica or a whole cluster of servers the caching servers you might have a pool of caching servers so we started going down this path and a lot of times we would use cloud computing to do this because we realized it's not very fun to go from managing one big server to managing like 50 servers especially if you have a small staff so cloud computing became extremely popular and this i would call it like cloud 1.0 this cloud computing was basically taking all of your servers and running them in someone else's computers so it's it's basically moving all of the things that you would run locally into a cloud so amazon or azure or google cloud or something like that or before it was bought out softlayer which is now ibm you know you would move all of your servers into a cloud somewhere but but it was getting hard to manage because as we grew our infrastructure as we ran you know a business might have run five or ten applications in the 90s and then it became a hundred in the 2000s and now it's a thousand two thousand applications and uh you have many different teams managing these things it became very hard and so we had tools like ansible and chef and puppet and cf engine and even some cloud providers like amazon would provide tools and services that would abstract things away from you so amazon has a whole suite of different tools where you can build infrastructure and connect things together without having to have as much sys admin knowledge so we got to that point and that's that's still where a lot of people are today and that's there's nothing wrong with it one of the things that that i still have is i still have a lot of of servers that i manage with ansible or with terraform or with cloud formation and they kind of connect together and i use a configuration management tool to connect them together and it works fine and sometimes you can even save costs doing that but kubernetes comes from taking this idea to the extreme and instead of worrying about those servers and the relationships between the servers and having one server run one thing and one server run another thing even if they're virtual and it's a cloud running in someone else's infrastructure it takes all that and abstracts it away into basically a software defined cluster so we now have um a pool of servers and you can have different types of servers in that pool and and we might talk a little bit about that a little later in the series but the idea is you have a pool of servers and then kubernetes runs on it and it manages the applications you want to run on those servers but kubernetes does all the hard work for you so hold on a second i need to uh one of the things that i do not have automated is the scrolling through my notes so i still have to to scroll through here and find where i am so anyways kubernetes will manage things on your servers and it uses different words to describe different things that you're going to run the primary thing that that we'll be concerned with early on is pods uh pods are things that kubernetes can run on servers that have one or more containers on them we'll get to all what all that means later but it distributes things on your servers and makes sure that you're utilizing your servers well and this can save you some cost too because if i go back to this slide if we wanted to scale this up or scale it down or if we found that you know we deployed 20 caching servers and we really only needed three or four then we'd have to repurpose those servers and change our automation and change the way that things work and it wasn't always great or there are some cloud providers like amazon has a lot of this auto scaling built in but you're locked into amazon at that point where you're locked into google cloud if you use their system for scaling up and down so kubernetes abstracts all those kind of things away so that we don't have to deal with it now another thing that i want to talk about a little bit to make sure that we know where we're coming from and where we're going is where kubernetes comes from uh and here i guess this is kind of its origin story and i saw a couple other people gave uh gave super chats that's awesome thank you so much um and even even you know i mentioned earlier supporting open source is hard supporting education resources and things you know a lot of people might pay for pluralsight or or other video training courses or things i try to make these free because i know me coming into software development i used as many free resources as i could especially early on when i didn't have the money to pay for these things and i didn't have a job that would give me free trainings and things so i try to pay that forward as much as i can so anyways kubernetes origins kubernetes comes from a system at google called borg and borg is the system that google i believe still uses today i last time i checked it was but borg is a system that runs their clustering and deploys their applications throughout their infrastructure and you know companies like google facebook netflix amazon that they have hundreds of thousands probably millions of servers and they need ways to distribute applications on them that are efficient and and things like that and uh bonus points to anybody in the live chat who can correctly identify this character and his name is not john luke picard or at least technically his name is not at this point in the series um anyway so he was a member of the borg at this point and uh google named their project borg i guess after it because it's a collective of servers and and running all these different applications i see edwin already has the answer and noma de log and now a lot of people are putting it so good job everybody yes um locutis so uh anyway so they took this borg and there are a few engineers who are like you know what we want to take this and make it more accessible and more more open source i guess they wanted to take over a lot of the market of this automation of clustering and they also realized that that certain vendors were having a lot of lock-in through the technologies that were proprietary that they would put out so they turned this thing into kubernetes and at the time they initially started writing it in c plus plus but they they saw that go a new a new programming language was getting popular and very easy to approach and a lot of developers who are familiar with things like python could jump in and go pretty easily so they rewrote it and go they wanted to call it project seven after this character who you know you can identify this character in in the live chat if you want this particular picture is not from star trek next generation it's from the newer series so with picard so anyways um this character uh they named it after this character as kind of like an ambassador to the the humans through the borg and all this stuff but the legal department did not think that that would fly uh and didn't want to have this new cloud technology be encumbered by lawyers suing suing google or suing these new engineers so they decided to change it slightly but still keep the spirit of that progression of naming and they called it kubernetes and that's that has a few different tines first of all you can see on this uh image there are seven spokes on this helm and those seven spokes harken back to project seven seven of nine and also it's a helm i think one of the things i enjoyed most about star trek the next generation in particular but also some of the other series is it does have a lot of references back to navigation and shipping and boating and navies and things like that with all the different terminologies so in in the kubernetes ecosystem you'll see that a lot um a lot of different kind of references to nautical terminology uh for instance helm a package manager that you might have heard of uh was the first big package manager for kubernetes and it's still very popular today so anyway so that's kubernetes history another thing you might see a lot and this especially for somebody new you're like what where did the where did this k8s thing come from kate's nobody knows what that is well kate's is actually called a numeronym and uh i had never known what a pneumonim is until a few years back i started seeing another a different couple ones of these used one of them that you might also be familiar with is w3c for the world wide web consortium so world wide web is 3w some people say w3 instead of www or world wide web another one that's kind of ironic that you might see is a11y that stands for accessibility the way that these work is you take a word that's longer like kubernetes or accessibility you slice out all the letters between the first and last letter and you count how many letters there are and slap that number in the middle so kubernetes is k and then eight letters and s so it's kate's but um anyway that's that's how that works and you know it's it's ironic that a11y is accessibility because unless you know what that means somebody will be like oh we're going to the a11y conference and you're like what does that mean and you know for people who need accessibility i've gone through periods in my life where i had poor eyesight and things like you don't want to have hindrances to understanding what something is so using a11y instead of accessibility is kind of ironic i think for that purpose but you do see kate's a lot and we'll see a lot of other acronyms and acronyms and pneumoniums and all kinds of stuff in this series so in 2015 kubernetes was released they decided to put kubernetes into a new organization called the cncf that stands for the cloud native computing foundation and the idea is that this new foundation would take cloud native technologies things that are built to work in this new order where it's something built to be as stateless as possible and be able to run on the cloud without concern for running it on on their hardware as much things like that anyways what happened is that they started publishing this landscape you might have seen this before you might not have you can find it i think if you just search for cncf landscape you'll get here uh initially this was kind of like a way to see tools that worked with kubernetes natively or worked in cloud native but nowadays this this chart is like 85 vendor spam where it's like we have to jump on this bandwagon so we have to get our logo somewhere on this chart so everything that has anything to do with anything remotely related to cloud computing found a way to get their image on this chart there are a lot of technologies on here that are pretty cool and a lot of companies that are great and stuff i'm not trying to detract from that but a lot of people see this chart and they're like oh my gosh kubernetes is way too complicated i'm never going to understand any any of this stuff and all i have to say here is that there might be like 300 things on here but we only need to know about one or two percent to be productive and happy in kubernetes land so i guess another thing that i want to talk about with this is kubernetes is a little more complicated i think than than just running an application on a server or even using something like docker compose if you're familiar with docker so you might or might not want to use kubernetes for a project and that's really a decision that's up to you there are a lot of things and i'm going to talk about a lot of them that make kubernetes more simple and easier to deploy but kubernetes does have some overhead usually it's best to have at least two servers maybe three or four or five or six depending on the amount of availability you want with your kubernetes cluster so there is overhead there is a learning curve and it's not for everything and everyone i use kubernetes a lot but i also don't use kubernetes a lot my main website jeffgearling.com which gets a decent amount of traffic is still running on a single vps and i just have good backups of the vps and there's been one or two times where i've had to restore backups make sure you always practice restoring backups i have a video coming up on my youtube channel talking about raid and backups but uh that's just one server and it's fine it's been working for me for eight or nine years now that way and i'm it'll probably keep working that way for a very long time in the future i don't see that changing if it works and it's uh it's a little cheaper for me to do that because it's one vps that costs like 10 bucks a month instead of having three or four servers or having a service that i have to pay for in addition to the servers so anyway another thing that i think is important to state here is that there are a lot of service providers for kubernetes and this is a good point where i think i could give a shout out to amazia.io who has graciously sponsored the series and they're also part of the reason i was able to buy this fancy little stream deck device so that i can do my streaming a lot better amazing.io helps you with your kubernetes so that you don't have to worry about all the complicated stuff in this chart so that they're going to deal with all these technologies integrate them together in the right way on any kind of cloud computing infrastructure you need to be on and help it help you to be able to just deploy your applications and not have to worry about the kubernetes stuff underneath it so thank you very much to amazi go check them out it's amazi.io and they have some some other products like lagoon that help with deploying your applications i found out about them a few years back some of the people that that founded it and work there um are very deeply integrated in the drupal or open source community and the kubernetes open source community so they're very very strong open source company at heart and i um i i'm usually very happy with anything that they do so i i highly recommend them all right so the next thing that we're going to do here is we're going to start getting into actually using kubernetes there's a lot of different types of kubernetes out there and i have four images here there are a number of different ways that you can do this um you could install kubernetes you could set up a kubernetes cluster using a tool called cube admin cube adm from kubernetes in you know that's the kind of official way to do it kubernetes is a little bit heavyweight and especially when i'm doing local development or testing i don't like to install the whole thing because you need you know you need at least a pretty beefy server and it takes up a lot of space on your computer it takes up a couple gigs of ram just to run kubernetes and that's before you start running your applications on top of it so there are a lot of different tools out there that help you to run kubernetes easier like k3s from rancher i actually did a series and i you can't see it right now because this is a live stream and i can't do this magic but after the live stream is over i'm going to put a card right above me that shows you some videos that i did with a raspberry pi cluster using k3s because k3s is a lot more lightweight and it works great on arm processors and i i did that series using k3s it's a great little distribution but again it it wants to use a little bit more resources and it's not really meant for local development on a single computer where you bring up clusters and down clusters really quick you can use it that way though um another thing that's really helpful and i use this quite a bit i use it for almost all this continuous integration jobs i do is kind and that is kubernetes in docker and you can use this to develop kubernetes you can use this to develop your applications and test them kind is really cool because it lets you build different types of little clusters running in docker containers and you can run it in continuous integration environments like github actions and travis and circle ci gitlab ci all these different tools and you can run it locally on your computer so i often use this when i want to test my kubernetes stuff so i'll be referring to it a few times in this series but not today the one that's in the bottom left is called mini cube and minicube is one of the most user friendly ways at least in my experience to develop with kubernetes and and test things in kubernetes because it offers a lot of things out of the box that you can pop on to it that lets you test things like ingress which we'll talk about later and services and exposing things on your computer and browsing applications through your web browser and all that so we're going to use minicube in just a minute there's other there's so many other things too there's open shift if you're running in production and you have a bunch of servers to run there are other distributions like micro case that's useful sometimes with edge computing just like k3s where it's a little lighter weight distribution of kubernetes there's also this little thing it's a little bit hard to see because it blends in with the background i should probably put a white border on it or something but this is one i just found out about a couple days ago again ago called k0s and i guess that stands for chaos i don't know or chaos um but uh it's it's another distribution it's meant to be very lightweight and it it's distributed as one single binary so it's easier to deploy early on in kubernetes history it was a lot harder to do these things nowadays we're kind of spoiled for choice and um you know you can find a kubernetes distribution that matches your needs a little better and it's easier to run it on smaller hardware later in the series i'm going to be showing you how i can run kubernetes on some raspberry pi's and that's pretty cool because raspberry pi's are super cheap and you can build a home cluster and do a lot of cool things on it so anyways on to uh the portion where i'm actually going to show you how to build your own little cluster locally with mini cube so i'm going to get out of there open up my terminal and i hope this is big enough so i'm doing a new thing with the streaming series uh i'm going i have my screen share it's very fancy looking i think the screen share is over on the like right i can't even see my window here hold on the screen share is like right there and i'm here and you can see both of us but please let me know in the live chat if if it's hard to see with the the size of this text uh and we can change it up for the next episode but i think this should be visible for you let's see somebody realized i'm using an apple product yes and it's an interesting role an interesting transition time in the apple world with with the new arm processors but i do use linux mac os and i do have a windows pc but i mostly use it for halo 3 and testing things all right so what we're going to do next is build a little a little kubernetes cluster and there's going to be some things in here that you might not know what i'm doing you might not know how it's working but that's okay the point of this is just to show you how quick and easy it is to bring up kubernetes on your computer and i should note that my computer is currently it might look like this isn't much cpu but anytime it gets above 20 25 things get a lot slower because obs for some reason even though it says 9.5 percent it's it's sucking up a lot of power and we'll see how this works today so the first thing that you need to do if you want to use minicube is to install it and on my mac i use homebrew so i can just say brew install mini cube and i already installed it so it's just going to say it's already installed but there's a lot of other ways to install it the easiest way is just download the binary and then put it in your path and you can run it and you can also install it on windows or linux no problem there the other thing that you're going to need is now here's here's something that could be controversial if raise your hand if you've ever pronounced the term k-u-b-e-c-t-l and there's about a hundred different ways to pronounce it somebody at some point got an official pronunciation snuck into the code base i think and the official one is qb cuttle like as in a cuttlefish some people say qb cuddle some people say cube cuddle like you're cuddling up with kubernetes other people say cube control other people say cube ctl basically there's a hundred different ways to say it i'm going to usually say cube cuddle but sometimes i'll say cube ctl sometimes i'll say cube control please don't hate on me for different ways that i say it i'm i'm terrible with people's names uh also and you know if i say one of your names in live chat and i butcher it that's not i'm not trying to be mean i'm just the worst person at pronunciations anyways you're going to need this tool so i'm going to say brew install cube ctl and again i've already installed it before so i have it here and again you can install this different ways you can just download the binary and put it in your path on windows i think it's also available through chocolaty so however you want to install it you just need to get mini cube and cubic cubic cuddle cube control cube ctl whatever all right so once you have those you need to bring up a cluster and it's as easy as mini cube start and there are other options you can use so mini cube by default is going to use two cpus six gigs of memory and 20 gigs of disk space it's an expanding disk so it's not like it's going to suck up 20 gigs right away um but there's different ways for minicube to build its vm too so there's a lot of configuration i usually just use the defaults unless i'm doing something special like one time i run it wanted to run ansible's awx in mini cube and i found out it really needed like eight to ten gigs of ram so i just increased the memory uh through a command line option so that's going to go ahead and build me a kubernetes cluster by default it's going to use the latest version 119.4 and hopefully my cpu doesn't commit sepuku here it looks like things are going okay okay so minicube also uh configures qb cuttle so that it has the right configuration to connect to this cluster if you work with lots of different clusters you'll have to learn a little bit and i'll talk about this later on learn about how qb cuddle gets its configuration to connect to different clusters but for now all you have to know is that when you create a mini cube cluster it configures things for you and you can start running commands like qb cuddle get nodes and this is going to show me how many nodes there are in my cluster there's just one by default minicube's just going to give me one node and that that node is set up as the master node in kubernetes you can have masternodes and for high availability you want at least three of them for consensus with the database but if you have a real world cluster you'll also have other nodes that are workers and just just normal nodes that run your workloads and typically in a production cluster your master node would never run actual applications in this case we're doing that just because it's convenient to do it locally but typically in production you want to have separate separate servers that run the actual applications you're going to deploy so the next step is we want to do we want to put something on it we want to run an application on this cluster and there are a bazillion different things we could do here i'm just going to do a simple thing i'm going to use a deployment and tell kubernetes to deploy an application which is just a container image that has an application inside of it to my cluster so i'm going to say qb cuddle create deployment and cubic cuddles pretty simple you can get things you can create things you can delete things so i'm going to create a deployment which is basically saying deploy this thing so i'm going to call it hello kates and i'm going to deploy an image a docker image image equals caroling guy slash cube 101 intro i'm going to deploy that into the cluster and it tells me hopefully that my deployment has been created we're going to get way deeper into what a deployment is and what's happening in the background and all that later right now we're just creating this deployment so the next step is i'm going to say qb cuddle exposed explose i think that might have been redshirt jeff they're saying explodes qb cuddle expose and this is going to let me see that application from my computer because right now what kubernetes does by default is it runs everything inside the cluster with a private software defined network inside the cluster so things inside the cluster can see each other but unless you expose something using something called a service you won't be able to see that thing from outside of your kubernetes cluster so we're going to expose it so we can see it from my my computer my web browser so i'm going to say expose deployment hello kates that's the deployment that i just did whoops i forgot i also need to say type equals node port and i'll get to that in just a second and then the port that i want to be exposed on in the container this container exposes port 80 because it's a web of basically a website running apache and i'm telling it node port there's a lot of different ways you can expose something in kubernetes and we're going to get into a lot of different types and a lot of different ways that you can have web applications be accessible from the outside the cluster node port is one that's very simple all it does is it it takes a random port a high number port on all the servers in your cluster and it assigns it to the service that you're running so in my case this hello cates and it says that it's exposed now i want to get that port whatever port it assigned so that i can access my service so i can say qb cuddle get services when you expose it creates a service hello kates and it's going to tell me that this is the internal cluster ip so inside the cluster i could reach this service at that ip address and port 80 but outside the cluster i'm going to need to use this port because that's the node port that's running on all the different servers in this case just one server so i can access it on that server but i don't know the ip address there's a couple different ways i can do this one is i can get minicube's ip address minicube ip and that's this minicube assigns itself an ip address whenever you create a new cluster and then it removes it when you're finished with the cluster and i could just take this ip address tack on the port and get it in my my web browser but minicube also does something else and i'm going to open up a browser window really quick it's on my other screen so let me bring it over here so i'm going to open up this browser window and like i said i could just paste in that that ip address and that that port number but minicube also conveniently lets you just say minicube service hello kates and that will do all the work of finding the ip address finding the port tacking them together and launching them in your web browser so if i do that it's going to open up a page in here and you can see that well before youtube started having music videos be the most popular thing on youtube there are fun videos like this which if you haven't seen it go go look up charlie bit my finger anyways so that is our little application it's just a web page it's not a very special application we're going to build a special application soon that we can deploy into our cluster that does a lot more than this but that is that and then once you're finished with your cluster you can either you can either turn it off for now and turn it back on later with minicube halt or in my case i'm finished with this i don't really need it anymore so i'm going to say mini cube delete and that's going to delete the cluster for me and that's all i want to show for building a little cluster and running things locally the point of this is it's not hard at all and you know i'm running a live stream on this computer right now it's using a lot of bandwidth it's using a lot of cpu and it can still run this thing originally not i wouldn't say a long time ago because it's only been like five or six years um originally it was very hard to get kubernetes running locally and do testing in it and have quick test cycles and things like that but as time has gone on it's gotten a lot easier and a lot quicker and the point of this is it's very easy to bring up a local cluster for testing and throughout the series i'm going to show you ways that you can make sure you don't shoot yourself in the foot when you test things locally versus in a production cluster and we'll get into that in in episode 345 probably so anyway another thing that a lot of people want to know is where where can i go to get help again my windows in the wrong place there is tons of great documentation kubernetes docs kubernetes has some of the best open source documentation i've encountered for example this mini cube example that i have here a similar example is in the like mini cube 101 hello mini cube example and there's a there's so many great tutorials here even if you stopped watching the series after this episode and never looked at another episode you can learn so much from these docs and just like with ansible 101 i'm going to give some examples i'm going to show you how things work but the documentation is where i usually go when i'm having a question or when i'm having an issue in addition to that there's a kubernetes slack that is a great place to ask questions when you're having problems i don't remember exactly how to get to that but you can just search for kubernetes slack and something amazing with the timing so i actually chose today's date a couple months ago i was i was waffling on when exactly to start but today's date worked out for my schedule really well and today is also the first day of kubecon virtual and you can actually i guess yesterday was the first day but today there's there's the first you know i don't anyway cubecon is going on this week and it's great timing uh and you can still register for it i think it's free to register for just the keynotes but you can also register for the entire conference and watch sessions but unlike kubecon all of this content that i'll be doing in the series is perfectly free so you know hopefully some of that kubecon content will come out on youtube and other places later so you can learn about that but one of the disadvantages i think of conferences like kubecon is sometimes they're more vendor heavy so it can be hard to separate the wheat from the chef in terms of what is something that's going to teach you something versus what is something that's just going to sell you something from a vendor but there are some vendors that are really awesome and i like i said earlier i think amazi.io who is the sponsor for the series is one of those vendors who actually does things the right way and they're trying to help you so again please check them out this is all i have for today usually these episodes will go for a full hour this episode i'm going to cut it off now mostly because i wanted to just make sure we got through the basics but next time i'm going to cover containers and docker in particular docker is not the only way to do containers but i'm going to cover the basics of containers because i know a lot of people even if you use containers even if you use tools on your computer that manage containers and things you might not understand how to build a container how to manage it where to put them and and how to deploy them and things so i'm going to talk a lot about containers in the next episode and we're going to build a custom go app now i'm not going to this is kubernetes 101 it's not go on one so you're not going to go from not ever seeing go to being like a go professional that can get a job somewhere but you'll at least know how to set up a go app and compile it so we're going to do those two things in the next episode please go ahead and subscribe to my channel if you want to keep seeing these thank you everybody in the live chat um another thing that we're going to start doing in the future episodes is going through some of the questions and things and discussion that that ends up in the live chat it's hard for me to keep up with it during the stream but after the stream i usually go through it and so if you have anything that you want to discuss i will try to get to those things in future episodes but please also check out cube101.jeffgearling.com this is where i i don't have it posted yet my goal is to have it posted by today but i'm going to have a schedule of all the episodes up here soon so that you can see what future episodes we'll have in them but i'm posting each episode to the site as as they occur as well so anyway thank you very much click subscribe i will see you next time you
Info
Channel: Jeff Geerling
Views: 88,984
Rating: 4.9687891 out of 5
Keywords: kubernetes, devops, minikube, introduction, intro, beginners, guide, k8s, k3s, eks, gke, aks, geerlingguy, kube101, kube, kubectl
Id: IcslsH7OoYo
Channel Id: undefined
Length: 43min 22sec (2602 seconds)
Published: Wed Nov 18 2020
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.