main
黄海 10 months ago
parent b97bbfcfd2
commit 66ea2a3bd5

@ -391,7 +391,7 @@ kubeadm init \
```
记录下面的命令:
记录下面的命令:
```shell
Then you can join any number of worker nodes by running the following on each as root:
@ -463,13 +463,13 @@ vi custom-resources.yaml
kubectl apply -f custom-resources.yaml
```
监视calico-sysem命名空间中pod运行情况
监视$calico-system$命名空间中$pod$运行情况
```shell
watch kubectl get pods -n calico-system
```
查看calico是否正常运行
查看$calico$是否正常运行
```shell
kubectl get pods -n calico-system
@ -542,11 +542,11 @@ kube-flannel-ds-tlczf 1/1 Running 0 133m
kube-flannel-ds-xn98c 1/1 Running 0 133m
```
发现有一个POD有问题不停的`CrashLoopBackOff`
发现有一个$POD$有问题,不停的 $CrashLoopBackOff$
参考文档https://www.cnblogs.com/williamzheng/p/18357226
```
```shell
[root@k8s-master ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
@ -607,6 +607,8 @@ tigera-operator tigera-operator-7f8cd97876-7s58q 1/1 Running
现在终于都正常了~
### 三、测试
**测试集群是否正常运行$pod$**
@ -652,53 +654,7 @@ kubectl get pods
kubectl get pods
```
### 四、命令行创建发布与服务
**1、创建命名空间**
```shell
# 创建命名空间
kubectl create namespace dsideal
# 查看命名空间
kubectl get namespaces
# 删除命名空间
kubectl delete namespace dsideal
```
**2、部署应用**
```shell
kubectl create deployment nginx-deployment --image=swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/openresty/openresty:1.25.3.1-5-alpine-fat --replicas=1 --port=80 --namespace=dsideal
```
**3、暴露应用服务**
```shell
kubectl expose deployment nginx-deployment --type=NodePort --port=80 --target-port=80 --namespace=dsideal
kubectl expose deployment nginx-deployment --type=LoadBalancer --port=80 --target-port=80
```
**4、查看集群部署状态**
```shell
kubectl get deployment,svc --namespace=dsideal
```
**5、通过公网$ip+NodePort$端口号的方式访问$nginx$服务**
```shell
http://10.10.14.200:30642
```
### 五、管理工具$Kuboard$
### 四、管理工具$Kuboard$
**官方文档**
@ -757,6 +713,74 @@ users:
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202409141357727.png)
###
### 五、通过$YAML$创建发布与服务
- 1. **为了方便,一般不再全新创建命名空间,使用默认的$default$命名空间。**
- 2. 为什么不使用界面或者命令行进行创建发布和服务呢?这是因为命令行创建的功能限制比较多,比如不能管控最终暴露的端口,不能配置内存和$CPU$等,至于为什么不用界面,原因也很简单,因为今天用$Kuboard$,明天可能就用其它的管理工具了,不如万年不变的$YAML$文件准称。
#### 4.1 创建$Deployment$
`openresty-deployment.yaml`
```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: openresty-deployment
spec:
replicas: 1
selector:
matchLabels:
app: openresty
template:
metadata:
labels:
app: openresty
spec:
containers:
- name: openresty
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/openresty/openresty:1.25.3.1-5-alpine-fat
resources:
limits:
cpu: "1"
memory: "2Gi"
requests:
cpu: "1"
memory: "2Gi"
ports:
- containerPort: 80
```
#### 4.2 创建$Service$
`openresty-service.yaml`
```yaml
apiVersion: v1
kind: Service
metadata:
name: openresty-service
spec:
selector:
app: openresty
ports:
- protocol: TCP
port: 80
targetPort: 80
nodePort: 30080
type: NodePort
```
**通过公网$ip+NodePort$端口号的方式访问$nginx$服务**
```shell
http://10.10.14.200:30080
```
![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202409151001962.png)
### 六、资料
**kubeadm部署kubernetes1.29**

Loading…
Cancel
Save