《Kubernetes入门实战课》课程学习笔记(一)

news2025/4/10 20:32:42

迎难而上,做云原生时代的弄潮儿

  • 现在 Kubernetes 已经没有了实际意义上的竞争对手,它的地位就如同 Linux 一样,成为了事实上的云原生操作系统,是构建现代应用的基石。
  • 现代应用是什么?
    • 是微服务,是服务网格,这些统统要围绕着容器来开发、部署和运行。
    • 使用容器就必然要用到容器编排技术,在现在只有唯一的选项,那就是 Kubernetes。
  • “云原生”已经是现在 IT 界的普遍共识,是未来的大势所趋。

学习 Kubernetes 有哪些难点

  • 理论上讲,学习 Kubernetes 只要看资料就足够了,但实际情况却是学习起来仍然困难重重,我们会遇到很多意想不到的问题。
  • Kubernetes 技术栈的特点可以用四个字来概括,那就是“新、广、杂、深”。
    • “新”是指 Kubernetes 用到的基本上都是比较前沿、陌生的技术,而且版本升级很快,经常变来变去。
    • “广”是指 Kubernetes 涉及的应用领域很多、覆盖面非常广,不太好找到合适的切入点或者突破口。
    • “杂”是指 Kubernetes 的各种实现比较杂乱,谁都可以上来“掺和”一下,让人看的眼晕。
    • “深”是指 Kubernetes 面对的每个具体问题和方向,都需要有很深的技术背景和底蕴,想要吃透很不容易。

动手实践才是最好的学习方式

  • “工欲善其事,必先利其器”,所以在正式学习之前,我们必须要有一个基本的实验环境,要能够在环境中熟悉 Kubernetes 的操作命令、验证测试 Kubernetes 的各种功能。
    • 现在的虚拟机软件已经非常成熟可靠了,能够在一台电脑里虚拟出多台主机,这些虚拟主机用起来和真实的物理主机几乎没有什么差异,只要你的电脑配置不是太差,组成一个三四台虚拟服务器的小集群是毫无问题的,而且虚拟机的创建删除都非常简单,成本极低。
    • 使用虚拟机软件还有一点额外的好处,由于很多云服务商内部也在大量使用虚拟服务器,Kubernetes 里的容器技术也与虚拟机有很多相似之处,通过使用虚拟机,我们还能顺便对比这些技术的异同点,加深对 Kubernetes 的理解。
  • 我们的主要目的是学习,所以易用性应该是首要关注点,另外系统还应该能够同时支持 x86_64 和 arm64。建议选择 Ubuntu 22.04 Jammy Jellyfish 桌面版(Ubuntu 22.04),它有足够新的特性,非常适合运行 Kubernetes,而内置的浏览器、终端等工具也很方便我们的调试和测试。

如何配置虚拟机

  • 准备好虚拟机软件和 Ubuntu 光盘镜像之后,我们就可以来安装虚拟机了。不过在安装之前,我们必须要把虚拟机适当地配置一下。
    • Kubernetes 不是一般的应用软件,而是一个复杂的系统软件,对硬件资源的要求有一点高,好在并不太高,2 核 CPU、2G 内存是最低要求,如果条件允许,建议把内存增大到 4G,硬盘 40G 以上,这样运行起来会更流畅一些。
    • 另外,一些对于服务器来说不必要的设备也可以禁用或者删除,比如声卡、摄像头、软驱等等,可以节约一点系统资源。
      在这里插入图片描述
  • 由于 Linux 服务器大多数要以终端登录的方式使用,多台服务器还要联网,所以在网络方面我们还需要特别设置。
    • 打开编辑中的虚拟网络编辑器,添加一个自定义的 NAT模式 VMnet3;
    • 将 IP 地址改为 192.168.10.0。
    • 勾选 DHCP 启用它。
    • 将虚拟机的网络适配器改为自定义:VMnet3
      在这里插入图片描述

