Oracle Linux 7.9 安装minikube体验

2024-08-25 10:20

本文主要是介绍Oracle Linux 7.9 安装minikube体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.环境信息

前置所需:

       操作系统:Oracle Linux 7.9

       虚拟机配置:CPU:4核 内存:4G

       容器:docker   26.1.4

安装minikube后环境:

       minikube: v1.33.1

       kubernetes:v1.23.3

      minukube体验说明:使用VirtualBox安装的虚拟机Oracle Linux7.9(已经安装了Docker容器),然后在这环境中安装minikube单个k8s节点,并安装dashboard使用浏览器查看k8s的详细信息,并在节点中创建nginx,使用浏览器访问到服务。

2.安装minikube

       minikube官网Welcome! | minikubeminikube is local Kubernetesicon-default.png?t=N7T8https://minikube.sigs.k8s.io/docs/

  2.1 minkube环境要求

  • 2 CPUs or more
  • 2GB of free memory
  • 20GB of free disk space
  • Internet connection
  • Container or virtual machine manager, such as: Docker, QEMU, Hyperkit, Hyper-V, KVM, Parallels, Podman, VirtualBox, or VMware Fusion/Workstation

   2.2 安装minikube

    curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

sudo install minikube-linux-amd64 /usr/local/bin/minikube

 2.3启动minikube cluster

 minikube start  --image-mirror-country=cn  \

--image-repository='registry.cn-hangzhou.aliyuncs.com/google_containers'  \

   --vm-driver=none   --kubernetes-version=v1.23.3

   2.3.1 出错,缺少conntrack-tools

 Exiting due to GUEST_MISSING_CONNTRACK: Sorry, Kubernetes 1.23.3 requires crictl to be installed in root's path

  解决:

#安装conntrack-tools

 yum install conntrack-tools  -y

 rpm -qa | grep conntrack-tools

 再次执行,成功。

2.4 查看minikube创建的k8s集群的pod及node信息

 minikube kubectl -- get pods  -A

minikube kubectl -- get nodes

2.5 配置alias缩减minikube kubectl指令

    1.临时配置,当前会话生效

alias kubectl="minikube kubectl --"

    2.永久生效,配置当前用户.bashrc文件

 vi      ~/.bashrc 

 cat    ~/.bashrc

 source  ~/.bashrc

 验证效果:

  kubectl get pods -n kube-system   (实际应该是minikube kubectl get pods -n kube-system)

3.安装dashboard

  有一个坑,安装完minikube的集群完,文件/etc/docker/daemon.json 镜像加速的配置没了,导致后续没法下载镜像。

#创建仪表盘dashboard

minikube dashboard

 问题:dashboard一直verifying中,查看问题。

kubectl get pods -A

一直在创建中或拉取镜像。

排查问题:

#查看其中的一个,发现是镜像拉取失败的原因,应该是访问不了的原因。

kubectl describe pods kubernetes-dashboard-6f4c897964-8d7rl  -n kubernetes-dashboard

解决问题:

从国内库下载镜像metrics-scraper、dashboard

#手动pull

docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-scraper:v1.0.8

#手动pull

docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/dashboard:v2.7.0

太难了,镜像加速最近也很不稳定(不科学下太难了),两个都下载好了。

再重新执行下minikube dashboard

如下会有一个连接地址,这个只能当前虚拟机内才可以访问。

http://127.0.0.1:36991/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/

查看两个dashboard的pod都正常了

要想从当前宿主机电脑访问执行如下命令 --port指定虚拟机暴露端口,--address为当前虚拟机ip

kubectl proxy --port=9900 --address='192.168.56.103' --accept-hosts='^.*' &

浏览器访问当前路径

http://192.168.56.103:9900/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/

4.部署nginx应用

4.1创建nginx

kubectl create deployment my-nginx --image=hub.atomgit.com/library/nginx:alpine

4.2暴露到集群外

kubectl expose deployment my-nginx --type=NodePort --port=80

4.3获取NodePort端口

kubectl get services

4.4宿主机浏览器访问nginx

如上使用的的port为80:31098/TCP

使用http://虚拟机ip:31098

如http://192.168.56.103:31098

Docker镜像失效参考文章:https://blog.csdn.net/weixin_50160384/article/details/139861337

这篇关于Oracle Linux 7.9 安装minikube体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1105292

相关文章

从零教你安装pytorch并在pycharm中使用

《从零教你安装pytorch并在pycharm中使用》本文详细介绍了如何使用Anaconda包管理工具创建虚拟环境,并安装CUDA加速平台和PyTorch库,同时在PyCharm中配置和使用PyTor... 目录背景介绍安装Anaconda安装CUDA安装pytorch报错解决——fbgemm.dll连接p

linux打包解压命令方式

《linux打包解压命令方式》文章介绍了Linux系统中常用的打包和解压命令,包括tar和zip,使用tar命令可以创建和解压tar格式的归档文件,使用zip命令可以创建和解压zip格式的压缩文件,每... 目录Lijavascriptnux 打包和解压命令打包命令解压命令总结linux 打包和解压命令打

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

linux如何复制文件夹并重命名

《linux如何复制文件夹并重命名》在Linux系统中,复制文件夹并重命名可以通过使用“cp”和“mv”命令来实现,使用“cp-r”命令可以递归复制整个文件夹及其子文件夹和文件,而使用“mv”命令可以... 目录linux复制文件夹并重命名我们需要使用“cp”命令来复制文件夹我们还可以结合使用“mv”命令总

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

MySQL安装时initializing database失败的问题解决

《MySQL安装时initializingdatabase失败的问题解决》本文主要介绍了MySQL安装时initializingdatabase失败的问题解决,文中通过图文介绍的非常详细,对大家的学... 目录问题页面:解决方法:问题页面:解决方法:1.勾选红框中的选项:2.将下图红框中全部改为英

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,

Linux使用cut进行文本提取的操作方法

《Linux使用cut进行文本提取的操作方法》Linux中的cut命令是一个命令行实用程序,用于从文件或标准输入中提取文本行的部分,本文给大家介绍了Linux使用cut进行文本提取的操作方法,文中有详... 目录简介基础语法常用选项范围选择示例用法-f:字段选择-d:分隔符-c:字符选择-b:字节选择--c

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

Linux使用nload监控网络流量的方法

《Linux使用nload监控网络流量的方法》Linux中的nload命令是一个用于实时监控网络流量的工具,它提供了传入和传出流量的可视化表示,帮助用户一目了然地了解网络活动,本文给大家介绍了Linu... 目录简介安装示例用法基础用法指定网络接口限制显示特定流量类型指定刷新率设置流量速率的显示单位监控多个