K8s/Service: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
| Line 421: | Line 421: | ||
|valign='top'| | |valign='top'| | ||
* [[K8s/CSI Hostpath Driver|K8s » CSI Hostpath Driver]] | * [[K8s/CSI Hostpath Driver|K8s » CSI Hostpath Driver]] | ||
* [[K8s/HAProxy/Ingress|K8s » HAProxy » Ingress]] | |||
* [[K8s/Apache/Ingress|K8s » Apache » Ingress]] | |||
* [[K8s/Nginx/Ingress|K8s » Nginx » Ingress]] | |||
* [[Minikube Ingress DNS|K8s » Ingress » DNS]] | |||
* [[K8s/Swiss Knife|K8s » Swiss Knife]] | * [[K8s/Swiss Knife|K8s » Swiss Knife]] | ||
* [[K8s/Storage|K8s » Storage]] | * [[K8s/Storage|K8s » Storage]] | ||
* [[K8s/Ingress|K8s » Ingress]] | * [[K8s/Ingress|K8s » Ingress]] | ||
* [[K8s/Secret|K8s » Secret]] | |||
* [[K8s/Run|K8s » Run]] | * [[K8s/Run|K8s » Run]] | ||
| Line 436: | Line 441: | ||
|valign='top'| | |valign='top'| | ||
* [[Helm/GitLab External|Helm » GitLab » External]] | * [[Helm/GitLab External|Helm » GitLab » External]] | ||
* [[Helm/PostgreSQL|Helm » PostgreSQL]] | * [[Helm/PostgreSQL/PV|Helm » PostgreSQL » PV]] | ||
* [[Helm/MariaDB|Helm » MariaDB]] | * [[Helm/MariaDB/PV|Helm » MariaDB » PV]] | ||
* [[Minikube MetalLB|Helm » MetalLB]] | |||
* [[Helm/GitLab|Helm » GitLab]] | * [[Helm/GitLab|Helm » GitLab]] | ||
* [[Helm/Kafka|Helm » Kafka]] | |||
* [[Helm/Redis|Helm » Redis]] | * [[Helm/Redis|Helm » Redis]] | ||
Latest revision as of 06:55, 10 July 2025
Redis
kubectl config get-contexts
kubectl get ns | grep redis
| ||
|
| ||
cat << YML | kubectl -n redis apply -f -
---
apiVersion: v1
kind: Service
metadata:
name: redis-lb
namespace: redis
labels:
app.kubernetes.io/name: redis
app.kubernetes.io/managed-by: kubectl
annotations:
meta.helm.sh/release-name: redis
meta.helm.sh/release-namespace: redis
spec:
type: LoadBalancer
ports:
- port: 6379
name: redis
protocol: TCP
targetPort: redis
selector:
app.kubernetes.io/instance: redis
app.kubernetes.io/name: redis
YML
|
||
|
| ||
GitLab
kubectl config get-contexts
kubectl get ns |grep gitlab
| ||
|
| ||
cat << YML | kubectl -n gitlab apply -f -
---
apiVersion: v1
kind: Service
metadata:
name: gitlab-lb
namespace: gitlab
labels:
app: gitlab
app.kubernetes.io/managed-by: kubectl
annotations:
meta.helm.sh/release-name: gitlab
meta.helm.sh/release-namespace: gitlab
spec:
type: LoadBalancer
ports:
- port: 22
name: ssh
protocol: TCP
targetPort: 22
selector:
app: gitlab
release: gitlab
YML
|
cat << YML | kubectl -n gitlab apply -f -
---
apiVersion: v1
kind: Service
metadata:
name: gitlab-lb
namespace: gitlab
labels:
app: gitlab-shell
app.kubernetes.io/managed-by: kubectl
annotations:
meta.helm.sh/release-name: gitlab
meta.helm.sh/release-namespace: gitlab
spec:
type: LoadBalancer
ports:
- port: 22
name: ssh
protocol: TCP
targetPort: 2222
selector:
app: gitlab-shell
release: gitlab
YML
|
|
|
| ||
External
kubectl config get-contexts
kubectl get ns|grep external
kubectl create namespace external
Internal
kubectl config get-contexts
kubectl get ns|grep internal
kubectl create namespace internal
| ||
|
| ||
cat << YML|kubectl apply -n internal -f -
---
apiVersion: v1
kind: Service
metadata:
name: host
namespace: internal
labels:
app.kubernetes.io/name: host
app.kubernetes.io/version: 1.0.0
app.kubernetes.io/instance: host
app.kubernetes.io/managed-by: kubectl
spec:
type: ExternalName
externalName: host.minikube.internal
YML
|
||
|
| ||
MariaDB
kubectl config get-contexts
kubectl get ns|grep mariadb
| ||
|
| ||
cat << YML | kubectl -n mariadb apply -f -
---
apiVersion: v1
kind: Service
metadata:
name: mariadb-lb
namespace: mariadb
labels:
app.kubernetes.io/name: mariadb
app.kubernetes.io/managed-by: kubectl
annotations:
meta.helm.sh/release-name: mariadb
meta.helm.sh/release-namespace: mariadb
spec:
type: LoadBalancer
ports:
- port: 3306
name: mysql
protocol: TCP
targetPort: mysql
selector:
app.kubernetes.io/name: mariadb
app.kubernetes.io/instance: mariadb
YML
|
||
|
| ||
PostgreSQL
kubectl config get-contexts
kubectl get ns|grep postgresql
| ||
|
| ||
cat << YML | kubectl -n postgresql apply -f -
---
apiVersion: v1
kind: Service
metadata:
name: postgresql-lb
namespace: postgresql
labels:
app.kubernetes.io/name: postgresql
app.kubernetes.io/managed-by: kubectl
annotations:
meta.helm.sh/release-name: postgresql
meta.helm.sh/release-namespace: postgresql
spec:
type: LoadBalancer
ports:
- port: 5432
protocol: TCP
name: tcp-postgresql
targetPort: tcp-postgresql
selector:
app.kubernetes.io/name: postgresql
app.kubernetes.io/instance: postgresql
YML
|
||
|
| ||
Ingress » Nginx
kubectl config get-contexts
kubectl get ns|grep ingress-nginx
| ||
|
| ||
cat << YML | kubectl apply -n ingress-nginx -f -
---
apiVersion: v1
kind: Service
metadata:
name: ingress-nginx
namespace: ingress-nginx
labels:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
spec:
type: LoadBalancer
ports:
- name: http
port: 80
targetPort: 80
protocol: TCP
- name: https
port: 443
targetPort: 443
protocol: TCP
- name: proxied-tcp-5432
port: 5432
targetPort: 5432
protocol: TCP
- name: proxied-tcp-6379
port: 6379
targetPort: 6379
protocol: TCP
- name: proxied-udp-1194
port: 1194
targetPort: 1194
protocol: UDP
- name: proxied-udp-53
port: 53
targetPort: 53
protocol: UDP
selector:
app.kubernetes.io/name: ingress-nginx
app.kubernetes.io/part-of: ingress-nginx
YML
|
||
Playground
kubectl -n external get endpoints
kubectl -n external get service
kubectl -n external get ingress
|
kubectl -n internal get endpoints
kubectl -n internal get service
kubectl -n internal get ingress
|
kubectl config get-contexts
sudo -i -u minikube
helm list -A
|
|
| ||
kubectl get all -A
kubectl get ns
|
||
|
| ||
References
|
| ||
|
| ||