如何安装虚拟机

  • 把 CPU、内存、硬盘、网络都配置好之后,再加载上 Ubuntu 22.04 的光盘镜像,我们就可以开始安装 Linux 了。
  • 在安装的过程中,为了节约时间,建议选择“最小安装”,同时物理断网,避免下载升级包。
  • 安装完 Linux 系统之后,我们还要再做一些环境的初始化操作。
    • 首先我们需要用 Ctrl + Alt + T 打开命令行窗口,然后用 apt 从 Ubuntu 的官方软件仓库安装 git、vim、curl 等常用工具:sudo apt updatesudo apt -y git vim curl jqsudo apt -y openssh-server,然后进行网络设置:
      在这里插入图片描述
    • 这些工作完成之后,我建议你再给虚拟机拍个快照,做好备份工作,这样万一后面有什么意外发生环境被弄乱了,也可以轻松回滚到拍快照时的正确状态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/766015.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

聊聊Spring注解@Transactional失效的那些事 | 京东云技术团队

一、前言 emm,又又又踩坑啦。这次的需求主要是对逾期计算的需求任务进行优化,现有的计算任务运行时间太长了。简单描述下此次的问题:在项目中进行多个数据库执行操作时,我们期望的是将其整个封装成一个事务,要么全部成…

Spring源码学习-后置处理器,Autowired实现原理

目录 Autowired实现原理populateBeanInstantiationAwareBeanPostProcessorAutowiredAnnotationBeanPostProcessor 后置处理器BeanFactory的后置处理器BeanDefinitionRegistryPostProcessorBeanFactoryPostProcessoConfigurationClassPostProcessor Bean的后置处理器BeanProcess…

2020年国赛高教杯数学建模D题接触式轮廓仪的自动标注解题全过程文档及程序

2020年国赛高教杯数学建模 D题 接触式轮廓仪的自动标注 原题再现 轮廓仪是一种两坐标测量仪器(见图1),它由工作平台、夹具、被测工件、探针、传感器和伺服驱动等部件组成(见图2)。   接触式轮廓仪的工作原理是&am…

antd-React Table 中文转化

