ChatGPT也不会的k8s安装方法——极简安装法

要学习k8s,首先要有一个k8s。那么如何才能获得一个k8s呢?这不由得让我想到了最近比较火的ChatGPT,以下简称小恰。

俗话说,遇事不决问小恰,解决效率翻上翻。让我们先来看看小恰怎么回答的吧。

问小恰

由于众所周知的原因,国内使用小恰比较麻烦,这里我们使用一个chatgpt的命令行工具,chatgo。

代码在github上可以找到(https://github.com/xavierxcn/chatgo)。

# 安装go install github.com/xavierxcn/chatgo@latest
# 设置openai tokenchatgo set <your-token>
# 开启一个对话chatgo chatinit robot...init robot success.
> 你叫什么名字chatgo:我叫ChatGo,很高兴能够为你服务!有什么可以帮到你的吗?

这样就可以和小恰对话了,让我们试试看

​​​​​​​

> 如何快速安装k8schatgo: 安装 Kubernetes 的最快方式是使用预构建的二进制文件,如 kubeadm、kubelet 和 kubectl。以下是快速安装 Kubernetes 的步骤:1. 根据主机操作系统下载所需的二进制文件2. 在所有主机上安装二进制文件3. 在主节点上运行 kubeadm init,按照提示进行操作4. 在工作节点上运行 kubeadm join,根据主节点上的输出信息操作5. 安装 CNI 插件,如 Flannel6. 等待 Kubernetes 集群部署完成这只是简要的概述,如果需要更详细的步骤和说明,请参考 Kubernetes 官方文档。

没一句有用的,让我们问详细一点

> 请告诉我详细的安装过程和需要执行的命令              chatgo: 好的,以下是在 Ubuntu 18.04 操作系统上快速安装 Kubernetes 集群的详细步骤:## 预先要求在开始之前,确保已满足以下先决条件:- 操作系统:Ubuntu 18.04- 主机名解析:确保每个节点都可以通过主机名互相解析,例如使用主机名或 DNS 解析- 安装 Docker:使用 Docker 作为容器运行时,具体过程可以参考 [Docker 官方文档](https://docs.docker.com/engine/install/ubuntu/)- 网络设置:确保每个节点之间可以互相通信,例如在同一局域网内## 步骤 1:安装 kubeadm、kubelet 和 kubectl### 1. 添加 Kubernetes APT 存储库执行下面的命令添加 Kubernetes APT 存储库:```curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"```### 2. 安装 kubeadm、kubelet 和 kubectl执行以下命令在所有节点上安装 kubeadm、kubelet 和 kubectl:```sudo apt-get updatesudo apt-get install -y kubelet kubeadm kubectl```### 3. 禁用自动更新执行以下命令禁用 kubelet 的自动更新:```sudo apt-mark hold kubelet kubeadm kubectl```这样可以确保在稍后升级 Kubernetes 时不会自动更新这些组件,因为这可能会导致版本不一致。## 步骤 2:部署 Kubernetes 控制平面### 1. 初始化主节点选择一个节点作为 Kubernetes 主节点,然后执行以下命令进行初始化:```sudo kubeadm init --pod-network-cidr=10.244.0.0/16```其中 `--pod-network-cidr` 参数是要使用的 [CNI 插件](https://kubernetes.io/docs/concepts/cluster-administration/networking/) 网络地址段。在这个例子中,使用的是 Flannel 插件需要的 CIDR 地址段。执行上述命令后,您将看到输出,其中包含加入集群所需的命令。记下这些命令,稍后在工作节点上使用。### 2. 配置 kubectl执行以下命令配置当前用户的 kubectl:```mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config```### 3. 部署 CNI 插件执行以下命令安装 Flannel CNI 插件:```kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml```## 步骤 3:加入工作节点在工作节点上执行第一步中提供的加入命令,例如:```sudo kubeadm join <ip_address>:<port> --token <token> --discovery-token-ca-cert-hash <hash>```其中,`<ip_address>:<port>` 是主节点的 IP 地址和端口号,`<token>` 和 `<hash>` 是在主节点初始化时为您提供的。执行上述命令后,您应该在主节点上看到输出,确认节点已成功加入集群。## 步骤 4:验证集群状态执行以下命令验证 Kubernetes 集群状态:```kubectl get nodes```如果所有节点都已成功加入集群,则应该看到所有节点的状态为 `READY`。恭喜您,您已成功安装 Kubernetes 集群!

好吧,看来小恰也只会这些了。

这显然不是我们想要的,那实际应该怎么做呢?具体步骤如下。

使用kind安装本地实验环境

kind是一个快速安装k8s的工具,其含义为K8s in Docker,具体的原理这里就不深究了,我们只需要知道可以通过kind快速获得一个可用的k8s学习和实验环境即可:

1. 安装 Kind

使用以下命令来安装 Kind:

# win

choco install kind

# mac

brew install kind

# linux​​​​​​​

curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.17.0/kind-linux-amd64chmod +x ./kindsudo mv ./kind /usr/local/bin/kind

kind依赖docker,因此需要我们自行安装好docker才行。

2. 创建集群

使用以下命令来创建一个 K8s 集群:

kind create cluster --name mycluster

此命令会默认创建一个名为 `mycluster` 的本地 K8s 集群。可以在命令行参数中指定自定义的名称、配置文件等。

3. 部署应用

可以使用 `kubectl` 直接部署应用到本地的 Kind 集群中:

​​​​​​​

kubectl create deployment nginx --image=nginxkubectl expose deployment nginx --port=80 --type=LoadBalancer

这个示例是部署一个 Nginx 应用,并将其暴露为一个 `Load Balancer` 类型的服务。

4. 销毁集群

当你完成实验后,可以使用以下命令来销毁 K8s 集群:

kind delete cluster --name mycluster

这样,Kubernetes 集群将被永久移除。

这是一个简单的实验环境,可以在自己的电脑上轻松安装一个 K8s 容器集群。这个环境通常被用来测试一些 DemonSet 或 StatefulSet 来模拟在 Kubernetes 生产环境下的一些行为。

使用kubekey安装生产环境

kind只适合在本地实验环境使用,要在生产环境中安装k8s的话,还是对环境有更高的要求。目前较为常规的做法依然是使用kubeadm来安装,也就是上面小恰告诉我们的方法。然而随着k8s社区的越发壮大,已经出现了一些比较方便我们安装k8s的工具,kubekey就是其中之一。下面我们使用kubekey来安装一套能够满足生成环境的k8s。

我们安装一个三主五从的高可用k8s环境,首先需要准备七台服务器,配置好用户名和密码,最好是使用root,以避免一些奇奇怪怪的问题。

1. 安装kubekey

​​​​​​​

curl -sfL https://get-kk.kubesphere.io | sh -chmod +x kk

2. 创建并编译k8s集群的配置

apiVersion: kubekey.kubesphere.io/v1alpha2kind: Clustermetadata:name: samplespec:hosts:- {name: master1, address: 192.168.32.20, internalAddress: 192.168.32.27, password: "Haishen.123"}- {name: master2, address: 192.168.32.21, internalAddress: 192.168.32.170, password: "Haishen.123"}- {name: master3, address: 192.168.32.22, internalAddress: 192.168.32.36, password: "Haishen.123"}- {name: node1, address: 192.168.32.23, internalAddress: 192.168.32.227, password: "Haishen.123"}- {name: node2, address: 192.168.32.24, internalAddress: 192.168.32.230, password: "Haishen.123"}- {name: node3, address: 192.168.32.25, internalAddress: 192.168.32.247, password: "Haishen.123"}- {name: node4, address: 192.168.32.26, internalAddress: 192.168.32.121, password: "Haishen.123"}- {name: node5, address: 192.168.32.27, internalAddress: 192.168.32.130, password: "Haishen.123"}roleGroups:etcd:- master1- master2- master3control-plane:- master1- master2- master3worker:- master1- master2- master3- node[1:5]controlPlaneEndpoint:## Internal loadbalancer for apiserversinternalLoadbalancer: haproxydomain: lb.kubesphere.localaddress: ""port: 6443kubernetes:version: v1.23.10clusterName: cluster.localautoRenewCerts: truecontainerManager: dockeretcd:type: kubekeynetwork:plugin: calicokubePodsCIDR: 10.233.64.0/18kubeServiceCIDR: 10.233.0.0/18## multus support. https://github.com/k8snetworkplumbingwg/multus-cnimultusCNI:enabled: falseregistry:privateRegistry: ""namespaceOverride: ""registryMirrors: []insecureRegistries: []addons:- name: nfs-clientnamespace: kube-systemsources:chart:name: nfs-client-provisionerrepo: https://charts.kubesphere.io/mainvaluesFile: /root/nfs-client.yaml

3. 一键安装

./kk create cluster -f config-sample.yaml

然后等待片刻。。

4. 安装完成

#####################################################
###              Welcome to KubeSphere!           ###
#####################################################Console: http://192.168.32.27:30880Account: adminPassword: P@88w0rdNOTES:1. After you log into the console, please check themonitoring status of service components inthe "Cluster Management". If any service is notready, please wait patiently until all componentsare up and running.2. Please change the default password after login.#####################################################https://kubesphere.io             2020-xx-xx xx:xx:xx#####################################################

此时便安装完成了。

使用kubesphere管理k8s集群

通过上面的kubekey,我们不仅获得了一个k8s环境,同时也获得了一个图形化的k8s管理系统,kubesphere。

打开上一步我们获得的网址:http://192.168.32.27:30880

登录进去查看一下

对于k8s新手小白来说,有这样一套友好的安装步骤和图形化管理系统,将极大的减轻我们的认知负担,加快我们学习k8s的进度和提升我们的认知。

总结

以上便是k8s的急速安装步骤,是不是特别的简单呢。

如果有什么疑问,想了解更多,想学习如何使用k8s,欢迎关注我。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT用法

机器学习技术 chatgpt技术是一种机器学习技术&#xff0c;可以用于在线对话和社交机器人。通过将海量语料库中生成的文本进行建模和训练&#xff0c;可以生成准确、多样性和流畅的自然语言响应。 社交 chatgpt主要用于在线对话和社交机器人&#xff0c;其主要原理是基于神经…

ChatGPT开始颠覆整个教育系统!全球多所高校都要求学生远离ChatGPT

近期&#xff0c;人工智能&#xff08;AI&#xff09;领域动作频频&#xff0c;特别是以OPENAI公司的ChatGPT为代表的生成型AI面市以来&#xff0c;引发各界关注&#xff0c;有关ChatGPT的多个话题登上热搜。 目录 蹿红的AIGC到底是啥&#xff1f;ChatGPT又是啥&#xff1f; …

Chatgpt 颠覆你的认知,为什么会爆火?

号外&#xff1a;谷歌公司周三在巴黎举行活动&#xff0c;演示其人工智能聊天机器人“巴德”(Bard)的新功能&#xff0c;但却在回答问题时尴尬出错&#xff0c;引发了外界对于巴德准确性的担忧&#xff0c;让投资者担心谷歌是否在未来互联网搜索竞争中落于下风&#xff0c;拖累…

ChatGPT颠覆者来了,能替代90%的人的工作?

前言 Auto GPT是一个实验性开源应用程序&#xff0c;展示了GPT-4语言模型的功能。该程序由GPT-4驱动&#xff0c;将LLM“思想”链接在一起&#xff0c;以自主实现您设定的任何目标。作为GPT-4完全自主运行的首批例子之一&#xff0c;Auto GPT突破了人工智能的极限。 特征 &a…

ChatGPT点火,AI数据服务“供能”,谁是最大赢家?

2023年以来&#xff0c;由ChatGPT点火&#xff0c;人工智能领域市场热度飙升。 回顾整个3月&#xff0c;3月14日&#xff0c;OpenAI团队又发布了GPT-4&#xff0c;并推出ChatGPT Plus&#xff1b;3月16日&#xff0c;百度的生成式AI产品“文心一言”也如期而至。这些生成式AI产…

新基建风向标:关于ChatGPT,必知10件事!

进入2023年以来&#xff0c;ChatGPT大火。朋友圈里充斥着关于ChatGPT的各种消息&#xff0c;从GPT-1到GPT 3.5&#xff0c;再到Chat GPT和GPT-4&#xff0c;从OpenAI和微软到各种ChatGPT创业和项目&#xff0c;仿佛一夜之间跨入了人工智能新基建时代。那么&#xff0c;对于普通…

ChatGPT 背后的核心技术

架构师指南 我们都是架构师&#xff01;架构未来&#xff0c;你来不来&#xff1f; 缘起 输入几个简单的关键词&#xff0c;AI能帮你生成一篇短篇小说甚至是专业论文。作为上知天文下知地理对话语言模型&#xff0c;最近大火的ChatGPT在邮件撰写、视频脚本、文本翻译、代码编写…

TOM VIP至尊邮|商务人士必用的个人邮箱

商务人士在普通人眼里是可以被一眼区分的&#xff0c;他们都是西装革履造型精致&#xff0c;每天好像有忙不完的合作谈不完的生意&#xff0c;分分钟都是千万大单。所以商务人士也逐渐成为一个独立的商品名词&#xff0c;所有和商务人士沾边的商品都是非常有价值和值得使用的。…

TOM VIP邮箱,化繁为简,在微信里收发邮件

你还在用电子邮箱吗?随着移动互联时代的大火&#xff0c;近几年涌入了众多移动产品。特别是自微信推出新玩法—微信企业号后&#xff0c;更是在移动应用市场掀起了一场巨浪。为增加用户在使用时的便捷性&#xff0c;TOM VIP邮箱于2016年率先推出了“随心邮”服务&#xff0c;整…

网易邮箱大师代收gmail

设置网易邮箱大师, 代收 gmail邮件 1, 登录gmail, 启用POP 2, 启用IMAP, 保存更改 3, 在网易邮箱大师上登录, 要代收的邮箱, 即可 测试了一下 qq网页端, 不支持代收gmail, 手机端qq邮箱可以 阿里云邮箱, 添加其他邮箱gmail, 没成功 有时间再了解一下POP和IMAP协议, 好像…

谷歌邮箱SMTP Password:SMTP授权码如何获得

谷歌邮箱怎么开通查看使用设置第三方客户端密码&#xff08;授权码&#xff09;&#xff1f; 第 11 步&#xff1a;你可以看到“应用专用密码”的附加选项&#xff0c;请单击此处设置 ▼ 第 12 步&#xff1a;需要再次登录Gmail邮箱 ▼ 第 13 步&#xff1a;添加应用密码&…

如何应对ChatGPT这一波AI浪潮

最近我在写一系列文章&#xff0c;其中包括《ChatGPT 实战系列》和《WPS Office AI实战系列》。想通过这些文章提供实践指导&#xff0c;既自己动手实践了&#xff0c;也能与大家分享我的实践结果&#xff0c;这是一个学习的过程。在实践过程中&#xff0c;我发现有些实用的方面…

ChatGPT的出圈与大佬们的焦虑

点击文末“阅读原文”即可收听本期节目 剪辑、音频 / 朱峰 编辑 / SandLiu 卷圈 监制 / 姝琦 文案 / 朱峰 产品统筹 / bobo ChatGPT这次出圈了&#xff0c;似乎每个人都在讨论这个AI产品给我们未来生活带来的改变&#xff0c;除了我们普通人以外&#xff0c;一些大佬也纷…

行业报告 | 人工智能时代的营销新趋势

原创 | 文 BFT机器人 01 科技推动时代发展进步 随着电子计算机的发明和使用&#xff0c;打开了人类知识的全方位信息时空&#xff0c;人类由此从工业文明走进信息文明&#xff0c;渐渐地网络成为了人们进行社会活动的基本平台。 智能手机的出现将人们剩余的碎片化时间也连接到了…

《微SaaS创富周刊》第6期:2023年你应该了解的10个生产力工具 | Product Hunt

导读&#xff1a; 大家好&#xff01;第6期《微SaaS创富周刊》问世啦&#xff01;本周刊面向独立开发者、早期创业团队&#xff0c;报道他们主要的产品形态——微SaaS如何变现的最新资讯和经验分享等。所谓微SaaS&#xff0c;就是“针对利基市场的SaaS”&#xff0c;特点是一般…

致敬2202年,这些优秀的裁缝们

文 | 鹰钩鼻涕虫 2202年过去了&#xff0c;不知道小伙伴们是否和我一样&#xff0c;绝大多数时间处于迷茫之中&#xff0c;除去其他因素不谈&#xff0c;在最后一个月到来之前&#xff0c;NLP 学界的表现似乎不如前几年那样“精彩”&#xff0c;甚至可说是“寡淡”&#xff0c;…

用 AudioGPT 输入自然语言,可以让 ChatGPT 唱歌了?

夕小瑶科技说 原创 作者 | 智商掉了一地 借助 ChatGPT 强大的理解与生成能力&#xff0c;结合基础语音模型&#xff0c;集成模型 AudioGPT 诞生了&#xff01; 最近基于 ChatGPT 的二创如雨后春笋一样冒出&#xff0c;上周我们一起看了黑客松优秀作品大赏&#xff0c;这周又有…

第二次报告(软件需求规格说明最终版)

软件需求规格说明 1. 引言 1. 1目的 1. 2文档约定 1. 3预期的读者和阅读建议 1. 4产品的范围 1. 5参考文献 2. 综合描述 2.1产品的前景 2.2产品的功能 2.3用户类和特征 2.4运行环境 2.5设计和实现上的限制 2.6假设和依赖 3. 外部接口需求 3. 1用户界面 3. 2硬件…

Telnet登录提权

一、实验环境 目标主机&#xff1a; Metasploit2虚拟机 192.168.20.143 攻击主机&#xff1a; Kali2虚拟机 192.168.20.133 二、实验过程 1.msf登录telnet 详情参考Telnet暴力破解_Myu_wzy的博客-CSDN博客此文章 2.msf连接shell下载exploit 在本地下载exploit&#xff0c;…