Here is a very long-winded explanation of this:
The use of indices for tensors originates from notation for matrices and vectors but extends consistently and beautifully first to abstract vector spaces and then to tensors and tensor fields. It should be noted, however, it's most powerful when working with a basis that is not necessarily orthonormal.
Start with notation for matrices. The component of a matrix $A$ that is in the $i$-th row and $j$-th column is often denoted $A^i_j$. Upper indices labe the row, and lower indices label the column.
Next, we have the convention that when we multiply a matrix $A$ by a vector $v$, the matrix goes on the left and the vector on the right. This convention dictates that a vector should be written as a column matrix. And therefore the components of the vector are written using superscripts. So
\begin{align*}
Av &= \begin{bmatrix} A^1_1 & \cdots & A^1_n \\ \vdots & & \vdots \\ A^m_1 & \cdots & A^m_n\end{bmatrix}\begin{bmatrix} v^1 \\ \vdots \\ v^m \end{bmatrix}.
\end{align*}
In particular, the component in the $p$-th row of the column matrix $Av$ is
$$
(Av)^p = \sum_{k=1}^m A^p_kv^k.
$$
It gets tiresome writing the summation sign, and index being summed over is repeated, once up and once down. So we can omit the summation sign and write just
$$
(Av)^p = A^p_kv^k.
$$
Moving on the abstract linear algebra, we can write a vector $v \in V$ as above only if we first choose a basis $(e_1, \dots, e_m)$ of $V$. Why did I write the indices for the basis as subscripts? Well, because we can then write
$$
v = a^ke_k.
$$
But, since the components of $v$ are written as a column matrix, the basis vectors should be written as a row matrix of vectors,
$$
E = \begin{bmatrix} e_1 & \cdots & e_m \end{bmatrix},
$$
and the vector written as
$$
v = EA,
$$
where
$$
A = \begin{bmatrix} a^1 \\ \vdots \\ a^m \end{bmatrix}.
$$
This notation is very useful. For example, suppose you change the basis to a new basis
$$
F = \begin{bmatrix} f_1 & \cdots & f_m \end{bmatrix}.
$$
How do the coefficients change? Well, if
$$
F = EM,
$$
then
$$
v = EA = EM(M^{-1}A) = F(M^{-1}A).
$$
therefore, if $v = FB$, then $B = M^{-1}A$. This is much easier to remember than the standard formulas.
Next, consider the dual vector space. If $E = (e_1, \dots,e_m)$ is a basis of $V$ and $E^* = (\epsilon^1, \dots, \epsilon^m)$ is the dual basis, then the identity
$$
\langle e_i,\epsilon^j\rangle = \delta_i^j
$$
can be written in matrix form as
$$
\langle E, E^*\rangle = I,
$$
where the components of the row matrix $E$ are vectors in $V$, the components of the column matrix $E^*$ ae dual vectors in $V^*$, and the components of the square matrix $I$ are scalars.
In general, a dual vector, also known as a $1$-tensor, $\theta$ can be written with respect to the dual basis as,
$$
\theta = \xi_i \epsilon^i = \Xi E^*,
$$
where
$$
\Xi = \begin{bmatrix} \xi_1 & \cdots & \xi_m \end{bmatrix}.
$$
I'll omit the details here, but note that this notation allows you to remember quite easily how the dual basis and the coefficients of a dual vector change if you change the basis of $V$.
Now to tensors. Recall that a $k$-tensor $T$ on $V$ is a multilinear function,
$$
T: V\times \cdots\times V \rightarrow \mathbb{R}.
$$
We've already seen above what happens with $1$-tensors. Let's look at $2$-tensors. Since a $2$-tensor $T$ is bilinear, then given two vectors $v = v^ie_i$ and $w = w^je_j$,
$$
T(v,w) = T(v^ie_i, w^je_j) = v^iw^jT(e_i,e_j).
$$
Therefore, if we write $T_{ij} = T(e_i,e_j)$, then
$$
T(v,w) = T_{ij}v^iw^j.
$$
So up and down indices provide a convenient way to describe a tensor with respect to a basis. If you know what a tensor product is, then you can write $T$ as
$$
T = T_{ij}\epsilon^i\otimes \epsilon^j
$$
and
$$
T(v,w) = (T_{ij}\epsilon^i\otimes\epsilon^j)(v,w)
= T_{ij}\langle \epsilon^i,v\rangle\langle \epsilon^j,w\rangle
= T_{ij}v^iw^j.
$$
The metric tensor is an example of a $2$-tensor. If you feed $T$ only one vevctor $v \in V$, you get
$$
T(v,\cdot) = (T_{ij}\epsilon^i\otimes\epsilon^j)(v,\cdot)
= T_{ij}\langle \epsilon^i,v\rangle \epsilon^j
= T_{ij}v^i\epsilon_j \in V^*.
$$
Therefore, a $2$-tensor defines a linear map
$T: V \rightarrow V^*.$ In particula, if $T = g$ is a metric tensor (i.e., a positive definite symmetric $2$-tensor), then the map $g: V \rightarrow V^*$ is a linear isomorphism, where
$$
g(v,\cdot) = g(v^ie_i,\cdot) = (g_{ij}v^i)\epsilon^j.
$$
Often, one writes $v_i = g_{ij}v^j$. This is what's meant by raising an index.