1.首先需要进行中文包导入 2.引入标签对Table进行包裹即可 import zh_CN from antd/lib/locale-provider/zh_CN;import {ConfigProvider} from antd;<ConfigProvider locale{zh_CN}><Tablecolumns{columns}rowKey{record > record.id}dataSource{data}pagination{p…

[Java]重写equals为什么要重写hashcode???配合HashMap源码一起理解

文章目录 1、什么是hashCode2、为什么要有hashCode3、为什么重写 equals 时必须重写 hashCode 方法&#xff1f;4、易错点 1、什么是hashCode hashCode()是Object定义的方法&#xff0c;它将返回一个整型值&#xff0c;这个方法通常用来将对象的内存地址转换为整数之后返回&am…

融云「北极星」数据监控平台:数据可视通晓全局,精准分析定位问题

↑ 点击预约“融云北极星”直播↑ 点击预约“实时社区”直播 近期&#xff0c;融云“北极星”数据系统完成功能迭代&#xff0c;新模块“数据监控平台”正式“履新上任”。关注【融云全球互联网通信云】了解更多 点击图片查看更多详情 此前&#xff0c;“北极星”系统主要为客…

MYSQL中的锁(面试难点重点)

首先说一下 这个加锁是个啥子过程呢 我们拿一条记录举例,这个记录就放在这,没人操作它,他就没生成锁结构, 直到有个事务操作它了,然后给它才生成了个锁结构,锁结构两个参数 trx(生成该锁的事务) is_waiting(正在等待就是:true 没在等待就是 false) (锁里面很多参数 这里这是为…

Linux/Unix-gcc编译回顾

1、gcc编译为可执行程序四步骤&#xff1a;预处理->编译->汇编->链接 注意&#xff1a;-o 用于修改生产的文件名 2、gcc常用参数 指定头文件&#xff1a;-I 语法&#xff1a; gcc -I 头文件所在文件夹路径 源文件 -o 生成文件名 如果头文件和源文件中同一个文件夹…

事务的实现原理

事务的实现 简介特性&#xff08;ACID&#xff09;状态与分类 实现机制日志机制redo logundo log 锁机制 如何使用 简介 有许多小伙伴初学事务还不太清楚是干什么的&#xff0c;那么我们在简介中一次性将事务给搞懂 首先我们先来简单的说一下事务是什么&#xff0c;以便更好的去…

企业数据治理实战总结--数仓面试必备

文章整理自涤生大数据老师宇哥&#xff0c;宇哥是历任中国电信&#xff0c;平安银行&#xff0c;微众银行&#xff0c;众安保险等多家公司擅长大数据求职面试&#xff0c;数仓开发管理&#xff0c;数据治理&#xff0c;数据质量等工作&#xff0c;主导过相关平台的建设 1 数据…

mybatis和dbeaver安装部署连接测试

ORM对象关系映射&#xff0c;把对象和数据库中的数据进行映射。mybatis是orm框架&#xff0c;mybatis-plus是mybatis的增强工具&#xff0c;简化开发。 1.准备mysql数据库 首先安装mysql https://dev.mysql.com/downloads/file/?id518835 设置密码&#xff1a;0000 然后下db…

大数据学习01-Zookeeper分布式集群部署

二、下载 zookeeper官网&#xff0c;本文使用的是zookeeper3.4.8版本 三、安装部署 将下载好的安装包上传至linux服务器上 解压安装包 tar -zxvf zookeeper-3.4.8.tar.gz -C /home/localzookeeper目录重命名 mv zookeeper-3.4.8 zookeeper配置环境 vim /etc/profile添加…

自定义实现list及其功能

#pragma once #include <iostream> #include <assert.h> using namespace std;namespace test {//******************************设置结点******************************template<class T>struct list_node{T _data;list_node<T>* _next;list_node&l…

SQL27 查看不同年龄段的用户明细

selectdevice_id,gender,casewhen age>25 then 25岁及以上when age>20 then 20-24岁when age<20 then 20岁以下else 其他end as age_cut from user_profile

Python property 定义与应用

目录 一、前言二、定义 一、前言 在 Python 类这一节中&#xff0c;会涉及到属性的私有化&#xff0c;私有化的好处在于我们无法轻易地更改类体中属性值&#xff0c;而对于类体中的私有化属性其实也并非真正的私有化&#xff0c;而是一种伪私有化&#xff0c;我们可通过 dir()…

71、redis主从复制的核心原理

redis主从复制的核心原来 通过执行slaveof命令或设置slaveof选项&#xff0c;让一个服务器去复制另一个服务器的数据。主数据库可以进行读写操作&#xff0c;当写操作导致数据变化时会自动将数据同步给从数据库。而从数据库一般是只读的&#xff0c;并接受主数据库同步过来的数…

Android JetPack Compose之主题的理解与使用

目录 概述1.什么是MaterialTheme2.MaterialTheme与CompositionLocal的联系2.1 MaterialTheme的工作原理2.2 CompositionLocal2.3 CompositionLocal的两种创建方式2.3.1 compositionLocalOf2.3.2 staiticCompositionLocalOf 2.4 CompositionLocal总结 概述 根据百度百科知识&am…

Springboot + Vue 上传Word文档并保留内部格式

因为业务需求&#xff0c;上传Word文件需要编辑&#xff0c;但如何使用Blob方式&#xff0c;在数据库里存文件&#xff0c;就会造成格式消失。所以修改思路&#xff1a;上传文件到服务器本地&#xff0c;保证数据存储的完整性。 前端 <el-upload class"upload-demo&quo…

复习PHP基础教程

PHP 安装 PHP 简介PHP 语法 我需要什么&#xff1f; 如需开始使用 PHP&#xff0c;您可以&#xff1a; 使用支持 PHP 和 MySQL 的 web 主机在您的 PC 上安装 web 服务器&#xff0c;然后安装 PHP 和 MySQL。 使用支持 PHP 的 Web 主机 如果您的服务器支持 PHP&#xff0c…

基数排序|RadixSort|C++实现

前言 那么这里博主先安利一些干货满满的专栏了&#xff01; 首先是博主的高质量博客的汇总&#xff0c;这个专栏里面的博客&#xff0c;都是博主最最用心写的一部分&#xff0c;干货满满&#xff0c;希望对大家有帮助。 高质量干货博客汇总https://blog.csdn.net/yu_cblog/c…