openeular2203.sp4部署K8S+DOCKER环境
openeular系统部署部署K8S+docker运行环境
1、系统环境
操作系统:openeular22.03sp4
架构:X86
2、配置环境
①配置DNS,以确保域名解析正常。
创建resolv.conf文件。
touch /etc/resolv.conf
配置DNS域名解析。
打开resolv.conf文件。
vi /etc/resolv.conf
按“i”进入编辑模式,在文件中添加如下内容。
nameserver 114.114.114.114
说明
本例中DNS地址配置为114.114.114.114,可根据实际情况进行配置,请确保“/etc/resolv.conf”中的DNS地址可用。
按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
②关闭selinux
SELinux可能会限制应用的访问权限,因此需要关闭SELinux,以确保应用能够正常工作。关闭SELinux可能会降低系统的安全性,使系统更容易受到潜在的安全问题和攻击。在关闭之前,您应该仔细评估潜在的风险。请在所有节点关闭SELinux。
临时关闭SELinux。
setenforce 0
永久关闭SELinux。
执行如下命令修改配置文件,永久关闭SELinux。
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config
③为保证业务组件的相互通信,可在所有节点关闭防火墙。
关闭防火墙。
systemctl stop firewalld.service
systemctl disable firewalld.service
查看防火墙。
systemctl status firewalld.service
④安装docker
添加源
dnf config-manager --add-repo https://repo.oepkgs.net/openeuler/rpm/openEuler-22.03-LTS-SP4/contrib/ai/x86_64
更新源索引
dnf clean all && dnf makecache
安装 docker-ce 软件包
dnf install docker-ce
3、单节点部署
安装依赖。
yum install -y curl socat conntrack openssl ipset ipvsadm
创建 Kubernetes 集群
如果您访问 GitHub/Googleapis 受限,请登录任意集群节点,执行以下命令设置下载区域:
export KKZONE=cn
执行以下命令下载 KubeKey 最新版本:
curl -sfL https://get-kk.kubesphere.io | sh -
下载完成后当前目录下将生成 KubeKey 二进制文件 kk。
执行以下命令为 KubeKey 二进制文件 kk 添加执行权限:
sudo chmod +x kk
执行以下命令创建安装配置文件 config-sample.yaml:
./kk create config --with-kubernetes <Kubernetes version>
将 替换为实际需要的版本,例如 v1.27.4。KubeSphere 企业版默认支持 Kubernetes v1.21~1.30。
命令执行完毕后将生成安装配置文件 config-sample.yaml。
配置config-sample.yaml,以下为单节点部署的配置文件
apiVersion: kubekey.kubesphere.io/v1alpha2
kind: Cluster
metadata:
name: sample
spec:
hosts:
- {name: node1, address: 192.168.32.150, internalAddress: 192.168.32.150, user: root, password: "********"}
roleGroups:
etcd:
- node1
control-plane:
- node1
worker:
- node1
controlPlaneEndpoint:
## Internal loadbalancer for apiservers
# internalLoadbalancer: haproxy
domain: lb.kubesphere.local
address: ""
port: 6443
kubernetes:
version: v1.23.10
clusterName: cluster.local
autoRenewCerts: true
containerManager: docker
etcd:
type: kubekey
network:
plugin: calico
kubePodsCIDR: 10.233.64.0/18
kubeServiceCIDR: 10.233.0.0/18
## multus support. https://github.com/k8snetworkplumbingwg/multus-cni
multusCNI:
enabled: false
registry:
privateRegistry: ""
namespaceOverride: ""
registryMirrors:
- "https://hub-mirror.c.163.com"
- "https://mirror.baidubce.com"
- "https://ccr.ccs.tencentyun.com"
- "https://docker.1panelproxy.com"
- "https://5e96702d4787418295070cded678a7b6.mirror.swr.myhuaweicloud.com"
- "https://docker.m.daocloud.io"
- "https://docker.imgdb.de"
- "https://docker.wanpeng.life"
- "https://docker.1panel.live"
- "https://hk11.606166.xyz"
- "https://docker.1ms.run"
insecureRegistries: []
addons: []
---
apiVersion: installer.kubesphere.io/v1alpha1
kind: ClusterConfiguration
metadata:
name: ks-installer
namespace: kubesphere-system
labels:
version: v3.4.1
spec:
persistence:
storageClass: ""
authentication:
jwtSecret: ""
local_registry: ""
# dev_tag: ""
etcd:
monitoring: false
endpointIps: localhost
port: 2379
tlsEnable: true
common:
core:
console:
enableMultiLogin: true
port: 30880
type: NodePort
# apiserver:
# resources: {}
# controllerManager:
# resources: {}
redis:
enabled: false
enableHA: false
volumeSize: 2Gi
openldap:
enabled: false
volumeSize: 2Gi
minio:
volumeSize: 20Gi
monitoring:
# type: external
endpoint: http://prometheus-operated.kubesphere-monitoring-system.svc:9090
GPUMonitoring:
enabled: false
gpu:
kinds:
- resourceName: "nvidia.com/gpu"
resourceType: "GPU"
default: true
es:
# master:
# volumeSize: 4Gi
# replicas: 1
# resources: {}
# data:
# volumeSize: 20Gi
# replicas: 1
# resources: {}
enabled: false
logMaxAge: 7
elkPrefix: logstash
basicAuth:
enabled: false
username: ""
password: ""
externalElasticsearchHost: ""
externalElasticsearchPort: ""
opensearch:
# master:
# volumeSize: 4Gi
# replicas: 1
# resources: {}
# data:
# volumeSize: 20Gi
# replicas: 1
# resources: {}
enabled: true
logMaxAge: 7
opensearchPrefix: whizard
basicAuth:
enabled: true
username: "admin"
password: "admin"
externalOpensearchHost: ""
externalOpensearchPort: ""
dashboard:
enabled: false
alerting:
enabled: false
# thanosruler:
# replicas: 1
# resources: {}
auditing:
enabled: false
# operator:
# resources: {}
# webhook:
# resources: {}
devops:
enabled: false
jenkinsCpuReq: 0.5
jenkinsCpuLim: 1
jenkinsMemoryReq: 4Gi
jenkinsMemoryLim: 4Gi
jenkinsVolumeSize: 16Gi
events:
enabled: false
# operator:
# resources: {}
# exporter:
# resources: {}
ruler:
enabled: true
replicas: 2
# resources: {}
logging:
enabled: false
logsidecar:
enabled: true
replicas: 2
# resources: {}
metrics_server:
enabled: false
monitoring:
storageClass: ""
node_exporter:
port: 9100
# resources: {}
# kube_rbac_proxy:
# resources: {}
# kube_state_metrics:
# resources: {}
# prometheus:
# replicas: 1
# volumeSize: 20Gi
# resources: {}
# operator:
# resources: {}
# alertmanager:
# replicas: 1
# resources: {}
# notification_manager:
# resources: {}
# operator:
# resources: {}
# proxy:
# resources: {}
gpu:
nvidia_dcgm_exporter:
enabled: false
# resources: {}
multicluster:
clusterRole: none
network:
networkpolicy:
enabled: false
ippool:
type: none
topology:
type: none
openpitrix:
store:
enabled: false
servicemesh:
enabled: false
istio:
components:
ingressGateways:
- name: istio-ingressgateway
enabled: false
cni:
enabled: false
edgeruntime:
enabled: false
kubeedge:
enabled: false
cloudCore:
cloudHub:
advertiseAddress:
- ""
service:
cloudhubNodePort: "30000"
cloudhubQuicNodePort: "30001"
cloudhubHttpsNodePort: "30002"
cloudstreamNodePort: "30003"
tunnelNodePort: "30004"
# resources: {}
# hostNetWork: false
iptables-manager:
enabled: true
mode: "external"
# resources: {}
# edgeService:
# resources: {}
gatekeeper:
enabled: false
# controller_manager:
# resources: {}
# audit:
# resources: {}
terminal:
timeout: 600
zone: ""
关键点配置:
节点信息:
spec:
hosts:
- {name: node1, address: 192.168.32.150, internalAddress: 192.168.32.150, user: root, password: "********"}
K8S的镜像拉取加速配置
registry:
privateRegistry: ""
namespaceOverride: ""
registryMirrors:
- "https://hub-mirror.c.163.com"
- "https://mirror.baidubce.com"
- "https://ccr.ccs.tencentyun.com"
- "https://docker.1panelproxy.com"
- "https://5e96702d4787418295070cded678a7b6.mirror.swr.myhuaweicloud.com"
- "https://docker.m.daocloud.io"
- "https://docker.imgdb.de"
- "https://docker.wanpeng.life"
- "https://docker.1panel.live"
- "https://hk11.606166.xyz"
- "https://docker.1ms.run"
5、自动配置安装
执行以下命令:
./kk create cluster -f config-sample.yaml
6,安装完成后会显示默认的登录信息
类似以下信息、:
更多推荐


所有评论(0)