The term "ports" in DevOps frequently refers to the particular network ports that are utilized for system-wide communication between various services or components. In order to facilitate smooth communication between different components of an application or infrastructure, these ports are essential. Nevertheless, not every DevOps arrangement uses the same amount of ports; this varies widely based on the particular design, technology, and system needs. Understanding network protocols and the port numbers that correspond with them is essential for DevOps professionals to ensure effective communication across different infrastructure components. Deploying apps, administering containers, and coordinating cloud resources may all be made more efficient and secure by understanding which ports to open and how to use them.
What is a Port?
A port is a communication route or logical endpoint on a host or server that is used to identify a particular activity or service. A network, like the internet, may be used to transit data between applications or services by using ports, which are a component of the addressing information.
Some commonly used ports in DevOps are as follows:
Port Number: 443
- Protocol: HTTPS (HTTP Secure)
Usage: It is used for encrypting the web traffic for the enhancement of security.
For Example: It is used for securing the online transactions on websites like e-commerce platforms.
Port Number: 80
- Protocol: HTTP (Hypertext Transfer Protocol)
- Usage: It is a standard port for unencrypted web traffic.
- For Example: Hosting web applications that are accessible via web browsers.
Port Number: 22
Protocol: SSH (Secure Shell)
Usage: Secure remote access to the Servers.
For Example: Managing server configurations via using SSH (Secure Shell).
Port Number: 9000
Protocol: Custom Application Port
Usage: Varies based on application (e.g., Jenkins, SonarQube, Grafana).
For Example: For Accessing SonarQube on the Web Browser.
Port Number: 8080
Protocol: Alternative for the HTTP or for accessing Jenkins.
Usage: It is used for the Proxy and Caching purposes.
For Example: It is used for testing web applications on a development server or else it can be used for accessing the Jenkins on web browser.
Port Number: 9090
Protocol: Custom Application Port or Prometheus Server.
Usage: It is used for accessing a Monitoring tool for collection of metrics.
For Example: It is used for Visualizing the server's performance metrics by using the Prometheus.
Port Number: 9100
Protocol: Node Exporter type service.
Usage: It is used for the collection of system-level metrics.
For Example: It is used for Monitoring the CPU and memory usage on the target hosts.
Port Number: 3000
Protocol: Custom Application Port or Grafana Server.
Usage: It is used for accessing a Monitoring tool for visualizing the Dashboards.
For Example: It is used for Visualizing the server's performance in the form of Dashboards by using the Grafana.
Port Number: 9092
Protocol: Kafka Broker.
Usage: It is used for the real-time data streaming and message queuing.
For Example: It is used for Implementing message queues for the specific kind of event processing.
Port Number: 5000
Protocol: Docker Registry.
Usage: It is used for the Distribution of Docker images.
For Example: It is used in pushing and pulling Docker images from registries like Docker Hub.
Port Number: 2375
Protocol: Docker Remote API.
Usage: It is used for Remote management of Docker Containers.
For Example: It is used for automating the process of Docker Container deployment by using the Docker Remote API.
Port Number: 27017
Protocol: MongoDB Database System.
Usage: It is a default port for accessing the MongoDB database connections.
For Example: It is used for storing the JSON documents in the MongoDB database.
Port Number: 6379
Protocol: Redis Server.
Usage: It is used for caching and session management.
For Example: It is used for utilizing the Redis for caching the frequently accessed data.
Port Number: 3306
Protocol: MySQL Database System.
Usage: It is used for managing the MySQL database connections.
For Example: It is used for hosting websites with MySQL as a Backend Service.
Port Number: 5432
Protocol: PostgreSQL Database System.
Usage: It is a default port for PostgreSQL database connections.
For Example: It is used for storing the application's data in the PostgreSQL database.
Port Number: 8081
Protocol: For accessing the Nexus Repository or other Custom Applications.
Usage: It is used for the Artifactory Management.
For Example: It is used for accessing the Nexus Repository on the Web Browser.
Port Number: 8082
Protocol: For accessing the jFrog Artifactory or other Custom Applications.
Usage: It is used for the Artifactory Management.
For Example: It is used for accessing the jFrog Artifactory on the Web Browser. Though, the jFrog Artifactory can also be accessible on 8046, 8047, 8049, and 8091 ports.
-> Here are some of the most commonly used Ports in DevOps.
Some more other Ports that are used in the DevOps for performing the various operations are as follows:
GitLab - Port 80 or 443 (HTTP/HTTPS)
Docker - Port 2375 (unencrypted) or 2376 (encrypted)
Kubernetes - Port 6443 (API server)
Ansible - Port 22 (SSH)
Terraform - No specific port (uses various APIs)
ELK Stack (Elasticsearch, Logstash, Kibana) - Elasticsearch: 9200/9300, Logstash: 5044, Kibana: 5601
Nagios - Port 5666 (NRPE)
Consul - Port 8500 (HTTP)
Puppet - Port 8140 (default)
Vagrant - No specific port (manages virtual machines)
SaltStack - Port 4505-4506 (default)
Jenkins X - Port 80 or 443 (HTTP/HTTPS)
JIRA - Port 8080 (default)
Bitbucket - Port 7990 (default)
GitLab CI/CD - Port 80 or 443 (HTTP/HTTPS)
CircleCI - No specific port (SaaS)
Travis CI - No specific port (SaaS)
TeamCity - Port 8111 (default)
Octopus Deploy - Port 10933 (default)
Chef - Port 443 (default)
Argo CD - Port 8080 (default) or else 8081
Harbor - Port 80 or 443 (HTTP/HTTPS)
Jenkins Configuration as Code (JCasC) - Port 8080 (default)
Drone - Port 8080 (default)
Spinnaker - Port 8084 (default)
CloudBees - Port 80 or 443 (HTTP/HTTPS)
Note:- All the default ports can be changed just by following the certain steps.