Logo Studenta

5 1 NodePort1

¡Estudia con miles de materiales!

Vista previa del material en texto

Laboratorio de NodePort1 
 
 
En este Laboratorio, lo que pretendemos hacer, es exponer un servicio de openshift, 
para que pueda ser accesible desde el exterior del cluster. 
 
Para ello, realizaremos lo siguiente. 
 
1) Crearemos un nuevo proyecto en openshift 
 
[root@okd ~]# oc new-project nodeport2 
 
2) Generamos un deployment de Mariadb, con usuarios y passwords. 
oc new-app --docker-image=docker.io/mariadb 
--name mariadb -e 'MYSQL_USER=mguazzardo' 
-e 'MYSQL_PASSWORD=master' -e 
'MYSQL_DATABASE=test01' -e 
'MYSQL_ROOT_PASSWORD=master' 
 
 
3) Hacemos los testeos necesarios para que esto este corriendo como 
corresponde. 
 
 
[root@okd ~]# oc get svc 
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE 
mariadb ClusterIP 172.30.68.169 <none> 3306/TCP 6m 
[root@okd ~]# oc describe svc mariadb 
Name: mariadb 
Namespace: nodeport2 
Labels: app=mariadb 
Annotations: openshift.io/generated-by=OpenShiftNewApp 
Selector: app=mariadb,deploymentconfig=mariadb 
Type: ClusterIP 
IP: 172.30.68.169 
Port: 3306-tcp 3306/TCP 
TargetPort: 3306/TCP 
Endpoints: 172.17.0.17:3306 
Session Affinity: None 
 Events: <none> 
 
 
Para que sea accesible por el exterior, debemos configurar que el type, sea 
nodePort, y que el NodePort, sea 30306 (Siempre arriba de 30000, que es una 
feature de kubernetes). 
 
Lo hacemos con el siguiente comando. 
 
 
 
 
[root@okd ~]# oc edit svc mariadb 
 creationTimestamp: 2020-02-01T06:17:56Z 
 labels: 
 app: mariadb 
 name: mariadb 
 namespace: nodeport2 
 resourceVersion: "186804" 
 selfLink: /api/v1/namespaces/nodeport2/services/mariadb 
 uid: 968dc3a3-44ba-11ea-b1ed-08002771c7bd 
spec: 
 clusterIP: 172.30.68.169 
 externalTrafficPolicy: Cluster 
 ports: 
 - name: 3306-tcp 
 nodePort: 30306 
 port: 3306 
 protocol: TCP 
 targetPort: 3306 
 nodePort: 30306 
 selector: 
 app: mariadb 
 deploymentconfig: mariadb 
 sessionAffinity: None 
 type: NodePort 
status: 
 loadBalancer: {} 
 
Luego, vemos que todo marche correctamente: 
 
[root@okd ~]# oc describe svc mariadb 
Name: mariadb 
Namespace: nodeport2 
Labels: app=mariadb 
Annotations: openshift.io/generated-by=OpenShiftNewApp 
Selector: app=mariadb,deploymentconfig=mariadb 
Type: NodePort 
IP: 172.30.68.169 
Port: 3306-tcp 3306/TCP 
TargetPort: 3306/TCP 
NodePort: 3306-tcp 30306/TCP 
Endpoints: 172.17.0.17:3306 
Session Affinity: None 
External Traffic Policy: Cluster 
 Events: <none> 
 
Y ahora la prueba de fuego, poder conectarnos desde afuera con nuestro 
cliente de bases de datos, en este caso heidisql 
 
 
 
 
 
Una vez dentro, vemos que todo ha salido bien.

Continuar navegando

Materiales relacionados

44 pag.
linux

SIN SIGLA

User badge image

Josefina Bordiga

222 pag.
Manual Programacion Android

SIN SIGLA

User badge image

matica121314

28 pag.
inseguridad_en_wifi

SIN SIGLA

User badge image

meladesma2002